我有一個應用程序,我希望通過按電源按鈕或主頁按鈕打開手機時提取新數據。檢測設備何時開機
Android API中是否存在檢測此方法的方法?
基本用途的情況下將是:
- 用戶接通設備
- 應用插件檢測電話被接通時,生成新的數據顯示在窗口小部件。
我有一個應用程序,我希望通過按電源按鈕或主頁按鈕打開手機時提取新數據。檢測設備何時開機
Android API中是否存在檢測此方法的方法?
基本用途的情況下將是:
嘿,你所能做的就是去後臺服務和廣播接收器,無論你是可行的爲你的應用程序插件需要,在那裏你可以處理的電源按鈕的按鍵如下
@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
如果您的應用程序未寫入鎖屏,則可以使用ACTION_USER_PRESENT。它在用戶使鎖屏消失後發送一個意圖。
http://developer.android.com/reference/android/content/Intent.html#ACTION_USER_PRESENT
當Android手機完成開啓(引導),意圖是broadcated:
android.intent.action.BOOT_COMPLETED
您可以處理此意圖在您的應用程序,並適當地做工作。
在完成Android手機打開(引導),意圖是broadcated:
試試這個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>
答案更新希望它會幫助你,請看! –