0

我最近遇到了Android應用程序的問題,我無法弄清楚發生了什麼。 我正在開發和測試我的應用程序通過Eclipse和一切正常。 然後是在PlayStyore上發佈它的時間(版本1.0已在幾個小時前發佈)。 因此,我清理了我的工作區,並通過「Android工具=>導出簽名的應用程序包」對APK進行了簽名,並將.apk上傳至GooglePlay。 上傳過程完成沒有任何問題。 當應用程序(1.0.1)在PlayStore上發佈時,我嘗試下載並將其安裝在手機上。它下載得很好,但1秒後應用程序崩潰,甚至沒有出現第一個屏幕。 (但它與我的設備連接到Eclipse工作正常,我也通過電子郵件發送apk到我的手機,並從那裏安裝它,沒有問題)檢查APK是否已正確構建

而且安裝我的應用程序的新版本的每個人都無法啓動它...

這裏是日誌我可以看到GOOGLEPLAY

了java.lang.RuntimeException:無法實例化應用 be.example.ex.Ex:拋出java.lang.ClassNotFoundException:沒」 t找到類 「be.example.ex.Ex」on path:/data/app/be.example.ex-2.apk at android.app.LoadedApk.makeApplic通貨膨脹(LoadedApk.java:509)在 android.app.ActivityThread.handleBindApplication(ActivityThread.java:4657) 在android.app.ActivityThread.access $ 1400(ActivityThread.java:159)在 android.app.ActivityThread $ H .handleMessage(ActivityThread.java:1376) at android.os.Handler.dispatchMessage(Handler.java:99)at android.os.Looper.loop(Looper.java:176)at android.app.ActivityThread.main (ActivityThread.java:5419)處 java.lang.reflect.Method.invoke(Method.java:525) java.lang.reflect.Method.invokeNative(本機方法)在 com.android.internal.os。 ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:1046) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:862)at dalvik.system.NativeStart.main(Native Method)引起: java.lang.ClassNotFoundException:路徑上未找到類「be.example.ex.Ex」 :/data/app/be.example.ex -2.apk dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:64) at java.lang.ClassLoader.loadClass(ClassLoader.java:501)at java.lang.ClassLoader.loadClass(ClassLoader.java: 461)在 android.app.Instrumentation.newApplication(Instrumentation.java:992) 在android.app.LoadedApk.makeApplication(LoadedApk.java:504)... 11 更多

所以我讀了在SO上幾個帖子,我清理了我的項目(再次),斷開我的項目庫,然後再將它們連接起來。 我發佈了新的APK(1.0.2),希望一切正常,用戶可以從PlayStore下載後啓動它。

現在我有另一個版本發佈,我不能進入相同的問題。現在有更多人下載了該應用程序,我無法承擔應用程序在每個用戶手機上的崩潰。

有沒有辦法避免上一個問題?也許一個工具來檢查apk是否已經正確構建?

請注意,這是我第一次得到這個錯誤,並且我已經發布了一些沒有任何問題的應用程序。每當我發佈一個新版本時,我都會發狂,所以如果有人能給我一個建議,以確保這再也不會發生,這將是偉大的:)

在此先感謝!

+0

使用測試版,alpha階段在谷歌播放,HTTPS://support.google.com/googleplay/android-developer/answer/3131213 HL = EN – HenryChuang

+0

是的,我想過,但我被困錯誤404試圖打開他們提供給測試人員的鏈接。 他們說這可能需要長達24小時,所以我會等幾個小時。 這對我來說似乎是最好的方法。 – Seb83

+0

@ Seb83是否在Google Play上使用Alpha/Beta階段爲您工作? –

回答

1

可能是明顯不正確 請與意圖過濾器檢查

<activity 
    android:name="com.example.test.MainActivity" 
    android:label="@string/app_name" > 
    <intent-filter> 
     <action android:name="android.intent.action.MAIN" /> 

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

的com.example.test.MainActivity應申報正確

+0

謝謝,但我已經有清單中正確聲明的活動。這是我不明白的。 錯誤日誌讀取,我的應用程序類沒有被發現... – Seb83

1

做的最好的事情就是檢查APK由eclipse製作。有時,我在Google Play商店發佈新文章之前遇到同樣的問題,我在手機上測試了我的apk。只需使用以下命令行。

adb install pathToMyApk.apk 
+0

我會嘗試與以前的.apk導致的問題,我會讓你知道 – Seb83

+0

當你在模擬器中測試你的應用程序, apk。當你導出一個apk時,會創建另一個apk,但有時這個apk會被破壞,所以如果你在手機上測試這個apk並且一切都很乾淨,你可以發佈它。 – mrroboaat

+0

我有同樣的問題比OP和事實上,安裝與adb的壞apk後,我可以重現該問題。 –