2
我正在寫一個非常簡單的Android應用程序,由一個活動和一個服務構成。我做只有adb出錯
@Override
public void onResume()
{
super.onResume();
mServiceIntent = new Intent(this, RemoteIntegerService.class);
ComponentName name = startService(mServiceIntent);
TextView mainText = (TextView)findViewById(R.id.mainText);
mainText.setText(name == null ? "(null)" : name.getClassName());
}
當我在我的Galaxy Tab或虛擬設備運行應用程序加載我的服務活動中,一切都看起來不錯,和的mainText讀取正確的類名。
但是當我使用adb的「通過usb功能調試」在Eclipse中啓動應用程序時,Intent構造函數(在真實設備以及虛擬設備中)出現錯誤。這裏的堆棧跟蹤:
RemoteInteger [Android Application]
DalvikVM[localhost:8621]
Thread [<1> main] (Class load: RemoteIntegerService)
DexFile.defineClass(String, ClassLoader, int, ProtectionDomain) line: not available [native method]
DexFile.loadClassBinaryName(String, ClassLoader) line: 207
PathClassLoader.findClass(String) line: 211
PathClassLoader(ClassLoader).loadClass(String, boolean) line: 540
PathClassLoader(ClassLoader).loadClass(String) line: 500
RemoteIntegerActivity.onResume() line: 28
Instrumentation.callActivityOnResume(Activity) line: 1153
RemoteIntegerActivity(Activity).performResume() line: 4428
ActivityThread.performResumeActivity(IBinder, boolean) line: 2217
ActivityThread.handleResumeActivity(IBinder, boolean, boolean) line: 2255
ActivityThread.handleLaunchActivity(ActivityThread$ActivityClientRecord, Intent) line: 1769
ActivityThread.access$1500(ActivityThread, ActivityThread$ActivityClientRecord, Intent) line: 122
ActivityThread$H.handleMessage(Message) line: 1002
ActivityThread$H(Handler).dispatchMessage(Message) line: 99
Looper.loop() line: 132
ActivityThread.main(String[]) line: 4025
Method.invokeNative(Object, Object[], Class, Class[], Class, int, boolean) line: not available [native method]
Method.invoke(Object, Object...) line: 491
ZygoteInit$MethodAndArgsCaller.run() line: 841
ZygoteInit.main(String[]) line: 599
NativeStart.main(String[]) line: not available [native method]
Thread [<8> Binder Thread #2] (Running)
Thread [<7> Binder Thread #1] (Running)
編輯
複製完整的堆棧跟蹤
爲MyService - > RemoteIntegerService(真實姓名,配合好堆棧跟蹤)
編輯2 - 子問題
我找不到任何有關錯誤的信息。該程序停止,我看到堆棧跟蹤,但沒有別的。在Visual Studio中,我有一個彈出窗口來描述發生的異常。 Eclipse中是否有類似的東西?
這似乎不像完整的堆棧跟蹤。頂部必須有幾條線。 – 2012-03-08 15:59:22
我不明白這個:你用不同的方法來創建apk(除了eclipse)嗎?如果是這樣,你如何建立它? – 2012-03-08 16:06:23
不,我使用Eclipse構建了apk,但是一旦我運行它(使用Eclipse),它就會一直安裝在設備上,所以我可以在沒有Eclipse的情況下像任何應用程序一樣運行它。當我在Eclipse中從adb運行時,我遇到了錯誤,當我在沒有Eclipse的情況下運行它時,它運行良好。 (但我希望能夠用Eclipse進行調試......) – Julien 2012-03-08 16:08:31