10

Po to mój kod:telefony redmi nie pytając uprawnienia SMS i stąd nie czyta sms

<!-- Data SMS Receiver --> 
    <receiver android:name=".otp.OTPReceiver" android:enabled="true" android:exported="true" > 
     <intent-filter> 
      <action android:name="android.intent.action.DATA_SMS_RECEIVED" /> 


      <data android:scheme="sms" /> 
      <data android:port="9027" /> 
     </intent-filter> 
    </receiver> 

otp.OTPReceiver jest związany BroadcastReceiver ta działa we wszystkich innych telefonów z wyjątkiem urządzeń redmi. W telefonach Redmi musisz ręcznie włączyć autostart & innych uprawnień w aplikacji Uprawnienia dostępnej pod numerem (Ta aplikacja obsługuje uprawnienia w telefonach Redmi). Widzę Facebook, WhatsApp itp. Po zainstalowaniu z prośbą o uprawnienia. Chciałbym wiedzieć, jak można to zrobić.

Widziałem pytania takie jak this & this, które zadają to samo, ale oba są bez odpowiedzi. Próbowałem dodać android:enabled="true", android:exported="true" do fragmentu xml odbiornika, jak wspomniano w here. Ale żaden z nich nie działa.

Edytuj: Używam data sms (znany również jako port sms). Sprawdziłem również z normalnymi SMS-ami i problem istnieje również na telefonach Redmi

+0

jaki jest twój targetSdk? – Nisarg

+0

targetSdkVersion 24 – ranjjose

+0

Zakładam, że sprawdziłeś uprawnienia środowiska wykonawczego, jeśli istnieją !! – Nisarg

Odpowiedz

2

Po długim czasie próbowania, uzyskałem uprawnienie MI SMS (za pośrednictwem dostawcy SMS-ów). Dodaj tę metodę (metodę dostawcy treści) do swojej aktywności lub fragmentu. będziesz mógł uzyskać pozwolenie.

private void displaySmsLog() { 
    Uri allMessages = Uri.parse("content://sms/"); 
    //Cursor cursor = managedQuery(allMessages, null, null, null, null); Both are same 
    Cursor cursor = this.getContentResolver().query(allMessages, null, 
      null, null, null); 

    while (cursor.moveToNext()) { 
     for (int i = 0; i < cursor.getColumnCount(); i++) { 
      Log.d(cursor.getColumnName(i) + "", cursor.getString(i) + ""); 
     } 
     Log.d("One row finished", 
       "**************************************************"); 
    } 

} 

Spróbuj, zadziałało dla mnie.

+0

Dzięki, spróbuję tego jak najszybciej !! – ranjjose

+0

Hej, proszę przekazać informacje zwrotne z pracy ..... Praca nad MI 4i ... Aby przetestować i podjąć pewne środki ostrożności dla innego telefonu MI –

+0

Zaktualizuj listę urządzeń proszę ...... to będzie dla nas pomocne –