私はそれを受け取ったときにsqliteデータベースにSMSを保存する必要があります。現時点ではsms(160文字)で正常に動作しますが、マルチパートsmsを受け取った場合、smsは約155文字で切り捨てられます。マルチパートSMSのBroadcastReceiver
これは私のコードです:
SmsBR.java
public class SmsBR extends BroadcastReceiver {
private DBManager dbm;
@Override
public void onReceive(Context context, Intent intent) {
Bundle bundle = intent.getExtras();
if (bundle != null) {
Object[] pdus = (Object[])bundle.get("pdus");
final SmsMessage[] messages = new SmsMessage[pdus.length];
for (int i = 0; i < pdus.length; i++) {
messages[i] = SmsMessage.createFromPdu((byte[])pdus[i]);
}
if (messages.length > 0) {
dbm=DBManager.getDBM(null);
dbm.insertSMS(messages[0]);
}}}}
DBManagerのは、私がリード/ライト動作をし、私はそれはとの問題がないことを確信して簡素化するために書いたシングルトンクラスであります長いテキスト!
ありがとうございました! :)問題は私が 'messages [0]'だけを保存したことでした! – supergiox