簡體   English   中英

Android警報管理器無法在Samsung Galaxy手機上使用

[英]Android alarm manager not working on Samsung Galaxy phone

我創建了一個應用程序,該應用程序輪詢服務器以獲取必須發送給我們用戶的SMS。 對於輪詢功能,我已使用警報管理器每5分鍾觸發一次以輪詢服務器

AlarmManager alarm = (AlarmManager) getSystemService(Context.ALARM_SERVICE); 
        Intent pintent = new Intent(this, SMSSender.class);
        PendingIntent pIntent = PendingIntent.getBroadcast(this,0,pintent, 0);
        if(checkbox.isChecked()) {
            long interval = 60*Integer.valueOf(PreferenceManager.getDefaultSharedPreferences(this).getString("pref_poll_interval", "5000"));//5mins;//5mins
            long firstPoll = SystemClock.elapsedRealtime() + 60*Integer.valueOf(PreferenceManager.getDefaultSharedPreferences(this).getString("pref_poll_interval", "5000"));
            alarm.setInexactRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP, firstPoll, interval, pIntent);
            Log.d("SMS_GATEWAY", "alarm manager turned on "+interval);
        }else {
            alarm.cancel(pIntent);
            Log.d("SMS_GATEWAY", "alarm manager turned off");
        }

我已針對2.2版本在模擬器上測試了該應用程序,並且一切正常,現在測試了SMS最終淘汰的情況。我已將該應用程序安裝在三星Galaxy S手機上。

一旦安裝了該應用程序並選擇了輪詢服務器的首選項,則實際上什么也沒有發生。

可能是什么問題呢

考慮針對您的問題使用BuzzBox SDK庫。

http://hub.buzzbox.com/android-sdk/

您可以使用cron字符串安排任務:

SchedulerManager.getInstance()
    .saveTask(this, "*/5 8-19 * * 1,2,3,4,5", YourTask.class);

我有Galaxy S,並且在一些應用程序中使用了BuzzBox SDK。 您可以檢查集成在SDK中的調度程序日志,以驗證您的Task是否正常運行。

AlarmManager在深度睡眠的三星手機上無法正常工作:( BuzzBox SDK使用AlarmManager,因此存在相同的問題(我在Galaxy 5500上進行了測試)。例如http://www.netzpurist.de/2010/11/samsung-gt -i5500-with-android-2-1-update1-alalmanager-不適合/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM