7

Mam następujące BroadcastReceiver, które powinny być uruchamiane po zakończeniu rozruchu. Przetestowałem to na moim urządzeniu Xiaomi (Redmi 1s), to nie działa, podczas gdy na innych urządzeniach, takich jak Samsung działa zgodnie z oczekiwaniami.Boot BroadcastReceiver nie działa na urządzeniach Xiaomi

public class DeviceBootReceiver extends BroadcastReceiver { 
    @Override 
    public void onReceive(Context context, Intent intent) { 
     if(intent.getAction().equals("android.intent.action.BOOT_COMPLETED")) { 
      Toast.makeText(context, "I am Running", Toast.LENGTH_SHORT).show(); 
     } 
    } 
} 

Mam ustawione pozwolenie w Manifest.

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

I Oto mój odbiornik transmisji:

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

Odpowiedz

18

Szukałem po internecie i znalazłem rozwiązanie, Zdecydowałem się odpowiedzieć na moje własne pytanie. Postępuj zgodnie z tym samym kodem podanym w pytaniu.

W urządzeń Xiaomi, trzeba tylko dodać swoją aplikację do Autostart listy, aby to zrobić, wykonaj następujące czynności podane poniżej:

  1. Otwarte Zabezpieczenia aplikację w telefonie.

  2. Dotknij Uprawnienia, będzie to pokazać dwie opcje: autostartu i Uprawnienia

  3. Dotknij Autostart, to będzie wam pokazać listę aplikacji z lub wyłączyć przełącznik przycisków.

  4. Włącz przełącznik swojej aplikacji, gotowe!

Teraz restart telefonu, zobaczysz komunikat Toast Używam

+2

pan mi pomógł! Nie wiedziałem o tym :) –

+0

@Dimitar: oh! Cieszę się, że ci pomogło. – zeeali

+0

Nie widzę opcji Autostart w Xiaomi hm note1 LTE – himCream