简体   繁体   English

Libgdx Android应用在启动时崩溃

[英]Libgdx Android app crashes at launch

I'm creating an app with libgdx for the desktop and for android devices. 我正在使用libgdx为桌面和android设备创建一个应用程序。 The app is working fine on the desktop (windows), and also works fine on Ice Cream Sandwich (tested on a Droid DNA, a Nexus 7 and an emulated Nexus One). 该应用程序可以在桌面(Windows)上正常运行,也可以在Ice Cream Sandwich(在Droid DNA,Nexus 7和仿真的Nexus One上进行测试)上正常运行。

However, on a Droid X or on a Gingerbead emulator, the app crashes immediately. 但是,在Droid X或Gingerbead模拟器上,该应用程序立即崩溃。

What could cause the app to crash on Gingerbread, but not on ICS? 是什么原因导致该应用在Gingerbread上崩溃,但在ICS上却崩溃呢?

The error is: 错误是:

01-27 19:48:43.387: E/AndroidRuntime(687): FATAL EXCEPTION: main
01-27 19:48:43.387: E/AndroidRuntime(687): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.ianmarkowitz.superfrenzy/com.ianmarkowitz.superfrenzy.MainActivity}: java.lang.ClassNotFoundException: com.ianmarkowitz.superfrenzy.MainActivity in loader dalvik.system.PathClassLoader[/data/app/com.ianmarkowitz.superfrenzy-1.apk]
01-27 19:48:43.387: E/AndroidRuntime(687):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1569)
01-27 19:48:43.387: E/AndroidRuntime(687):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663)
01-27 19:48:43.387: E/AndroidRuntime(687):  at android.app.ActivityThread.access$1500(ActivityThread.java:117)
01-27 19:48:43.387: E/AndroidRuntime(687):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931)
01-27 19:48:43.387: E/AndroidRuntime(687):  at android.os.Handler.dispatchMessage(Handler.java:99)
01-27 19:48:43.387: E/AndroidRuntime(687):  at android.os.Looper.loop(Looper.java:123)
01-27 19:48:43.387: E/AndroidRuntime(687):  at android.app.ActivityThread.main(ActivityThread.java:3683)
01-27 19:48:43.387: E/AndroidRuntime(687):  at java.lang.reflect.Method.invokeNative(Native Method)
01-27 19:48:43.387: E/AndroidRuntime(687):  at java.lang.reflect.Method.invoke(Method.java:507)
01-27 19:48:43.387: E/AndroidRuntime(687):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
01-27 19:48:43.387: E/AndroidRuntime(687):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
01-27 19:48:43.387: E/AndroidRuntime(687):  at dalvik.system.NativeStart.main(Native Method)
01-27 19:48:43.387: E/AndroidRuntime(687): Caused by: java.lang.ClassNotFoundException: com.ianmarkowitz.superfrenzy.MainActivity in loader dalvik.system.PathClassLoader[/data/app/com.ianmarkowitz.superfrenzy-1.apk]
01-27 19:48:43.387: E/AndroidRuntime(687):  at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:240)
01-27 19:48:43.387: E/AndroidRuntime(687):  at java.lang.ClassLoader.loadClass(ClassLoader.java:551)
01-27 19:48:43.387: E/AndroidRuntime(687):  at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
01-27 19:48:43.387: E/AndroidRuntime(687):  at android.app.Instrumentation.newActivity(Instrumentation.java:1021)
01-27 19:48:43.387: E/AndroidRuntime(687):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1561)
01-27 19:48:43.387: E/AndroidRuntime(687):  ... 11 more

My android manifest file is: 我的Android清单文件是:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.ianmarkowitz.superfrenzy"
    android:allowBackup="true"
    android:hardwareAccelerated="true"
    android:installLocation="preferExternal"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="10"
        android:targetSdkVersion="17" />

    <uses-permission android:name="android.permission.VIBRATE" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name" >
        <activity
            android:name=".MainActivity"
            android:configChanges="keyboard|keyboardHidden|orientation|screenSize"
            android:label="@string/app_name_short"
            android:screenOrientation="portrait" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

Are you using any Android APIs from after SDK 10 in com.ianmarkowitz.superfrenzy.MainActivity ? 您是否正在com.ianmarkowitz.superfrenzy.MainActivity使用SDK 10之后的任何Android API? The Dalvik linker will refuse to load MainActivity if it references classes/methods that do not exist. 如果Dalvik链接器引用了不存在的类/方法,它将拒绝加载MainActivity

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM