首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

设备重启后应用程序自动启动不起作用(Android 9)

在Android 9(Pie)系统中,设备重启后应用程序自动启动不起作用的问题可能是由于系统的优化策略导致的。为了提高系统性能和电池寿命,Android 9对应用程序的后台活动进行了限制。下面是解决这个问题的一些方法:

  1. 后台限制:Android 9引入了后台限制功能,系统会限制应用程序在后台执行的任务和活动。为了确保应用程序能够自动启动,你可以尝试将应用程序设置为"关键应用程序"。关键应用程序在系统启动后会被立即启动,并且可以继续在后台运行。你可以按照以下步骤设置应用程序为关键应用程序:
    • 进入设置菜单,找到应用程序管理器。
    • 选择你的应用程序,然后选择"电池"或"电量管理"。
    • 在电池优化设置中,将应用程序设置为"未优化"或"不限制"。
  • 启动广播接收器:你可以使用广播接收器来监听系统的启动事件,并在设备重启后自动启动你的应用程序。你需要在AndroidManifest.xml文件中注册一个广播接收器,并实现相应的逻辑。以下是一个简单的示例:
代码语言:txt
复制
<receiver android:name=".BootReceiver">
    <intent-filter>
        <action android:name="android.intent.action.BOOT_COMPLETED" />
    </intent-filter>
</receiver>
代码语言:txt
复制
public class BootReceiver extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
        if (Intent.ACTION_BOOT_COMPLETED.equals(intent.getAction())) {
            // 在此处启动你的应用程序
        }
    }
}
  1. JobScheduler:Android 5.0引入的JobScheduler API可以用于在设备空闲时执行后台任务。你可以使用JobScheduler来调度一个任务,在设备重启后自动启动你的应用程序。以下是一个简单的示例:
代码语言:txt
复制
JobScheduler jobScheduler = (JobScheduler) getSystemService(Context.JOB_SCHEDULER_SERVICE);
ComponentName componentName = new ComponentName(this, YourJobService.class);
JobInfo jobInfo = new JobInfo.Builder(1, componentName)
    .setPersisted(true)
    .build();
jobScheduler.schedule(jobInfo);
代码语言:txt
复制
public class YourJobService extends JobService {
    @Override
    public boolean onStartJob(JobParameters params) {
        // 在此处启动你的应用程序
        return false;
    }
    @Override
    public boolean onStopJob(JobParameters params) {
        return false;
    }
}

以上是三种解决设备重启后应用程序自动启动不起作用的方法,你可以根据具体情况选择适合的方式来解决该问题。

