我們正在開發Android TV的企業應用程序,小部件和啓動器。我們有Android機頂盒,它運行我們的啓動器,一些小部件和應用程序。 Widgets啓動時在啓動器中有固定的位置。android.os.transactiontoolargeexception在啓動器
我們在我們的啓動器中獲取了android.os.transactiontoolargeexception。異常是隨機生成的。一般來說,我們已經觀察到,當我們長時間保持箱子運行時,我們正面臨着這個問題。我們的盒子將在客戶端運行24 * 7。所以這個問題對我們至關重要。
正在發生的事情究竟是,
。當我們得到這個異常啓動器崩潰。我們有一些服務,我們正在使用我們的啓動器的onCreate()向警報管理器註冊。
。由於我們只有一個啓動器,在崩潰之後它會嘗試重新啓動我們的啓動器。因此它進入循環。
。我們所有的服務都會在每次循環中重新註冊。
。我們不會爲我們的發射器顯示。我們將它連接到HDMI顯示器。
我們無法得到確切的問題原因。附上相同的日誌。如果有人可以提出一些解決方案,那麼將非常感激。
W/ActivityManager(3376): Force finishing activity com.sample.core.launcher/.HomeActivity
I/ActivityManager(3376): Process com.sample.core.launcher (pid 27399) has died.
I/ActivityManager(3376): START {act=android.intent.action.MAIN cat=[android.intent.category.HOME] flg=0x10000000 cmp=com.sample.core.launcher/.HomeActivity u=0} from pid 0
I/ActivityManager(3376): Start proc com.sample.core.launcher for activity com.sample.core.launcher/.HomeActivity: pid=27426 uid=1000 gids={3003, 1015, 1028, 2001, 3002, 3001}
E/AndroidRuntime(27426): FATAL EXCEPTION: main
E/AndroidRuntime(27426): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.sample.core.launcher/com.sample.core.launcher.HomeActivity}: java.lang.RuntimeException: system server dead?
E/AndroidRuntime(27426): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2059)
E/AndroidRuntime(27426): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2084)
E/AndroidRuntime(27426): at android.app.ActivityThread.access$600(ActivityThread.java:130)
E/AndroidRuntime(27426): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1195)
E/AndroidRuntime(27426): at android.os.Handler.dispatchMessage(Handler.java:99)
E/AndroidRuntime(27426): at android.os.Looper.loop(Looper.java:137)
E/AndroidRuntime(27426): at android.app.ActivityThread.main(ActivityThread.java:4745)
E/AndroidRuntime(27426): at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime(27426): at java.lang.reflect.Method.invoke(Method.java:511)
E/AndroidRuntime(27426): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
E/AndroidRuntime(27426): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
E/AndroidRuntime(27426): at dalvik.system.NativeStart.main(Native Method)
E/AndroidRuntime(27426): Caused by: java.lang.RuntimeException: system server dead?
E/AndroidRuntime(27426): at android.appwidget.AppWidgetHost.startListening(AppWidgetHost.java:133)
E/AndroidRuntime(27426): at com.sample.core.launcher.HomeActivity.onStart(HomeActivity.java:2027)
E/AndroidRuntime(27426): at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1173)
E/AndroidRuntime(27426): at android.app.Activity.performStart(Activity.java:5132)
E/AndroidRuntime(27426): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2032)
E/AndroidRuntime(27426): ... 11 more
E/AndroidRuntime(27426): Caused by: android.os.TransactionTooLargeException
E/AndroidRuntime(27426): at android.os.BinderProxy.transact(Native Method)
E/AndroidRuntime(27426): at com.android.internal.appwidget.IAppWidgetService$Stub$Proxy.startListening(IAppWidgetService.java:382)
E/AndroidRuntime(27426): at android.appwidget.AppWidgetHost.startListening(AppWidgetHost.java:130)
E/AndroidRuntime(27426): ... 15 more
W/ActivityManager(3376): Force finishing activity com.sample.core.launcher/.HomeActivity
I/ActivityManager(3376): Process com.sample.core.launcher (pid 27426) has died.
I/ActivityManager(3376): START {act=android.intent.action.MAIN cat=[android.intent.category.HOME] flg=0x10000000 cmp=com.sample.core.launcher/.HomeActivity u=0} from pid 0
感謝
你是否設法解決這個問題?這似乎是一個已知的問題:https://code.google.com/p/android/issues/detail?id=28216 – 2013-07-02 15:51:51