2012-02-18 11 views
8

Ho un'app per Android caricata sul market.The ha una classe che deve essere caricata all'avvio. Ho usato alcune variabili globali nella classeOttenere ClassNotFoundException sul caricamento dell'applicazione Android

Il problema è che la mia console sviluppatore mi mostra errori di ClassNotFoundException per questa particolare classe. Tuttavia, quando eseguo il test su vari telefoni, non viene rilevato alcun errore, ma ciò accade su un numero di portatili insufficiente poiché è possibile visualizzare l'errore frequentemente nella console dello sviluppatore

Di seguito è riportato il log degli errori. Il nome della classe è MiaApp

java.lang.RuntimeException: Unable to instantiate application com.test.app.MyApp:  
java.lang.ClassNotFoundException: com.test.app.MyApp in loader 
dalvik.system.PathClassLoader[/mnt/asec/com.test.app-1/pkg.apk] 
at android.app.LoadedApk.makeApplication(LoadedApk.java:481) 
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:3882) 
at android.app.ActivityThread.access$2200(ActivityThread.java:145) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1089) 
at android.os.Handler.dispatchMessage(Handler.java:99) 
at android.os.Looper.loop(Looper.java:150) 
at android.app.ActivityThread.main(ActivityThread.java:4369) 
at java.lang.reflect.Method.invokeNative(Native Method) 
at java.lang.reflect.Method.invoke(Method.java:507) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:846) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:604) 
at dalvik.system.NativeStart.main(Native Method) 
Caused by: java.lang.ClassNotFoundException: com.test.app.MyApp in loader  
dalvik.system.PathClassLoader[/mnt/asec/com.test.app-1/pkg.apk] 
at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:240) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:551) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:511) 
at android.app.Instrumentation.newApplication(Instrumentation.java:972) 
at android.app.LoadedApk.makeApplication(LoadedApk.java:472) 

In seguito è l'istantanea del Manifesto

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="com.test.app" 
android:installLocation="preferExternal" 
android:versionCode="30" 
android:versionName="1.5.3"> 
<application android:name = "MyApp" android:icon="@drawable/icon"  
android:label="@string/app_name" 
android:theme="@android:style/Theme.NoTitleBar"> 

<activity android:name=".GamesWorld" 
android:label="@string/app_name">    
</activity> 
+2

Avete trovato la soluzione? – Anastasia

risposta

0

dare a .Myapp

<application android:name = ".MyApp" android:icon="@drawable/icon"  
+0

MyApp non è un'attività È una classe che estende l'applicazione, è necessario leggere attentamente l'errore e quindi dare la risposta. –

0

Sembra ou non è stato impostato il "lanciatore "nella tua attività all'interno dell'applicazione applicazione

<activity 
     android:name=".GamesWorld" 
     android:label="@string/app_name" > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

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

Ho un launcher, è solo che non ho incollato l'intero manifest :-) – user669231

0

inserire un . prima di nel manifest. Hai <activity android:name=".GamesWorld" e <application android:name = "MyApp"

dovrebbe essere:

<application android:name = ".MyApp"

+0

In realtà avevo .MyApp dato in precedenza, anch'io lo sospettavo e l'ho cambiato solo su MyApp. Ma l'errore esiste ancora – user669231

Problemi correlati