昨天碰到了一个奇怪的问题,就是无法实现开机启动。这原本是一个很简单的问题,反复查代码也没查出是哪的问题。
首先先在AndroidManifest.xml里注册一个receiver
<receiver android:name="com.kok.broadcastreceiver.BootBroadcastReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
然后加入接收开机广播的权限
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"></uses-permission>
接着就是receiver的类
public class BootBroadcastReceiver extends BroadcastReceiver {
static final String ACTION = "android.intent.action.BOOT_COMPLETED";
@Override
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals(ACTION)){
if( PreferenceManager.getDefaultSharedPreferences(context).
getBoolean("autorun", false)){
Intent service=new Intent(context,SmsListener.class);
context.startService(service);
}
}
}
}
这样就可以啦。但是还是启动不了。查了半天才发现,原来我的手机默认把程序安装在存储卡上了,因为系统开机后发出了启动完毕的广播,但是这个时候存储卡没有加载上,自然就无法开机启动了。所以需要开机启动的程序一定要装在手机内存里,当然如果你的android使用的是第三方的app2sd的话就没事了 比如说app2sd+或者app2ext。
恶心的问题。。。。折磨我好几个小时。。。标记一下。。。。
分享到:
相关推荐
在Arm-Linux平台上进行嵌入式开发时,经常会遇到需要自定义开机启动程序的需求。例如,当开发者希望在启动时直接运行自己开发的Qt界面程序,而不是先启动系统桌面环境再手动打开程序。这样做不仅可以提高启动效率,...
- 异常处理机制也是必不可少的,确保服务在遇到问题时能够优雅地处理并尝试恢复。 8. **打包与部署**: - 使用Maven或Gradle等构建工具,将整个工程打包成可执行的JAR或WAR文件。 - 部署时,确保目标机器上有...
6. 要解决开机自动启动的问题,你需要将“启动类型”改为“手动”。这意味着MATLAB Server将在需要时由用户手动启动,而不是在开机时自动启动。确认更改后,点击“应用”和“确定”。 7. 完成上述步骤后,重启电脑...
- **权限问题**:如果遇到权限问题,可能需要以管理员身份运行命令或修改注册表。 - **批处理高级操作**:批处理文件可以包含更复杂的逻辑,如条件判断、循环等,以满足不同需求。 - **系统兼容性**:此方法适用...
在WinForm应用中,可以将此功能整合到一个按钮的点击事件处理函数中,或者在安装程序中执行,以实现开机启动。例如: ```csharp private void btnSetStartup_Click(object sender, EventArgs e) { string appName ...
本教程将介绍如何通过编写批处理脚本并利用本地组策略编辑器来实现开机启动exe程序的配置。这种方法适用于通过使用sc create命令创建服务方式无法正常启动exe程序的情况。 首先,我们需要编写一个批处理脚本,用于...
### CentOS 设置 Tomcat 开机自启动 ...- 如果在操作过程中遇到问题,可以参考官方文档或寻求社区支持。 通过上述步骤,您可以在CentOS系统上轻松地为Tomcat设置开机自启动功能,从而提高系统的可靠性和稳定性。
当用户遇到 ESET NOD32 Antivirus 无法正常开机启动的情况时,最常见的现象之一是在任务管理器中找不到 egui.exe 进程。即使用户手动通过开始菜单启动程序,任务管理器中依旧不会出现 egui.exe 进程。这一问题通常是...
- **取消开机启动**:通过调用`run.DeleteValue("kaixin")`方法,删除了`Run`子键下的“kaixin”键值,从而取消了开机启动。 ##### 2. 异常处理 为了提高程序的健壮性,代码中加入了异常处理机制。当执行注册表...
MAC 开机启动项设置是苹果电脑用户常常遇到的问题,特别是当电脑开机速度慢的时候,优化开机启动项是非常必要的。相比 Windows 系统,MAC 开机启动项设置方法略有不同,但并不复杂。下面我们将详细介绍 MAC 开机启动...
下面将详细介绍如何在Android应用中实现开机自启动以及可能遇到的问题。 1. **广播接收器(BroadcastReceiver)** 开机自启动的关键在于创建一个`BroadcastReceiver`,它会监听到系统的`ACTION_BOOT_COMPLETED`...
首先,我们需要了解Windows注册表中与开机启动相关的键值。在`HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run`和`HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run`这两个位置...
3. **找到“开机启动”选项**:在设置中心的左侧导航栏中找到“常规设置”或类似的选项,并在右侧找到与“开机启动”相关的设置项。 4. **关闭开机启动功能**:取消勾选“开机启动暴风影音”或类似的功能选项。 5. *...
当遇到"adb调试时Android端的设备拒绝连接"的问题,通常可能由于adb服务未正常启动或者设备未正确配置导致。本文将详细探讨如何实现"adb开机自启"以及解决设备拒绝连接的问题。 首先,了解ADB的运行机制。ADB由三...
标题中的“计算开机启动时间 启动速度 C# 开机用时”指的是使用C#编程语言来开发一个程序,该程序能够测量计算机的开机启动时间和系统启动速度。在Windows操作系统中,了解这些信息有助于分析系统性能,找出可能导致...
1. **权限问题**:在执行上述步骤时,如果遇到权限不足的问题,可以尝试以管理员身份运行命令提示符或PowerShell。 2. **配置文件**:确保`redis.windows.conf`配置文件中的设置符合实际需求,特别是关于内存使用、...
在Windows 10系统中,将Tomcat设置为开机启动是一项关键步骤,特别是在进行项目部署时,确保服务器在开机后自动运行是必要的。下面将详细解释如何进行...如果遇到问题,例如启动失败,检查日志文件以获取故障排除信息。
2. **权限问题**:如果遇到权限不足的问题,尝试以管理员身份运行命令提示符。 3. **服务名**:在安装服务时,可以指定服务名称,例如通过 `service.bat install tomcat8` 来自定义服务名为 `tomcat8`。 4. **日志...
本文将深入探讨如何在Android中实现这一目标,并针对小米手机可能遇到的问题进行讨论。 首先,我们需要创建一个BroadcastReceiver来监听系统启动的广播事件。这个广播事件的类型是ACTION_BOOT_COMPLETED,它表示...
如果在设置开机启动过程中遇到问题,如服务无法启动或启动后立即停止,应检查Tomcat的日志文件和Windows事件查看器中的服务日志,寻找错误信息。此外,检查Tomcat的配置文件,如`server.xml`和`context.xml`,确保...