小米2s手機下AlarmManager應用

來源:互聯網
上載者:User

最近項目需要利用AlarmManager在cpu休眠的情況下喚醒百度定位,調用範例程式碼如下:

--周期性執行定位廣播

public static void sendLocationBroadcastRepeat(Context ctx) {
        Intent intent = new Intent(ctx, LocationBroadcast.class);
        PendingIntent pendingIntent = PendingIntent.getBroadcast(ctx, 0,
                intent, 0);

        // 開始時間
        long firstime = SystemClock.elapsedRealtime();

        AlarmManager am = (AlarmManager) ctx
                .getSystemService(Context.ALARM_SERVICE);
        am.setRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP, firstime,
                10 * 1000, pendingIntent);
        
        Log.i(TAG, "sendUpdateBroadcastRepeat is start");
    }

備忘:設定10秒迴圈調用廣播,在啟動並執行過程中,發現並沒有按照設定的時間調用。開始以為是代碼問題,經過排查代碼並無錯誤。在魅族2手機下測試,運行正常(按照設定運行)。為什麼在小米手機下沒有按照設定運行了?

反覆測試發現,小米手機會以5分鐘的間隔迴圈調用廣播:如

問題跟蹤:

  1. 電話致電小米支援人員,對方回覆重刷小米最新版MIUI(開發版),重刷結果還是老樣子;
  2. 重刷最新穩定版,結果還是一樣;
  3. 。。。。。。

有知道問題原因的博友們麻煩告知一下。謝謝!

 問題解決:

  1. 將firstime的值設定為大於等於5分鐘即可(目前小米MIUI都是這個情況,希望小米可以改進這個問題)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.