我正在使用Phonegap和Cordova构建应用程序。当我在Eclipse模拟器中运行应用程序时, apk 成功安装,但点击后我收到一条警告说“不幸AppName已停止”任何指导或建议来解决这个问题问题会很好,谢谢。
控制台:
[2013-11-13 12:18:47 - Challenger] Dx
trouble writing output: already prepared
[2013-11-13 12:18:48 - Challenger] ------------------------------
[2013-11-13 12:18:48 - Challenger] Android Launch!
[2013-11-13 12:18:48 - Challenger] adb is running normally.
[2013-11-13 12:18:48 - Challenger] Performing com.disciplinexgames.DisciplineXgames.Challenger activity launch
[2013-11-13 12:18:48 - Challenger] Automatic Target Mode: launching new emulator with compatible AVD 'testDevice'
[2013-11-13 12:18:48 - Challenger] Launching a new emulator with Virtual Device 'testDevice'
[2013-11-13 12:18:57 - Challenger] New emulator found: emulator-5554
[2013-11-13 12:18:57 - Challenger] Waiting for HOME ('android.process.acore') to be launched...
[2013-11-13 12:19:55 - Challenger] HOME is up on device 'emulator-5554'
[2013-11-13 12:19:55 - Challenger] Uploading Challenger.apk onto device 'emulator-5554'
[2013-11-13 12:20:09 - Challenger] Installing Challenger.apk...
[2013-11-13 12:21:33 - Challenger] Success!
[2013-11-13 12:21:33 - Challenger] Starting activity com.disciplinexgames.DisciplineXgames.Challenger on device emulator-5554
[2013-11-13 12:21:34 - Challenger] ActivityManager: Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.disciplinexgames.DisciplineXgames/.Challenger }
logcat的:
11-13 07:21:36.140: D/AndroidRuntime(837): Shutting down VM
11-13 07:21:36.140: W/dalvikvm(837): threadid=1: thread exiting with uncaught exception (group=0x41465700)
11-13 07:21:36.150: E/AndroidRuntime(837): FATAL EXCEPTION: main
11-13 07:21:36.150: E/AndroidRuntime(837): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.disciplinexgames.DisciplineXgames/com.disciplinexgames.DisciplineXgames.Challenger}: java.lang.ClassNotFoundException: Didn't find class "com.disciplinexgames.DisciplineXgames.Challenger" on path: DexPathList[[zip file "/data/app/com.disciplinexgames.DisciplineXgames-1.apk"],nativeLibraryDirectories=[/data/app-lib/com.disciplinexgames.DisciplineXgames-1, /system/lib]]
11-13 07:21:36.150: E/AndroidRuntime(837): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2137)
11-13 07:21:36.150: E/AndroidRuntime(837): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2261)
11-13 07:21:36.150: E/AndroidRuntime(837): at android.app.ActivityThread.access$600(ActivityThread.java:141)
11-13 07:21:36.150: E/AndroidRuntime(837): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256)
11-13 07:21:36.150: E/AndroidRuntime(837): at android.os.Handler.dispatchMessage(Handler.java:99)
11-13 07:21:36.150: E/AndroidRuntime(837): at android.os.Looper.loop(Looper.java:137)
11-13 07:21:36.150: E/AndroidRuntime(837): at android.app.ActivityThread.main(ActivityThread.java:5103)
11-13 07:21:36.150: E/AndroidRuntime(837): at java.lang.reflect.Method.invokeNative(Native Method)
11-13 07:21:36.150: E/AndroidRuntime(837): at java.lang.reflect.Method.invoke(Method.java:525)
11-13 07:21:36.150: E/AndroidRuntime(837): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737)
11-13 07:21:36.150: E/AndroidRuntime(837): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
11-13 07:21:36.150: E/AndroidRuntime(837): at dalvik.system.NativeStart.main(Native Method)
11-13 07:21:36.150: E/AndroidRuntime(837): Caused by: java.lang.ClassNotFoundException: Didn't find class "com.disciplinexgames.DisciplineXgames.Challenger" on path: DexPathList[[zip file "/data/app/com.disciplinexgames.DisciplineXgames-1.apk"],nativeLibraryDirectories=[/data/app-lib/com.disciplinexgames.DisciplineXgames-1, /system/lib]]
11-13 07:21:36.150: E/AndroidRuntime(837): at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:53)
11-13 07:21:36.150: E/AndroidRuntime(837): at java.lang.ClassLoader.loadClass(ClassLoader.java:501)
11-13 07:21:36.150: E/AndroidRuntime(837): at java.lang.ClassLoader.loadClass(ClassLoader.java:461)
11-13 07:21:36.150: E/AndroidRuntime(837): at android.app.Instrumentation.newActivity(Instrumentation.java:1061)
11-13 07:21:36.150: E/AndroidRuntime(837): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2128)
11-13 07:21:36.150: E/AndroidRuntime(837): ... 11 more
的AndroidManifest.xml
<?xml version='1.0' encoding='utf-8'?>
<manifest android:hardwareAccelerated="true" android:versionCode="1" android:versionName="1.0.0" android:windowSoftInputMode="adjustPan" package="com.disciplinexgames.DisciplineXgames" xmlns:android="http://schemas.android.com/apk/res/android">
<supports-screens android:anyDensity="true" android:largeScreens="true" android:normalScreens="true" android:resizeable="true" android:smallScreens="true" android:xlargeScreens="true" />
<uses-permission android:name="android.permission.INTERNET" />
<application android:debuggable="true" android:hardwareAccelerated="true" android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale" android:label="@string/app_name" android:name="Challenger" android:theme="@android:style/Theme.Black.NoTitleBar">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
<uses-sdk android:minSdkVersion="8" android:targetSdkVersion="18" />
</manifest>
答案 0 :(得分:0)
ClassNotFoundException的。您的应用无法找到您的课程。检查你的所有java文件一次。或发布您的清单文件。
答案 1 :(得分:0)
尝试转到Project - &gt;属性 - &gt; Java构建路径 - &gt;订单&amp;导出并确保为您的项目和您正在使用的所有其他库项目检查Android私有库。之后清理所有项目,看看会发生什么。
答案 2 :(得分:0)
单击按钮时是否显示错误?
答案 3 :(得分:0)
尽量避免在包名中混合使用大写和小写名称,这样做很麻烦。特别是如果你在Windows机器上开发。
因此,通过重命名package-directory并替换项目的每个文件中的packagename,而不是package-name com.disciplinexgames.DisciplineXgames使用com.disciplinexgames.disciplinexgames。