请问在android平台上,能运行一般的java插件吗,如xmlblaster,log4j等,我编写一个普通的java程序(helloworld),在android平台好象是不能运行,android平台上的类必须都得继承Activity类吗?一般普通java程序不能运行吗?
我运行普通的程序报:NoClassDefFoundError错误

解决方案 »

  1. 我在android中使用第三方库,怎么会报错啊?
    错误提示:
    11-18 02:36:00.943: DEBUG/AndroidRuntime(264): Shutting down VM
    11-18 02:36:00.973: WARN/dalvikvm(264): threadid=3: thread exiting with uncaught exception (group=0x4001b188)
    11-18 02:36:00.993: ERROR/AndroidRuntime(264): Uncaught handler: thread main exiting due to uncaught exception
    11-18 02:36:01.053: ERROR/AndroidRuntime(264): java.lang.NoClassDefFoundError: com.example.push.InitBlaster
    11-18 02:36:01.053: ERROR/AndroidRuntime(264):     at com.example.push.PushService$1.onClick(PushService.java:38)
    11-18 02:36:01.053: ERROR/AndroidRuntime(264):     at android.view.View.performClick(View.java:2364)
    11-18 02:36:01.053: ERROR/AndroidRuntime(264):     at android.view.View.onTouchEvent(View.java:4179)
    11-18 02:36:01.053: ERROR/AndroidRuntime(264):     at android.widget.TextView.onTouchEvent(TextView.java:6532)
    11-18 02:36:01.053: ERROR/AndroidRuntime(264):     at android.view.View.dispatchTouchEvent(View.java:3709)
    11-18 02:36:01.053: ERROR/AndroidRuntime(264):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:882)
    11-18 02:36:01.053: ERROR/AndroidRuntime(264):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:882)
    11-18 02:36:01.053: ERROR/AndroidRuntime(264):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:882)
    11-18 02:36:01.053: ERROR/AndroidRuntime(264):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:882)
    11-18 02:36:01.053: ERROR/AndroidRuntime(264):     at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:1659)
    11-18 02:36:01.053: ERROR/AndroidRuntime(264):     at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1107)
    11-18 02:36:01.053: ERROR/AndroidRuntime(264):     at android.app.Activity.dispatchTouchEvent(Activity.java:2061)
    11-18 02:36:01.053: ERROR/AndroidRuntime(264):     at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:1643)
    11-18 02:36:01.053: ERROR/AndroidRuntime(264):     at android.view.ViewRoot.handleMessage(ViewRoot.java:1690)
    11-18 02:36:01.053: ERROR/AndroidRuntime(264):     at android.os.Handler.dispatchMessage(Handler.java:99)
    11-18 02:36:01.053: ERROR/AndroidRuntime(264):     at android.os.Looper.loop(Looper.java:123)
    11-18 02:36:01.053: ERROR/AndroidRuntime(264):     at android.app.ActivityThread.main(ActivityThread.java:4310)
    11-18 02:36:01.053: ERROR/AndroidRuntime(264):     at java.lang.reflect.Method.invokeNative(Native Method)
    11-18 02:36:01.053: ERROR/AndroidRuntime(264):     at java.lang.reflect.Method.invoke(Method.java:521)
    11-18 02:36:01.053: ERROR/AndroidRuntime(264):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
    11-18 02:36:01.053: ERROR/AndroidRuntime(264):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
    11-18 02:36:01.053: ERROR/AndroidRuntime(264):     at dalvik.system.NativeStart.main(Native Method)
    11-18 02:36:01.073: INFO/Process(56): Sending signal. PID: 264 SIG: 3
    11-18 02:36:01.083: INFO/dalvikvm(264): threadid=7: reacting to signal 3
    11-18 02:36:01.103: INFO/dalvikvm(264): Wrote stack trace to '/data/anr/traces.txt'
      

  2. 普通的JAVA程序肯定是不能在Android平台上跑起来的~~Android支持JAVA的基础语言库,但是你编写的程序必须用Android的方式来组织~~就是说你写的APK必须遵守Android的解析规则~~比如说它的入口是首先创建一个Activity,个人觉得APK编程类似于MFC ~~所以你只要把你的代码按照Anddroid的方式组织起来就能移植到Android平台了;一般来说应用程序都要继承Activity的,这个Activity里面你可以不要view,这样这个程序就没有UI了~~对于service broadcast要不要继承Activity我没研究过,就不太清楚了~~
      

  3. 你可以把你的代码编译成一个库,然后在用Android的方式来调用你库里的API~~
      

  4. anroid在程序起动后,它会去找Activity的实例,如果找不到就会报错了
      

  5. 我把我的类打成jar包,然后运行,提示不能找到类,这是什么原因?
      

  6. 不能直接运行jar包
    你看看我前面说的,你必须以Android的方式来组织应用程序~~
      

  7. 我上面没有说清楚,我把我的类打成包,然后引入了android项目中,编译时没有问题,但运行时还是说找不到类?
      

  8. 我做一个试验,我在android 项目中使用一个java的Frame类,我把jdk的包引了进来,可运行的时候还是提示找不到,难道android平台上不能运行java的Frame类?
      

  9. 你确认一下你的jar有没有打到apk里面。
    应该是你添jar的方式不对。
    --
    Quickly through....
      

类似问题 »