J'ai un problème avec une de mes applications, et je me demandais si quelqu'un pourrait me donner un aperçu de ce que peut-être la cause.
Je suis une ClassNotFoundException, la ligne importante est ci-dessous
E/AndroidRuntime(21982): Caused by: java.lang.ClassNotFoundException: couk.doridori.goigo.customUI.GoBoardView in loader dalvik.system.PathClassLoader@446fc3d0
Maintenant, cette application a été pendant plus d'un an et 2 jours, j'ai eu deux séparés utilisateurs me contacter au sujet de cette question, l'une sur un HTC wildfire (2.1) et un Samsung Galaxy S (?). Maintenant, je ne peut pas recréer ce problème sur mes appareils (2.2 et 1.6) ou un émulateur (2.1) et ne peut pas vraiment pourquoi cette classe ne peut pas être trouvé par le chargeur de classe. J'ai passé un certain temps sur google en vain, et on espère que quelqu'un a quelques conseils! Il semble seulement être une activité qui est chargé lorsque le contentView est défini, il essaie de gonfler un Affichage personnalisé appelé GoBoardView qui étend la classe de la Vue, c'est juste une simple toile de dessin et n'est pas l'aide d'un tiers libs ou toutes les autres classes qui ont un paquet clash ou quoi que ce soit.
S'il vous plaît aider! Juste au cas où son accumulation question je suis la mise à jour de tous mes SDK et ADT par eclipse comme c'était le bâtiment contre 1,6 et à l'aide de l'ancien ADT, mais je n'ai aucune idée si cela va aider juste pensé vaut la peine d'essayer. Tout conseil serait formidable merci! (voir ci-dessous pour MODIFIER)
E/AndroidRuntime(21982): java.lang.RuntimeException: Unable to start activity ComponentInfo{couk.doridori.goigoFull/couk.doridori.goigoFull.Board}: android.view.InflateException: Binary XML file line #14: Error inflating class couk.doridori.goigo.customUI.GoBoardView
E/AndroidRuntime(21982): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2596)
E/AndroidRuntime(21982): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2621)
E/AndroidRuntime(21982): at android.app.ActivityThread.access$2200(ActivityThread.java:126)
E/AndroidRuntime(21982): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1932)
E/AndroidRuntime(21982): at android.os.Handler.dispatchMessage(Handler.java:99)
E/AndroidRuntime(21982): at android.os.Looper.loop(Looper.java:123)
E/AndroidRuntime(21982): at android.app.ActivityThread.main(ActivityThread.java:4603)
E/AndroidRuntime(21982): at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime(21982): at java.lang.reflect.Method.invoke(Method.java:521)
E/AndroidRuntime(21982): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
E/AndroidRuntime(21982): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
E/AndroidRuntime(21982): at dalvik.system.NativeStart.main(Native Method)
E/AndroidRuntime(21982): Caused by: android.view.InflateException: Binary XML file line #14: Error inflating class couk.doridori.goigo.customUI.GoBoardView
E/AndroidRuntime(21982): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:576)
E/AndroidRuntime(21982): at android.view.LayoutInflater.rInflate(LayoutInflater.java:618)
E/AndroidRuntime(21982): at android.view.LayoutInflater.rInflate(LayoutInflater.java:621)
E/AndroidRuntime(21982): at android.view.LayoutInflater.rInflate(LayoutInflater.java:621)
E/AndroidRuntime(21982): at android.view.LayoutInflater.inflate(LayoutInflater.java:407)
E/AndroidRuntime(21982): at android.view.LayoutInflater.inflate(LayoutInflater.java:320)
E/AndroidRuntime(21982): at android.view.LayoutInflater.inflate(LayoutInflater.java:276)
E/AndroidRuntime(21982): at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:207)
E/AndroidRuntime(21982): at android.app.Activity.setContentView(Activity.java:1629)
E/AndroidRuntime(21982): at couk.doridori.goigoFull.Board.onCreate(Board.java:31)
E/AndroidRuntime(21982): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
E/AndroidRuntime(21982): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2544)
E/AndroidRuntime(21982): ... 11 more
E/AndroidRuntime(21982): Caused by: java.lang.ClassNotFoundException: couk.doridori.goigo.customUI.GoBoardView in loader dalvik.system.PathClassLoader@446fc3d0
E/AndroidRuntime(21982): at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:243)
E/AndroidRuntime(21982): at java.lang.ClassLoader.loadClass(ClassLoader.java:573)
E/AndroidRuntime(21982): at java.lang.ClassLoader.loadClass(ClassLoader.java:532)
E/AndroidRuntime(21982): at android.view.LayoutInflater.createView(LayoutInflater.java:466)
E/AndroidRuntime(21982): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:565)
E/AndroidRuntime(21982): ... 22 more
MODIFIER
Ok, la recherche de certains des liens que les utilisateurs ont commenté en réponse à cette question, il semble que l'utilisation du mauvais contexte pour le chargement des activités peuvent causer ce problème. Je trouve cela intéressant parce que l'un des deux rapports du journal, j'ai été envoyer a cette exception précédé par
W/ActivityManager( 1222): startActivity called from non-Activity context; forcing Intent.FLAG_ACTIVITY_NEW_TASK for: Intent { flg=0x20000 cmp=couk.doridori.goigoFull/.Games }
ce qui est assez explicites - problème est que je n'ai aucune idée de l'endroit où cette activité peut être démarré à partir d'où il utilise un non contexte d'activité, donc je suis un peu perplexe, en pensant qu'il maye être certains multitâche comme caprice et son être ramené au premier plan de quelque chose . Cela peut alors apparemment provoquer des problèmes avec le chargeur de classe. Si cela se passait sur un utilisateur de téléphone je ne peux pas voir pourquoi je ne peux pas reproduire ce (et la plupart des autres utilisateurs ne peuvent pas non plus).
L'autre chose que j'ai trouvé par le biais des liens qui est intéressant, c'est que certaines personnes ont rencontré des problèmes en raison d'une "mauvaise apk de l'installation", qui peuvent être résolus par une réinstallation, en qui j'ai demandé les utilisateurs qui ont eu le problème pour essayer (ce qui ne veut pas faire une différence). Aussi, il semble que une fois que le problème est rencontré (qui est à la première utilisation), il sera persistant.