J2me和安卓有什么区别、、、、、、
4个回答
展开全部
首先从程序上来说的话,基本是没有多少区别的.都是使用JAVA语言开发,使用的框架和类不同而已.
一、平台的区别
J2me: 开发平台
Android: 操作系统
二、工程结构比较
J2me:
Res:资源文件
Src:源代码
Android:
Src:源代码
Res\drawable:图片
Res\raw:声音
Res\values:字符串
Assets:数据文件
三、安装包比较
J2me: Jad,jar
Android: apk
四、代码结构比较
J2me: MIDlet,Canvas
Android: Activity,View
都采用继承的方式,都只有一个MIDlet/Activity,一般都只有一个Canvas/View
五、代码比较
一、程序入口
J2me程序入口类为MIDlet,所有的j2me程序都要继承该类来初始化j2me程序。Android程序入口是Activity类。下面先看看她们的生命周期。
J2me MIDlet生命周期
1、startApp (活动状态)程序启动的时候会调用该方法来初始化用户需要的资源。
2、PauseApp (暂停状态)当手机来电接电话的时候,会调用该接口。用户可以调用该接口停止也写线程的操作。
3、destroyApp (销毁状态)程序退出的时候调用。用户可以调用该接口处理处于活动状态的线程。
该几个周期状态有AMS调用转换,也可以程序代码调用转换。resumeRequest调用会的结果是AMS会调用startApp方法,notifyPaused调用的结果是可能AMS调用PsuseApp,notifyDestroyed调用会使AMS销毁该midlet。
Android Activity生命周期
1、onCreate 程序开始初始化的时候调用该接口,用户导航返回到Activity的时候也会调用该接口。类似于J2me里面多个Canvase(Displayable)切换。所以Activity也类似于Displayable。
2、onStart onCreate调用完后,程序调用该接口。
3、onResume onStart调用后调用该接口。此时Activity进入运行状态。
4、onPause 新的Activity启动的时候调用该接口。
5、onStop 该Activity 不可见的时候调用。
6、onDestroy 程序销毁的时候调用。
二、显示组件
J2me中所有可显示的组件都是直接或间接的继承了Displayable,直接的是Canvas和Screen。不同的继承导致了低级UI和高级UI的区别。J2me中现成的UI组件都是直接或者间接继承了Screen。只要调用Display.getDisplay(MIDLet instan).setCurrrent(Displayable disp),就可以把组件显示到手机界面上。切换界面的时候也可以使用该接口。
Android可见的组件直接或者间接继承了android.view.View。通过Activity.setContentView(View view)就可以显示在android手机界面上,切换界面的时候也可以使用该接口。如果是直接继承了View而不是Android自带的UI组件,那么还要自己去实现它的刷新,类似J2me的低级UI组件。
三、刷新处理
J2me刷新:
J2me高级UI组件由组件内部刷新实现,低级UI可以通过Canvas的repain()来刷新。低级UI架构可以用MVC方式来实现,建议使用二级缓存。
Android刷新:
Android提供接口onLayout来提供该View调整其里面组件元素的位置布局,用户只需要重写该接口就ok。刷新接口onDraw,该接口用来刷新界面里面的绘制元素。该接口类似j2me Canvas的paint接口。不过两个平台传得参数有些意思。J2me传的时Graphics,而android传得是Canvas。Android绘制的时候会传入一个参数Paint。该对象表示绘制的风格,比如颜色,字体大小,字体格式等。如果是移植的话,建议android也使用二级缓存,这样也容易管理。
四、用户事件处理
J2me的键盘、触笔事件都是通过Canvas定义接口分发。用户只需要从写这些接口就ok。它们分别是。键盘接口为:keyPressed(),keyRepeated(),keyReleased()。触笔接口为:pointerPressed(),pointerReleased(),pointerDragged()。
Android的键盘,触笔通过View中定义,只要override其接口就ok了。触笔处理接口onTouchEvent。软键盘onKeyDown()、onKeyUp()、onTracKballEvent()。
一、平台的区别
J2me: 开发平台
Android: 操作系统
二、工程结构比较
J2me:
Res:资源文件
Src:源代码
Android:
Src:源代码
Res\drawable:图片
Res\raw:声音
Res\values:字符串
Assets:数据文件
三、安装包比较
J2me: Jad,jar
Android: apk
四、代码结构比较
J2me: MIDlet,Canvas
Android: Activity,View
都采用继承的方式,都只有一个MIDlet/Activity,一般都只有一个Canvas/View
五、代码比较
一、程序入口
J2me程序入口类为MIDlet,所有的j2me程序都要继承该类来初始化j2me程序。Android程序入口是Activity类。下面先看看她们的生命周期。
J2me MIDlet生命周期
1、startApp (活动状态)程序启动的时候会调用该方法来初始化用户需要的资源。
2、PauseApp (暂停状态)当手机来电接电话的时候,会调用该接口。用户可以调用该接口停止也写线程的操作。
3、destroyApp (销毁状态)程序退出的时候调用。用户可以调用该接口处理处于活动状态的线程。
该几个周期状态有AMS调用转换,也可以程序代码调用转换。resumeRequest调用会的结果是AMS会调用startApp方法,notifyPaused调用的结果是可能AMS调用PsuseApp,notifyDestroyed调用会使AMS销毁该midlet。
Android Activity生命周期
1、onCreate 程序开始初始化的时候调用该接口,用户导航返回到Activity的时候也会调用该接口。类似于J2me里面多个Canvase(Displayable)切换。所以Activity也类似于Displayable。
2、onStart onCreate调用完后,程序调用该接口。
3、onResume onStart调用后调用该接口。此时Activity进入运行状态。
4、onPause 新的Activity启动的时候调用该接口。
5、onStop 该Activity 不可见的时候调用。
6、onDestroy 程序销毁的时候调用。
二、显示组件
J2me中所有可显示的组件都是直接或间接的继承了Displayable,直接的是Canvas和Screen。不同的继承导致了低级UI和高级UI的区别。J2me中现成的UI组件都是直接或者间接继承了Screen。只要调用Display.getDisplay(MIDLet instan).setCurrrent(Displayable disp),就可以把组件显示到手机界面上。切换界面的时候也可以使用该接口。
Android可见的组件直接或者间接继承了android.view.View。通过Activity.setContentView(View view)就可以显示在android手机界面上,切换界面的时候也可以使用该接口。如果是直接继承了View而不是Android自带的UI组件,那么还要自己去实现它的刷新,类似J2me的低级UI组件。
三、刷新处理
J2me刷新:
J2me高级UI组件由组件内部刷新实现,低级UI可以通过Canvas的repain()来刷新。低级UI架构可以用MVC方式来实现,建议使用二级缓存。
Android刷新:
Android提供接口onLayout来提供该View调整其里面组件元素的位置布局,用户只需要重写该接口就ok。刷新接口onDraw,该接口用来刷新界面里面的绘制元素。该接口类似j2me Canvas的paint接口。不过两个平台传得参数有些意思。J2me传的时Graphics,而android传得是Canvas。Android绘制的时候会传入一个参数Paint。该对象表示绘制的风格,比如颜色,字体大小,字体格式等。如果是移植的话,建议android也使用二级缓存,这样也容易管理。
四、用户事件处理
J2me的键盘、触笔事件都是通过Canvas定义接口分发。用户只需要从写这些接口就ok。它们分别是。键盘接口为:keyPressed(),keyRepeated(),keyReleased()。触笔接口为:pointerPressed(),pointerReleased(),pointerDragged()。
Android的键盘,触笔通过View中定义,只要override其接口就ok了。触笔处理接口onTouchEvent。软键盘onKeyDown()、onKeyUp()、onTracKballEvent()。
展开全部
J2me和安卓的区别:
1、J2me是java语言,写手机游戏程序和小软件的时候用,编写的程序可以在支持KVM的机器上运行,而安卓是google开发的智能终端操作系统。注:现在比较火的安卓操作系统和苹果IOS操作系统,开发安卓游戏和软件用的也是java语言。
2、J2me主要针对的是以前的手机,比如nokia,安卓针对的是安卓手机,现在三星、摩托罗拉、google和HTC都在疯狂的生产android手机,是因为android操作系统好,开发人员可以很方便的转型做android开发。
1、J2me是java语言,写手机游戏程序和小软件的时候用,编写的程序可以在支持KVM的机器上运行,而安卓是google开发的智能终端操作系统。注:现在比较火的安卓操作系统和苹果IOS操作系统,开发安卓游戏和软件用的也是java语言。
2、J2me主要针对的是以前的手机,比如nokia,安卓针对的是安卓手机,现在三星、摩托罗拉、google和HTC都在疯狂的生产android手机,是因为android操作系统好,开发人员可以很方便的转型做android开发。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
简单来说,j2me就是做的就是只能在java环境下运行的程序,多数在之前的非智能机上使用。安卓就是现在的智能手机系统,比较强大。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2012-04-06
展开全部
安卓是操作系统 j2me只是操作系统运行的一部分
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询