Um eingehende SMS zu lesen, müssen Sie drei Dinge tun.
- Broadcast-Receiver
- Deklarieren Broadcast-Empfänger in einem offenkundigen
- benötigen SMS Receive Berechtigungen
Hinweis: Wenn Sie gegen 6,0 Marshmallow
Kompilieren werden, haben Sie android.permission.RECEIVE_SMS
zur Laufzeit bekommen. Runtime Permissions
Lets Startet eingehende SMS-Empfang
1) Erste Berechtigungen hinzufügen in manifest
<uses-permission android:name="android.permission.RECEIVE_SMS" />
2) Erklären Sie Broadcast-Empfänger in Manifest.
Mit dieser Erklärung wird es Sie informieren, wenn immer eine neue SMS von Gerät empfangen wird.
<receiver android:name="com.example.abc.ReciveSMS">
<intent-filter>
<action android:name="android.provider.Telephony.SMS_RECEIVED" />
</intent-filter>
</receiver>
3) Fügen Sie diesen Code in Ihre deklarierte Klasse in manifest
public class ReciveSMS extends BroadcastReceiver{
private SharedPreferences preferences;
@Override
public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
if(intent.getAction().equals("android.provider.Telephony.SMS_RECEIVED")){
Bundle bundle = intent.getExtras(); //---get the SMS message passed in---
SmsMessage[] msgs = null;
String msg_from;
if (bundle != null){
//---retrieve the SMS message received---
try{
Object[] pdus = (Object[]) bundle.get("pdus");
msgs = new SmsMessage[pdus.length];
for(int i=0; i<msgs.length; i++){
msgs[i] = SmsMessage.createFromPdu((byte[])pdus[i]);
msg_from = msgs[i].getOriginatingAddress();
String msgBody = msgs[i].getMessageBody();
}
}catch(Exception e){
// Log.d("Exception caught",e.getMessage());
}
}
}
}
}
Original Post here.
sollten Sie überprüfen [Android - Listen für eingehende SMS-Nachrichten] (http://stackoverflow.com/ Fragen/7089313/android-listen-for-incoming-SMS-Nachrichten) –
Haben Sie sogar versucht zu suchen? Es gibt buchstäblich Hunderte von Posts auf dieser Seite, die sich mit dem Umgang mit SMS in Android beschäftigen. –
Wenn der Sicherheitscode Ihre einzige Sorge ist, könnten Sie ein Trennzeichen vor und/oder nach Ihrem Sicherheitscode verwenden und die "Zeichenfolge" in der SMS mit diesem Trennzeichen aufteilen. Dies würde Ihnen Ihren Sicherheitscode geben. Wenn Sie wissen möchten, wie Sie eingehende Nachrichten abfangen können, können Sie den @ RRR-Link oder [diesen Link] (http://www.androidhive.info/2015/08/android-adding-sms-verification-like-whatsapp- Teil 2/). –