Я довольно новичок в android, и я пытался динамически регистрировать свой Broadcastreceiver, чтобы получить smss, но я просто не могу заставить его работать, вот мой код:Невозможно зарегистрировать Broadcastreceiver динамически
public class MainActivity extends AppCompatActivity {
BroadcastReceiver receiver;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
fab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
}
});
receiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
Toast.makeText(getApplicationContext(), "Hellllo", Toast.LENGTH_SHORT).show();
}
};
IntentFilter filter = new IntentFilter("android.provider.Telephony.SMS_RECEIVED");
registerReceiver(receiver,filter);
}
«здравствуйте» Toast обыкновения всплывало поэтому я предполагаю, приемник не был зарегистрирован
Я поставил это разрешение в моем манифесте:
<uses-permission android:name="android.permission.RECEIVE_SMS" />
<uses-permission android:name="android.permission.READ_SMS" />
<uses-permission android:name="android.permission.SEND_SMS"></uses-permission>
Что я упускаю ?
Является ли ваша «деятельность» на переднем плане, когда вы получаете SMS? Являются ли ваши разрешения за пределами тегов ''? Какова ваша 'targetSdkVersion', и какую версию Android вы тестируете? –
Деятельность находится на переднем плане, когда я получаю SMS. Разрешения находятся за пределами тегов. minSdkVersion 16. targetSdkVersion 23. Тестирование на Android 4.2.2 API 17. –
javaLovah
У вас есть другое приложение для SMS, которое может перехватывать трансляцию? Как Hangouts или GoSMS? –