-1

我試着讓應用程序定期向服務器報告,而且我想從安裝應用程序開始啓動。我的問題是從哪裏啓動AlarmManager?從哪裏啓動AlarmManager?

+0

報告給服務器,而您的應用程序是開放的或在任何時間,即使您的應用程序尚未啓動? – Kuffs

+0

在任何時候,即使是封閉的應用程序。 – manduinca

回答

1

如果你想盡快申請開始設置鬧鐘,你可以做你的Application類。對於創建一個類,讓我們說MyApplication延伸Application類,並在其onCreate()方法,讓你的鬧鐘。只要啓動應用程序的新實例,就會調用onCreate()

public class MyApplication extends Application { 

    @Override 
    public void onCreate() { 
     //Set Alarm here 
    } 
} 

並告訴Android的運行時MyApplication是你的應用程序類,改變你的應用程序的清單文件:

<application 
     android:name="<your_package_name>.MyApplication" 
.... 
> 
+0

嗨,謝謝你的回答。 onCreate()方法在運行時執行嗎?安裝應用程序或激活應用程序之後? – manduinca

+0

第一次啓動應用程序時和/或每當您在應用程序被終止後重新啓動時,都會調用onCreate()。 –

+0

什麼時候認爲該應用程序被殺害?我想發送數據的任務,應用程序不能被殺死。 – manduinca

0

使用broadcast receiver監聽

android.intent.action。 BOOT_COMPLETED

意圖。

使用廣播接收器onReceive方法來設置你的報警。

注意,這需要

android.permission.RECEIVE_BOOT_COMPLETED

+0

嗨,感謝您的回答,但這不是解決方案。每次打開設備時都會發布。我的意圖是在應用程序安裝後發出警報。 – manduinca

+0

直到用戶第一次專門啓動您的應用程序,您的代碼才被Android系統阻止運行。您將首次在應用程序中啓動鬧鐘,但由於每次設備重新啓動時都會刪除警報,您可以在我的答案中使用該方法將其重新設置。 – Kuffs