蓝牙数据传输,间隔是5秒传输一个包,长时间工作会出现
ActivityManager(  156) : no longer want com.android.bluetooth (pid XXX): hidden #16然后蓝牙服务会重启。这个过程同时还会导致正在使用蓝牙传输数据的应用程序出现no longer want,同样挂掉。
请问有什么好办法处理这个问题?

解决方案 »

  1.   

    try catch下,捕获下错误,用android得debug模式跟踪下。
    做好容错管理。
      

  2.   

    这应该是后台程序过多引起的, 把MAX_HIDDEN_APPS 这个值改大点试试
      

  3.   

    if (app.curAdj >= HIDDEN_APP_MIN_ADJ) {
                        if (!app.killedBackground) {
                            numHidden++;
                            if (numHidden > MAX_HIDDEN_APPS) {
                                Slog.i(TAG, "No longer want " + app.processName
                                        + " (pid " + app.pid + "): hidden #" + numHidden);
                                EventLog.writeEvent(EventLogTags.AM_KILL, app.pid,
                                        app.processName, app.setAdj, "too many background");
                                app.killedBackground = true;
                                Process.killProcessQuiet(app.pid);
                            }
                        }
      

  4.   

    这似乎是系统的一个机制吧,猜测,因为好多服务都会出现如此log:o longer want com.android.chrome (pid 1358): empty for 1816sI/ActivityManager(  366): No longer want android.rockchip.update.service (pid 626): empty for 1816sI/ActivityManager(  366): No longer want android.process.media (pid 517): empty for 1816sI/ActivityManager(  366): No longer want com.google.android.apps.uploader (pid 1343): empty for 1816sI/ActivityManager(  366): No longer want com.android.deskclock (pid 1212): empty for 1816sI/ActivityManager(  366): No longer want com.android.settings (pid 1329): empty for 1816sI/ActivityManager(  366): No longer want com.google.android.apps.maps:FriendService (pid 1314): empty for 1816sI/ActivityManager(  366): No longer want com.rockchip.wfd (pid 1251): empty for 1817sI/ActivityManager(  366): No longer want com.kehdev (pid 1196): empty for 1817s