2012-06-25 38 views
0

我想創建服務(?),它將始終在後臺運行,並在系統啓動時啓動。另外,我希望它檢測到雙主按鈕按下,然後啓動指定的活動。可能嗎?背景中的主頁按鈕監聽器

+0

出於安全原因(Android的衆神不希望開發人員創建用戶無法退出的應用程序),您無法捕捉主頁按鈕事件。 – overbet13

回答

2

當系統啓動時,你可以這樣做:

public class PhoneStateReceiver extends BroadcastReceiver{ 

    @Override 
    public void onReceive(final Context context, Intent intent) { 

     if(intent.getAction().equals(Intent.ACTION_BOOT_COMPLETED)){ 
      Intent launch = new Intent(context, ServiceToLaunch.class); 
      launch.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
      context.startService(launch); 
     } 
    } 
} 

在您的清單補充一點:

<receiver android:name=".receiver.PhoneStateReceiver"> 
    <intent-filter> 
     <action android:name="android.intent.action.BOOT_COMPLETED" /> 
    </intent-filter> 
</receiver> 

添加權限:

<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> 

2.沒有可用的主頁鍵事件。

+0

好的,謝謝你的回覆。因此,如果我無法檢測到主屏幕按鈕按下,是否可以檢測到,當用戶將手指從屏幕底部滑動到屏幕頂部時? –