【发布时间】:2013-09-05 16:46:30
【问题描述】:
以下是新发布应用的崩溃报告。我用一个列为测试人员的谷歌帐户测试了购买它,这与它有什么关系吗?堆栈 strace 说路径中的包名称末尾有一个'-1'?
java.lang.RuntimeException: Unable to instantiate activity
ComponentInfo{com.zenlifegames.teachtryabc123/com.zenlifegames.teachtryabc123.MainActivity}: java.lang.ClassNotFoundException: Didn't find class "com.zenlifegames.teachtryabc123.MainActivity" on path: /mnt/asec/com.zenlifegames.teachtryabc123-1/pkg.apk
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2060)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2174)
at android.app.ActivityThread.access$700(ActivityThread.java:141)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1267)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5059)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:792)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:555)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.zenlifegames.teachtryabc123.MainActivity" on path: /mnt/asec/com.zenlifegames.teachtryabc123-1/pkg.apk
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:61)
at java.lang.ClassLoader.loadClass(ClassLoader.java:501)
at java.lang.ClassLoader.loadClass(ClassLoader.java:461)
at android.app.Instrumentation.newActivity(Instrumentation.java:1053)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2051)
... 11 more
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.zenlifegames.teachtryabc123"
android:versionCode="2"
android:versionName="1.0.1" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="18" />
<uses-permission android:name="android.permission.GET_TASKS" />
<uses-permission android:name="com.android.vending.BILLING" />
<uses-permission android:name="com.android.vending.CHECK_LICENSE" />
<application
android:allowBackup="true"
android:icon="@drawable/game_icon"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<service android:name="com.zenlifegames.teachtryabc123.MyMusicService" >
</service>
<activity
android:name="com.zenlifegames.teachtryabc123.MainActivity"
android:configChanges="keyboardHidden|orientation|screenSize"
android:label="@string/app_name"
android:screenOrientation="portrait" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name="com.zenlifegames.teachtryabc123.Preferences"
android:label="@string/set_preferences"
android:screenOrientation="portrait" >
</activity>
<activity
android:name="com.zenlifegames.teachtryabc123.GameSelector"
android:label="@string/title_activity_game_selector"
android:screenOrientation="portrait" >
</activity>
<activity
android:name="com.zenlifegames.teachtryabc123.Game2Show"
android:label="@string/title_activity_game2_show"
android:screenOrientation="portrait" >
</activity>
<activity
android:name="com.zenlifegames.teachtryabc123.Game2Try"
android:label="@string/title_activity_game2_try"
android:screenOrientation="portrait" >
</activity>
<activity
android:name="com.zenlifegames.teachtryabc123.Game1Show"
android:label="@string/title_activity_game1_show"
android:screenOrientation="portrait" >
</activity>
<activity
android:name="com.zenlifegames.teachtryabc123.Game1Try"
android:configChanges="orientation|screenSize"
android:label="@string/title_activity_game1_try"
android:screenOrientation="portrait" >
</activity>
</application>
【问题讨论】:
-
包名有-1是正常的。你在签署apk时使用了proguard吗?
-
我没有。我看到在使用许可库时建议使用它并且我确实下载了该工具,但由于这是我的第一个应用程序,我不确定是否使用它并且认为它不是必需的?
-
这不是必需的。如果您使用过它,那可能是您的问题。在调试时,我确信它在您的设备上运行良好,但您是否尝试过在推送到 Play 商店之前安装已签名的 APK?
-
此外,此类问题通常是由于添加活动时 AndroidManifest.xml 中的错误造成的。您在那里声明您的活动时是否使用了完全限定名称?
-
精简版可在 Play 商店中使用。我添加了我的 XML
标签: android classnotfoundexception runtimeexception