使用NetBeans进行J2ME开发(二):把程序转移到手机上

2024-01-18 18:58

本文主要是介绍使用NetBeans进行J2ME开发(二):把程序转移到手机上,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

使用NetBeans进行J2ME开发(二):把程序转移到手机上

上一篇,我们见识了编写一个手机程序其实很简单。但是很多人大概不是很明白怎样把程序转移到手机上,不信你就试试,不管你是用数据线,还是用红外蓝牙,都无 法把电脑上的程序弄到手机上运行,也没办法把别人手机上的游戏弄到自己的手机上运行(传输普通数据可以,就是程序不行)。我有一次就是看到别人的手机上有 很多游戏,想转移过来,怎么试都不行。

  为什么会这样?这是因为Java程序在到手机上运行之前,必须经过一个安装过程,而这个安装过 程,是通过你的手机的AMS(应用程序管理软件)完成的,而这个AMS只能从网上下载程序进行安装。明白了这个道理,那么再将程序转移到手机就简单多了, 不就是要从网上下载吗?我们这里哪一位不是建网站的高手?搞一个Tomcat来就轻松搞定。我们甚至可以把建立一个手机程序下载网站作为创业之路。这样的 下载服务器专业的叫发叫OTA服务器,OTA,就是Over The Air,是不是很直观,像手机这样的无线上网不就是通过空气来下载的吗?

   建立一个OTA服务器,首先要了解J2ME程序的结构,J2ME程序的项目生成以后,应该是由两个文件组成,一个.jar文件和一个.jad文件,. jar文件不用说了,自然是包含我们所有的java程序以及各种图片、音乐的资源文件;而.jad文件是一个文本文件,它包含了我们程序的描述信息。 AMS在安装程序时,就是通过这个.jad文件来了解我们程序的一些信息的。在上一篇中,我们建立的项目保存目录为D:/Java/Projects/ MyFirstMobileApplication,在这个目录的dist目录下面,可以看到两个文件: MyFirstMobileApplication.jar和MyFirstMobileApplication.jad

  打开Tomcat服务器,我们也懒得再专门建立一个Web应用程序,就使用Tomcat的默认应用程序好了,把上面的两个文件拷贝到Tomcat目录的webapps/ROOT目录下,然后,再在该目录下建立一个简单的WML文件download.wml,如下:
<? xml version="1.0" ?>
<! DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN"
"http://www.wapforum.org/DTD/wml_1.1.xml"
>

< wml >
< card  title ="welcome"  id ="main" >
< p > 下载软件: </ p >
< align ="left" >< href ="MyFirstMobileApplication.jad" ></ a ></ p >
</ card >
</ wml >


  编辑完这个wml文件后,我们还要检查一个东西,就是打开Tomcat目录下的conf/web.xml文件,看看其中有没有如下几行:
< mime-mapping >
        
< extension > jad </ extension >
        
< mime-type > text/vnd.sun.j2me.app-descriptor </ mime-type >
    
</ mime-mapping >
    
< mime-mapping >
        
< extension > jar </ extension >
        
< mime-type > application/java-archive </ mime-type >
    
</ mime-mapping >


  如果没有,就要把它们加进去。不过一般最新版本的Tomcat都是有的。

  OK,下面就可以用手机来下载我们的程序了。不过请记住两点:
  1.手机上网是要钱的,比如我们这里,中国移动的价格是每下载1k收3分钱,不要小看啊,1M就是30元啊,看你有多少钱往水里扔。不过你也可以定制包月服务,5元钱10M或者20元50M,不过如果你真的每一个程序多下载到手机上测试的话,我想这包月也是不够的。
  2.你的服务器必须能够被访问,这说明你必须要有一个域名,还要租用服务器,这也是要钱的啊。而使用模拟器在自己的机器上访问,则只接访问http://localhost:8080/download.wml就可以了。

   因此,我们还是使用模拟器来演示怎么安装软件。MobilePack 5.5.1自带的手机模拟器程序叫emulator,是WTK2.5.1的组件之一。在NetBeans IDE中使用它运行项目很简单,但是要单独打开这个软件就有点麻烦了。在NetBeans的安装目录中,在mobility7.3/emulators- inst目录下有一个wtk251-win.zip文件,把这个文件解压缩到wtk251-win文件夹中,在wtk251-win/emulator/ bin目录中可以看到下面这些文件:
  15.PNG

  我们运行其中的ktoolbar.exe,应用程序的界面如下:
  16.PNG

  注意,这个时候“项目”菜单是灰色的,我们需要随便打开一个项目,项目菜单才能够使用。在这个菜单中选择“通过OTA运行”,如下图:
  17.PNG

  弹出模拟器,下面的操作都在模拟器中完成。在下图中选择“应用程序”菜单:
  18.PNG


  接着选择“安装应用程序”,就会弹出如下图的输入url的界面,输入我们刚才编写的download.wml的地址:
  19.PNG

  开始下载:
  20.PNG

  下载完成后,AMS会把里面包含的jad连接抽取出来,我们选择需要安装的程序:
  21.PNG

  确认安装:
  22.PNG

  安装完成后,我们的应用程序列表中就多了一个程序MyFirstMidlet,运行这个程序的效果在上一篇里已经贴图了,这里不再重复:
  23.PNG

  最后说一下,在emulator里,它自带了很多示例项目,大家不妨看看。下面是其中的Demo3D项目的运行效果的截图,看来在手机上编写3D游戏也不是不可能的嘛。
  24.PNG

 


 

