我有一个应用程序,我想通过按电源按钮或主页按钮打开手机时提取新数据。
Android API中是否有检测此方法的方法?
基本用例是:
答案 0 :(得分:1)
如果您的应用未写入锁屏,则可以使用ACTION_USER_PRESENT。在用户使锁屏消失后,它会发送一个意图。
http://developer.android.com/reference/android/content/Intent.html#ACTION_USER_PRESENT
答案 1 :(得分:1)
当Android手机完成开启(启动)时,会广泛宣传:
android.intent.action.BOOT_COMPLETED
您可以在应用中处理此意图并正确完成工作。
答案 2 :(得分:1)
当Android手机完成开启(启动)时,会广泛宣传:
试试这个 BootReceiver类
public class BootReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context aContext, Intent aIntent) {
// if (BOOT_ACTION_NAME.equals(intent.getAction())) {
// ToDo: Whatever I need at immediately after bootstrap
Toast.makeText(aContext, "This message phone is turned on!", Toast.LENGTH_LONG).show();
Log.e("..BOOT_ACTION_NAME...", "This message phone is turned on!");
// }
}}
在应用程序代码
中的 manifest.xml 中添加以下类 <receiver
android:name="com.example.testing_demo.BootReceiver"
android:enabled="true"
android:permission="android.permission.RECEIVE_BOOT_COMPLETED">
<intent-filter>
<action android:name="android.intent.action.SCREEN_ON" />
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
答案 3 :(得分:0)
嘿,你可以做的是去后台服务和广播接收器,无论你为你的应用程序小部件需要什么可行,你可以在那里处理电源按钮按键如下
@Override
public boolean onKeyDown(int keyCode, KeyEvent event)
{
if(keyCode == KeyEvent.KEYCODE_POWER)
{
//handle the code to achieve yours desired logic
}
return super.onKeyDown(keyCode, event);
}
也可以访问,因为它可以帮助您activate an application when a power button is clicked