[英]How to start an Application at boot up in Android?
我正在嘗試在Titanium中制作一個在啟動時啟動的應用程序,即在移動設備啟動時啟動。 我已經看到了在幾個地方寫的代碼,它們聲明要輸入到andsoid清單文件中,並且一些代碼例如
@Override
public void onReceive(Context context, Intent intent) {
Intent myIntent = new Intent(context, YourActivity.class);
context.startActivity(myIntent);
}
但是我無法弄清楚該代碼放在哪里。 在哪個文件中 在哪里?
這2個答案將滿足您的需求:
在某些系統廣播后啟動BroadcastReceiver: https : //stackoverflow.com/a/7877466/988434
在啟動時啟動BroadcastReceiver: https : //stackoverflow.com/a/8544151/988434
在BroadcastReceiver中,您將實現所需的任何服務/活動。
在上面的兩個答案的問題中有一個示例。
告訴我,如果您在閱讀那些==后有任何未解決的問題。
您必須聽BOOT_COMPLETED意向過濾器。 您剛剛引用的代碼片段來自BroadcastReceiver ,它將在設備啟動時啟動。
此類必須從BroadcastReceiver
擴展:
public class BootReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
...
}
}
然后,您必須通過執行以下操作在該清單文件中注冊該接收者:
<receiver
android:enabled="true"
android:name="your_package.BootReceiverClassName"
android:permission="android.permission.RECEIVE_BOOT_COMPLETED">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</receiver>
您還需要以下權限:
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"></uses-permission>
順便說一句,您必須確保該應用程序未安裝在SD卡上,否則它將無法正常工作(但可能有解決方法 )。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.