(本答案仅供参考,腾讯云相关产品和产品介绍链接地址因限制不能提供,请自行搜索相关内容。)

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • Android 应用Crash 自动重启的方法小结

    super.onCreate(); Thread.setDefaultUncaughtExceptionHandler(new CrashHandler()); } 然后在这个CrashHandler 想办法重启应用...Thread.UncaughtExceptionHandler { @Override public void uncaughtException(Thread t, Throwable e) { //重启...app /** * 这种方式 功能是可以达成 * 但是有问题就是如果说你的app挂了 这时候会显示系统桌面 * 然后你的app有启动起来了 * 给人的感觉不太好 */...在新进程的Activity里面,把应用在自己的进程里面的启动起来。...总结 到此这篇关于Android 应用Crash 自动重启的文章就介绍到这了,更多相关android 自动重启内容请搜索ZaLou.Cn以前的文章或继续浏览下面的相关文章希望大家以后多多支持ZaLou.Cn

    3.6K21

    EasyNVR硬件设备拔电关闭不能自动重启的原因分析

    我们在测试时,将EasyNVR注册到服务启动,拔掉硬件设备的电源,再次恢复供电,发现EasyNVR服务并没有再次启动。对此我们也进行了分析与排查。...排查步骤如下:1)首先检查是否已经注册到服务,通过执行以下命令发现,设备已经注册到服务;....检查发现无任何异常;4)拔掉电源再次测试,发现服务也正常启动,并没有发现其他bug;5)按照发现异常时的操作,重新复现测试一遍:启动服务,拔掉电源;6)此时发现服务未能启动,通过步骤 1、2 的命令检查...经过反复实验与对比操作,发现了在两次操作的过程中,唯一不同的点在于:服务启动与拔掉电源之前,这段等待的时间长短略有不同。...原来,服务启动,使用reboot重启,或使用shutdown关机,需等待reboot和shutdown执行结束,之后可随便拔掉设备的电源,不会造成服务的启动异常。

    42040

    H5+APP在设备升级android10不能启动

    h5+.jpg 基于MUI 、H5+开发的APP在安卓设备升级到Android10无法启动,点击图片没反应!! 经查得知Android10,plus获取设备信息等一些操作不在支持了。...同样的代码在原来版本的HX中可以直接真机调试运行在Android10设备上,可正常启动未发现其他异常。由于我是离线打包的,所以断定打包过程一些api无法用了。...但是官方的基座可以在老版本HX上直接运行在Android10上,推测基座版本和HX关系不大,应该是最新的。 所以我们的APP要重新打包发布了。...更新工具 HBuilderX(2.6.16.20200424) Android-SDK@2.4.6.71983_20191211 Android Studio 3.5.2 重新打包 替换新的sdk libs...Android10的更新,DCloud官方一些api不能用了直接造成已有的APP不能启动。感觉这是个挺大的bug!

    91630

    自动化-Appium-第一个Demo-原生(Java版)

    9、第一个Demo项目,Android-原生(模拟器/真机)创建完成。...// Android 停止应用程序,清除应用程序数据并在测试卸载apk // IOS 在真机设备测试卸载应用程序,在模拟器测试摧毁模拟器...// Android 停止应用程序,清除应用程序数据并在测试卸载apk // IOS 在真机设备测试卸载应用程序,在模拟器测试摧毁模拟器...// Android 停止应用程序,清除应用程序数据并在测试卸载apk // IOS 在真机设备测试卸载应用程序,在模拟器测试摧毁模拟器...// Android 停止应用程序,清除应用程序数据并在测试卸载apk // IOS 在真机设备测试卸载应用程序,在模拟器测试摧毁模拟器

    2.1K30

    自动化-Appium-第一个Demo-原生(Python版)

    开始测试运行在任何模拟运行,或设备插入 desired_caps['noReset'] = True # 执行完整的重置 # Android 停止应用程序,清除应用程序数据并在测试卸载apk # IOS...3、真机设备里没有要测试的应用程序,想在自动化测试执行的时候自动安装。...开始测试运行在任何模拟运行,或设备插入 desired_caps['noReset'] = True # 执行完整的重置 # Android 停止应用程序,清除应用程序数据并在测试卸载apk # IOS...开始测试运行在任何模拟运行,或设备插入 desired_caps['noReset'] = True # 执行完整的重置 # Android 停止应用程序,清除应用程序数据并在测试卸载apk # IOS...-s devices`得到的可使用的设备名称之一 # 在Android上,这个关键字目前不起作用 desired_caps['deviceName'] = 'test' # 连接的物理设备的唯一设备标识

    2.1K20

    自动化-Appium-​第一个Demo-混合(Python版)

    开始测试运行在任何模拟运行,或设备插入 desired_caps['noReset'] = True # 执行完整的重置 # Android 停止应用程序,清除应用程序数据并在测试卸载apk # IOS...3、真机设备里没有要测试的应用程序,想在自动化测试执行的时候自动安装。...开始测试运行在任何模拟运行,或设备插入 desired_caps['noReset'] = True # 执行完整的重置 # Android 停止应用程序,清除应用程序数据并在测试卸载apk # IOS...开始测试运行在任何模拟运行,或设备插入 desired_caps['noReset'] = True # 执行完整的重置 # Android 停止应用程序,清除应用程序数据并在测试卸载apk # IOS...-s devices`得到的可使用的设备名称之一 # 在Android上,这个关键字目前不起作用 desired_caps['deviceName'] = 'test' # 连接的物理设备的唯一设备标识

    2.6K20

    自动化-Appium-第一个Demo-混合(Java版)

    // Android 停止应用程序,清除应用程序数据并在测试卸载apk // IOS 在真机设备测试卸载应用程序,在模拟器测试摧毁模拟器...3、真机设备里没有要测试的应用程序,想在自动化测试执行的时候自动安装。...// Android 停止应用程序,清除应用程序数据并在测试卸载apk // IOS 在真机设备测试卸载应用程序,在模拟器测试摧毁模拟器...// Android 停止应用程序,清除应用程序数据并在测试卸载apk // IOS 在真机设备测试卸载应用程序,在模拟器测试摧毁模拟器...// Android 停止应用程序,清除应用程序数据并在测试卸载apk // IOS 在真机设备测试卸载应用程序,在模拟器测试摧毁模拟器

    2.5K30

    Android Oreo 常见问题 2.0 | Android 开发者 FAQ Vol.9

    希望阅读本期 FAQ,您的问题都能迎刃而解。 Q: 我什么时候能更新到 Android 8.0 Oreo ? 我的设备适配吗? ?...一旦系统更新适配于您的设备,我们会发送通知提醒您下载并安装更新。 * 但请注意,Nexus 6 及 Nexus 9 设备将不会提供 Android 8.0 更新。...Q: 为什么通知圆点功能在 Nexus 5X / 6P 和 Pixel C 设备不起作用? ?...A: 通知圆点没有提供在上述设备默认的启动器(Launcher)中的支持(即便您可以在 Setting 中看到开关通知圆点的选项)。...A: Android O 中加入的 “自动打开 Wi-Fi” 功能使得您的设备可以在追踪到已保存网络自动打开并连接。但是需注意,“自动开启 Wi-Fi” 功能目前只在 Pixel 手机上可用。

    1.9K70

    自动化-Appium-​第一个Demo-Web(Python版)

    -s devices`得到的可使用的设备名称之一 # 在Android上,这个关键字目前不起作用 desired_caps['deviceName'] = 'iPhone 8' # 在此会话之前不要重置应用程序状态...# Android 不要停止应用程序,不要清除应用程序数据,也不要卸载apk # IOS 测试不要销毁或关闭SIM卡。...开始测试运行在任何模拟运行,或设备插入 desired_caps['noReset'] = True # 执行完整的重置 # Android 停止应用程序,清除应用程序数据并在测试卸载apk # IOS...-s devices`得到的可使用的设备名称之一 # 在Android上,这个关键字目前不起作用 desired_caps['deviceName'] = 'test' # 连接的物理设备的唯一设备标识...开始测试运行在任何模拟运行,或设备插入 desired_caps['noReset'] = True # 执行完整的重置 # Android 停止应用程序,清除应用程序数据并在测试卸载apk # IOS

    2.4K10

    自动化-Appium-微信小程序(Python版)

    -s devices`得到的可使用的设备名称之一 # 在Android上,这个关键字目前不起作用 desired_caps['deviceName'] = 'honor' # 连接的物理设备的唯一设备标识...不要停止应用程序,不要清除应用程序数据,也不要卸载apk # IOS 测试不要销毁或关闭SIM卡。...开始测试运行在任何模拟运行,或设备插入 desired_caps['noReset'] = True # 执行完整的重置 # Android 停止应用程序,清除应用程序数据并在测试卸载apk # IOS...在真机设备测试卸载应用程序,在模拟器测试摧毁模拟器 desired_caps['fullReset'] = False # 设置命令超时时间,单位:秒 # 达到超时时间仍未接收到新的命令时Appium...会假设客户端退出然后自动结束会话 desired_caps['newCommandTimeout'] = 60 # 启动微信小程序,要设置这里 # 查询pid,命令行输入 adb shell dumpsys

    4.9K20

    自动化-Appium-微信公众号(Python版)

    -s devices`得到的可使用的设备名称之一 # 在Android上,这个关键字目前不起作用 desired_caps['deviceName'] = 'honor' # 连接的物理设备的唯一设备标识...不要停止应用程序,不要清除应用程序数据,也不要卸载apk # IOS 测试不要销毁或关闭SIM卡。...开始测试运行在任何模拟运行,或设备插入 desired_caps['noReset'] = True # 执行完整的重置 # Android 停止应用程序,清除应用程序数据并在测试卸载apk # IOS...在真机设备测试卸载应用程序,在模拟器测试摧毁模拟器 desired_caps['fullReset'] = False # 设置命令超时时间,单位:秒 # 达到超时时间仍未接收到新的命令时Appium...会假设客户端退出然后自动结束会话 desired_caps['newCommandTimeout'] = 60 # 启动微信公众号,要设置这里 # 查询pid,命令行输入 adb shell dumpsys

    2.6K31

    自动化-Appium-第一个Demo-Web(Java版)

    上,这个关键字目前不起作用 capabilities.setCapability("deviceName", "honor"); // 连接的物理设备的唯一设备标识...,命令行输入命令 adb devices 2、真机设备里没有要测试的Chrome应用程序,可以在执行自动化测试前先安装到设备里,安装Chrome输入安装命令 adb install -r 进行安装,或者使用手机助手进行安装...上,这个关键字目前不起作用 capabilities.setCapability("deviceName", "honor"); // 连接的物理设备的唯一设备标识...// Android 停止应用程序,清除应用程序数据并在测试卸载apk // IOS 在真机设备测试卸载应用程序,在模拟器测试摧毁模拟器...// Android 停止应用程序,清除应用程序数据并在测试卸载apk // IOS 在真机设备测试卸载应用程序,在模拟器测试摧毁模拟器

    2.2K10

    自动化-Appium-微信小程序(Java版)

    1、编写脚本 1、首先获取真机设备标识,命令行输入命令 adb devices 2、真机设备里安装微信应用程序,输入安装命令 adb install -r 进行安装,或者使用手机助手进行安装。...上,这个关键字目前不起作用 capabilities.setCapability("deviceName", "honor"); // 连接的物理设备的唯一设备标识...// Android 不要停止应用程序,不要清除应用程序数据,也不要卸载apk // IOS 测试不要销毁或关闭SIM卡。...// Android 停止应用程序,清除应用程序数据并在测试卸载apk // IOS 在真机设备测试卸载应用程序,在模拟器测试摧毁模拟器...2、执行测试脚本,脚本执行步骤: (1)启动微信应用程序 (2)点击发现 (3)向下滑动 (4)点击小程序 (5)点击京东购物 (6)打印出被测App的NATIVE_APP和WEBVIEW NATIVE_APP

    2.5K20

    开机黑屏或空白屏幕?

    重复该过程三次以触发自动修复工具。 在“选择一个选项”屏幕上,依次选择“疑难解答”>“高级选项”>“启动设置”>“重启”。 在设备重启,你将看到一列选项。...操作 4:执行干净启动 使用正常启动方式启动 Windows 时,一些应用程序和服务会自动启动,然后在后台运行。...但是,如果设备处于干净启动环境中时未出现问题,则可以按秩序打开或关闭启动应用程序或服务,然后重启设备,来确定启动应用程序或服务是否会导致该问题。...重复该过程三次以触发自动修复工具。 在“选择一个选项”屏幕上,依次选择“疑难解答”>“高级选项”>“启动设置”>“重启”。 在设备重启,你将看到一列选项。...如果设备处于干净启动环境中时未发生问题,则可以按秩序打开或关闭启动应用程序或服务,然后重启设备,来确定启动应用程序或服务是否会导致该问题。

    7.3K21

    Anbox安卓apk应用安装及使用说明和常见问题

    在主机系统上安装adb,可以安装以下应用程序: $ adb install path/to/my-app.apk 之后,您的应用程序应作为Anbox运行时的一部分安装,并可通过主机系统应用程序启动启动...5  我最喜欢的Android应用程序不起作用。我该怎么办? 由于我们提供完整的Android系统,通常所有应用程序都可以工作。...6  Anbox无法在我的设备启动。我做错了什么? 最有可能的不是你的错。Anbox仍处于早期阶段,并且在各种不同的系统中没有太多的测试覆盖率。...尽管禁用了快速限制,但Android系统仍然通过使用来自主机系统的Linux命名空间而保持独立。 9  Anbox是否需要为每个设备提供特定的Android映像?...没有.Anbox不需要为每个设备提供特定的Android映像,因为它是以独立于设备的方式构建的。

    5.2K40

    移动端测试通用覆盖点

    、卸载安装高版本; 在线升级:升级提示、取消更新/强制更新、后台更新(ios的自动更新)、跨版本升级、升级过程中异常情况的处理(取消、死机、重启、断电、内存不足、断网)、升级进度、不同网络下升级; 第三方软件支持...; 免登录:登录杀掉进程重新启动app、无网络、切换用户登录、密码更换、主动退出登录下次启动app、卸载重装、在线更新、覆盖安装、跨版本安装、; 数据更新:手动或自动刷新、从后台切换到前台时数据更新、...同一页面标签风格统一; 文案:输入框中说明文字、页面文字正确性、敏感词汇、敏感图片(设计专利、版权、隐私等); 安全测试 软件权限: 限制/允许使用手机功能接入互联网 限制/允许使用手机发送接受信息功能 限制/允许应用程序来注册自动启动应用程序...没有用户的允许, 应用程序不能预先设定自动启动 卸载是否安全, 其安装进去的文件是否全部卸载 卸载用户使用过程中产生的文件是否有提示 其修改的配置信息是否复原 卸载是否影响其他软件的功能 卸载应该移除所有的文件...当将敏感数据输入到应用程序时, 其不会被储存在设备中 备份应该加密, 恢复数据应考虑恢复过程的异常,通讯中断等, 数据恢复再使用前应该经过校验 应用程序应考虑系统或者虚拟机器产生的用户提示信息或安全警告

    1.1K41

    三星折叠屏开发者设计指南揭秘

    目的是使用与新设备匹配的备用资源自动重新加载您的应用。 当Activity重启时,恢复之前的状态很重要。...1.2 运行时系统变更 - 自行处理 如果因性能限制等因素希望在不自动重启Activity的情况下处理配置更改,您需要在应用清单manifest中增加android:configChanges属性,...更多指引:布局优化,面面俱到 3.1 最大纵横比 三星可折叠设备外屏将具有长纵横比(21:9),请确保您的应用程序支持长纵横比。 详细适配方法请参考: 屏幕最大纵横比适配指导。...image 安装,从应用列表中打开应用程序“可折叠模拟器”。 3)权限授予 ?...image “SYSTEM_ALERT_WINDOW”权限也可以在activity中授予,在应用程序启动时显示,无需使用上述命令授予。 4)仿真方法 ? image 4.

    4.1K40
    领券