这篇关于使用NetBeans进行J2ME开发(二):把程序转移到手机上的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/619951

相关文章

Spring Boot集成/输出/日志级别控制/持久化开发实践

《SpringBoot集成/输出/日志级别控制/持久化开发实践》SpringBoot默认集成Logback,支持灵活日志级别配置(INFO/DEBUG等),输出包含时间戳、级别、类名等信息,并可通过... 目录一、日志概述1.1、Spring Boot日志简介1.2、日志框架与默认配置1.3、日志的核心作用

Python使用Tenacity一行代码实现自动重试详解

《Python使用Tenacity一行代码实现自动重试详解》tenacity是一个专为Python设计的通用重试库,它的核心理念就是用简单、清晰的方式,为任何可能失败的操作添加重试能力,下面我们就来看... 目录一切始于一个简单的 API 调用Tenacity 入门:一行代码实现优雅重试精细控制:让重试按我

MySQL中EXISTS与IN用法使用与对比分析

《MySQL中EXISTS与IN用法使用与对比分析》在MySQL中,EXISTS和IN都用于子查询中根据另一个查询的结果来过滤主查询的记录,本文将基于工作原理、效率和应用场景进行全面对比... 目录一、基本用法详解1. IN 运算符2. EXISTS 运算符二、EXISTS 与 IN 的选择策略三、性能对比

使用Python构建智能BAT文件生成器的完美解决方案

《使用Python构建智能BAT文件生成器的完美解决方案》这篇文章主要为大家详细介绍了如何使用wxPython构建一个智能的BAT文件生成器,它不仅能够为Python脚本生成启动脚本,还提供了完整的文... 目录引言运行效果图项目背景与需求分析核心需求技术选型核心功能实现1. 数据库设计2. 界面布局设计3

使用IDEA部署Docker应用指南分享

《使用IDEA部署Docker应用指南分享》本文介绍了使用IDEA部署Docker应用的四步流程:创建Dockerfile、配置IDEADocker连接、设置运行调试环境、构建运行镜像,并强调需准备本... 目录一、创建 dockerfile 配置文件二、配置 IDEA 的 Docker 连接三、配置 Do

Android Paging 分页加载库使用实践

《AndroidPaging分页加载库使用实践》AndroidPaging库是Jetpack组件的一部分,它提供了一套完整的解决方案来处理大型数据集的分页加载,本文将深入探讨Paging库... 目录前言一、Paging 库概述二、Paging 3 核心组件1. PagingSource2. Pager3.

Python进行JSON和Excel文件转换处理指南

《Python进行JSON和Excel文件转换处理指南》在数据交换与系统集成中,JSON与Excel是两种极为常见的数据格式,本文将介绍如何使用Python实现将JSON转换为格式化的Excel文件,... 目录将 jsON 导入为格式化 Excel将 Excel 导出为结构化 JSON处理嵌套 JSON:

python使用try函数详解

《python使用try函数详解》Pythontry语句用于异常处理,支持捕获特定/多种异常、else/final子句确保资源释放,结合with语句自动清理,可自定义异常及嵌套结构,灵活应对错误场景... 目录try 函数的基本语法捕获特定异常捕获多个异常使用 else 子句使用 finally 子句捕获所

C++11右值引用与Lambda表达式的使用

《C++11右值引用与Lambda表达式的使用》C++11引入右值引用,实现移动语义提升性能,支持资源转移与完美转发;同时引入Lambda表达式,简化匿名函数定义,通过捕获列表和参数列表灵活处理变量... 目录C++11新特性右值引用和移动语义左值 / 右值常见的左值和右值移动语义移动构造函数移动复制运算符

Python对接支付宝支付之使用AliPay实现的详细操作指南

《Python对接支付宝支付之使用AliPay实现的详细操作指南》支付宝没有提供PythonSDK,但是强大的github就有提供python-alipay-sdk,封装里很多复杂操作,使用这个我们就... 目录一、引言二、准备工作2.1 支付宝开放平台入驻与应用创建2.2 密钥生成与配置2.3 安装ali