【问题标题】:How to programmatically enable Autostart option for my app in MI 4i security APP?如何在 MI 4i 安全应用程序中以编程方式为我的应用程序启用自动启动选项?
【发布时间】:2015-11-25 13:01:51
【问题描述】:

For check screenshot and detail, click here

请提供有关如何为我的应用程序添加自动启用自动启动的相关建议或代码,请在此处查看随附的屏幕截图,提前致谢。

【问题讨论】:

  • 如果您的应用程序具有在启动时启动您的应用程序的权限。然后它会自动出现在列表中。因为 Mi4i 安全应用程序会检查“mcd”在他的回答中提到的权限。
  • 能给个权限码吗?
  • @ChiragKheni 我还想为我的应用程序启用自动启动。你做到了吗?帮帮我。
  • @Chirag 面临同样的问题,您有解决方案吗?
  • 抱歉,仍未找到任何以编程方式启用自动启动选项的解决方案。我们可以通知此特定设备的用户手动启用自动启动。

标签: android android-service android-manifest autostart


【解决方案1】:

试试这个……它对我有用。它将打开屏幕以启用自动启动。

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 intent = new Intent();
            intent.setComponent(new ComponentName("com.miui.securitycenter", "com.miui.permcenter.autostart.AutoStartManagementActivity"));
            startActivity(intent);
        }

【讨论】:

  • 如何检查自动启动权限是否已启用。此代码始终打开自动启动权限屏幕。我只想在应用未启用自动启动时显示此屏幕。
  • @ved 我也在寻找相同的...此外,此代码无法在某些 MI 手机中找到特定活动。我仍在寻找可以消除此问题的代码。
  • 小伙伴们有什么解决办法吗?
  • 如何找到需要在哪部手机上做自动开机码?表示我知道 MI 设备 需要自动启动但不知道其他人。
【解决方案2】:

包括 (RedMi) 在内的少数 OEM 为电池/内存优化定制堆栈 ROM,并阻止了“onDestroy()”和“onTaskRemoved”回调。作为用户,您可以通过锁定应用程序来防止应用程序的服务被杀死。或者,通过为应用程序启用“自动启动”设置将应用程序列入白名单。您可以通过编程方式提示用户为应用程序启用自动启动Please find details here

请注意:我已经在少数设备上以编程方式测试了自动启动启用,但发现它并不总是有效。请检查上面的链接以查看可能的选项。

【讨论】:

    【解决方案3】:

    首先你需要在清单上获得权限:

     <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
    

    仍然在清单中,您需要在您的

    中添加一个广播接收器
    <application>
    

    元素:

    <receiver android:name="net.example.MyOwnBroadcastReceiver">  
    <intent-filter>  
        <action android:name="android.intent.action.BOOT_COMPLETED" />  
    </intent-filter>  
    

    之后在您的“MyOwnBroadcastReceiver”类中

    package net.example;
    
    public class MyOwnBroadcastreceiver extends BroadcastReceiver {
        @Override
        public void onReceive(Context context, Intent intent) {
            Intent startServiceIntent = new Intent(context, MyService.class);
            context.startService(startServiceIntent);
        }
    }
    

    您可以通过以下链接获得更多帮助:

    http://blog.gregfiumara.com/archives/82

    http://techblogon.com/android-start-service-on-boot/

    【讨论】:

    • 我已经添加了上面的代码,但在 Android MI 4i 中默认没有启用自动启动
    猜你喜欢
    • 2017-01-15
    • 1970-01-01
    • 1970-01-01
    • 2011-03-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-10
    • 2016-03-12
    相关资源
    最近更新 更多