2014-03-06 338 views
-1

我已經做了一個apk,允許用戶編輯內核的配置,並在重啓後使這些更改變得粘滯我已經添加了應用程序複製到init.d文件夾中的腳本。現在問題是腳本非常多,我正在考慮在啓動時使用用戶的首選項來啓動一個啓動服務,只需在啓動時執行命令就可以避免腳本並節省空間。啓動時執行操作

有人可以向我解釋我必須做什麼嗎?

+0

可能重複[如何獲得在init.d下的腳本在Android中啓動時執行?](http://stackoverflow.com/questions/5464713/how-to-get-a-script-in-init-d-to-execute-on-boot-in-android) – 323go

回答

1

您需要創建一個將偵聽「android.intent.action.BOOT_COMPLETED」廣播意圖的服務。請記住,從Android 3.0開始,您至少需要運行一次應用程序才能捕獲此事件。

例如,您可能會閱讀this文章以瞭解您需要執行的操作。

+0

更多,看看這個問題的答案:http://stackoverflow.com/questio NS/5051687 /廣播接收器,不接收引導完成的 – Yury

0

寫入BroadcastReceiver將在設備啓動時被調用。

public class BootCompleteReceiver extends BroadcastReceiver { 
    @Override 
    public void onReceive(Context context, Intent intent) { 
    // TODO Auto-generated method stub 
    if (intent.getAction().equals("android.intent.action.BOOT_COMPLETED")) { 
     //do your stuffs here 

    } 
    } 
} 

註冊廣播接收器中的manifest.xml:

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

添加必需的許可權的manifest.xml:

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