我一直在为HTC Desire HD(Android 2.2)上的客户端开发一个Android应用程序该应用程序利用BOOT_COMPLETED操作自动启动手机上的应用程序启动。这一切都适用于HTC。
然而,客户已经说过,他想申请运行的手机是阿尔卡特onetouch | 983(Android 2.3.7)。
我已在此手机上安装了应用程序,但是当我重新启动设备时,应用程序将无法启动。
在Alcatel上调试时,我可以使用adb shell触发BOOT_COMPLETED操作,并且接收器类可以识别该操作并触发相应的代码。但是手机启动时它永远不会闪光。
我的XML清单
<receiver android:name=".FloReceiver"
android:enabled="true" >
<intent-filter android:priority="999" >
<!-- higher priority than native messaging app -->
<action android:name="android.intent.action.USER_PRESENT" />
<action android:name="android.provider.Telephony.SMS_RECEIVED" />
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
我的接收者类
public class FloReceiver extends BroadcastReceiver
{
public static final String SMS_RECEIVED ="android.provider.Telephony.SMS_RECEIVED";
public static final String BOOT_COMPLETE = "android.intent.action.BOOT_COMPLETED";
@Override
public void onReceive(Context context, Intent intent)
{
if (BOOT_COMPLETE.equals(intent.getAction()))
{
Activity_PinEntry.ShowScreenLock(context);
context.startService(new Intent(context, ReceiverService.class));
}
}
}
任何建议/帮助都会受到赞赏,我真的在这里摸不着头脑。
提前谢谢,亚当。
答案 0 :(得分:0)
我遇到了同样的问题。我通过将应用程序转移到电话而不是SD存储卡来解决它。即使您将安装目录定义为电话,阿尔卡特也始终在SD卡上安装应用程序。