【问题标题】:Android Xiaomi Redmi failed to start new processAndroid 小米 Redmi 启动新流程失败
【发布时间】:2017-01-23 12:21:17
【问题描述】:

我有在单独进程中运行的同步服务

    <service
        android:name=".local_data.SyncService"
        android:exported="true"
        android:process=":sync">
        <intent-filter>
            <action android:name="android.content.SyncAdapter" />
        </intent-filter>

        <meta-data
            android:name="android.content.SyncAdapter"
            android:resource="@xml/syncadapter" />
    </service>

在除小米之外的每部手机上,它都成功启动了新进程,在进程选择器中我只看到主进程。我尝试在主进程中启动我的同步服务,它工作正常。

【问题讨论】:

  • 你的代码一定有问题。在此处添加服务代码

标签: android process synchronization android-syncadapter


【解决方案1】:

这对小米来说并不新鲜,因为小米有一个叫做应用权限的功能,用户必须允许应用自动启动(服务)。

像这样让你的应用自动启动:

Settings &gt; permissions &gt; Autostart

【讨论】:

    【解决方案2】:

    您可以通过重定向到小米设备中的自动启动页面来请求自动启动权限,如下所示:

    void showAutoStartPermission(){
        String manufacturer = "xiaomi";
        if (manufacturer.equalsIgnoreCase(android.os.Build.MANUFACTURER)) { 
            //this will open auto start screen where user can enable permission for your app
            Intent intent1 = new Intent();
            intent1.setComponent(new ComponentName("com.miui.securitycenter", "com.miui.permcenter.autostart.AutoStartManagementActivity"));
            startActivity(intent1);
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-19
      • 2017-12-27
      • 1970-01-01
      • 2019-09-27
      • 2020-02-07
      • 1970-01-01
      • 2014-06-18
      • 1970-01-01
      相关资源
      最近更新 更多