我想制作一个应用程序,当用户解锁他/她的 Android 手机时会显示一条消息。我不知道这是否可能。
如果有人有办法做到这一点,请您指出正确的方向。
我想制作一个应用程序,当用户解锁他/她的 Android 手机时会显示一条消息。我不知道这是否可能。
如果有人有办法做到这一点,请您指出正确的方向。
只有android.intent.action.USER_PRESENT
行动BroadcastReceiver
足以做你需要的
是的,您可以通过android.intent.action.USER_PRESENT
在 manifast 中注册为:
<receiver android:name=".unlockReceiver">
<intent-filter android:enabled="true" android:priority="90000" android:exported="false">
<action android:name="android.intent.action.USER_PRESENT" />
</intent-filter>
</receiver>
并在 unlockReceiver 显示消息为:
public class unlockReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
if (intent.getAction() != null) {
if( intent.getAction().equals(Intent.ACTION_USER_PRESENT)) {
Toast msg = Toast.makeText(context,"hello User !!! :)", Toast.LENGTH_LONG);
msg.show();
}
}
}
是的,你可以这样做
在你的清单文件中写下这个,
receiver android:name=".MyBroadCastReceiver" >
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<category android:name="android.intent.category.HOME" />
<action android:name="android.intent.action.SCREEN_ON" />
<action android:name="android.intent.action.USER_PRESENT" />
</intent-filter>
</receiver>
而 MyBroadCastReceiver 的实现是这样的
public class MyBroadCastReceiver extends BroadcastReceiver {
Context mContext;
@Override
public void onReceive(Context context, Intent intent) {
mContext = context;
Toast.makeText(mContext, "Phone UNLOCKED", Toast.LENGTH_LONG)
.show();
}
}