【问题标题】:How to fix: android.app.RemoteServiceException without any message (not related to Bad Notification or Broadcast)如何修复:没有任何消息的 android.app.RemoteServiceException(与错误通知或广播无关)
【发布时间】:2018-07-26 01:05:33
【问题描述】:

我有一个 android.app.RemoteServiceException (RSE) 但没有任何消息。 我在 Google Play 控制台上收到以下崩溃报告。当我因通知或广播错误而收到 RSE 时,我会收到相关消息,但在这种情况下是黑色崩溃。

android.app.RemoteServiceException: 
  at android.app.ActivityThread$H.handleMessage (ActivityThread.java:1813)
  at android.os.Handler.dispatchMessage (Handler.java:102)
  at android.os.Looper.loop (Looper.java:154)
  at android.app.ActivityThread.main (ActivityThread.java:6781)
  at java.lang.reflect.Method.invoke (Method.java)
  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:1520)
  at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1410)

我开始主要在 Android 7 和三星设备(大型)上遇到这些崩溃。

我们遵循通知和广播的标准准则。

targetSdkVersion 25
compileSdkVersion 26

我已经处理了许多与 RemoteServiceException 相关的 StackOverflow 问题,但无法找到 RCA,因此发布了新问题。
下面列出了我检查过但无法找到 RSE 解决方案的问题:

【问题讨论】:

  • 我也有同样的问题。如果有人发布解决方案,那就太好了。
  • 有这方面的消息吗?我在 Google Play Console 中得到了完全相同的堆栈跟踪。我自己无法重现。

标签: android crash android-7.0-nougat remoteserviceexception


【解决方案1】:

如果您已使用 startforgroundservice() 启动服务

然后你必须按照 google 的 oreo 说明在服务 oncreate 中调用 startforground()。

【讨论】:

    【解决方案2】:

    可能已经很晚了,但是您的应用中有内容提供程序吗? 如果是,它们是否在清单中正确声明? 我看到 API 26 的 ActivityThread 类代码。发生错误的行是 1813。

     case INSTALL_PROVIDER:
                    handleInstallProvider((ProviderInfo) msg.obj);
                    break;
    

    以下代码显示应用无法发布内容提供程序并在那里崩溃。

     try {
            ActivityManager.getService().publishContentProviders(
                getApplicationThread(), results);
        } catch (RemoteException ex) {
            throw ex.rethrowFromSystemServer();
        }
    

    迟到了!!但可能会帮助其他人调试他们的案例。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-09-18
      • 2018-06-15
      • 1970-01-01
      • 2014-10-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多