11

Android 4.4 Kitkatでデフォルトの SMS アプリを使用せずに SMS を送信できますか?

つまり、SMS プロバイダーへの書き込み機能がなくても SMS を送信できますか?

Android 4.4 Kitkat でそれについて混乱しました。

デフォルト以外の SMS アプリを使用して SMS を送信できるかどうか疑問に思います。

4

2 に答える 2

11

アプリがデフォルトの SMS アプリでなくても、SMS を送信できます。

ただし、SMS プロバイダーを使用することはできません。

これが新しいバージョンの要点です。どのアプリが特別な SMS 操作を使用できるかをユーザーに明確にし、そのためのデフォルト アプリを 1 つだけ持つようにします。

このテキストを見てください(Android開発者ブログから取得):

デフォルトの SMS アプリとして動作させたくないがメッセージを送信したい一部のアプリを考慮して、SEND_SMS 権限を持つアプリは、SmsManager を使用して SMS メッセージを送信できます。アプリが Android 4.4 の既定の SMS アプリとして選択されていない場合にのみ、システムは送信された SMS メッセージを SMS プロバイダーに自動的に書き込みます (既定の SMS アプリは常に、送信されたメッセージを SMS プロバイダーに書き込む役割を果たします)。

要するに、SMS の送受信だけが必要な場合でも、それは可能です。

ただし、一部の操作では、アプリを既定の SMS アプリとして使用する必要があります。

于 2013-11-03T09:50:58.077 に答える
4

このコードを試すことができます:

PendingIntent sentPI = PendingIntent.getBroadcast(context, 0, new Intent(SENT), 0);

PendingIntent deliveredPI = PendingIntent.getBroadcast(context, 0, new Intent(DELIVERED), 0);

android.telephony.SmsManager.getDefault().sendTextMessage(phoneNumber, null, message, sentPI, deliveredPI);

そしてマニフェストで:

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

送信番号が 4、5、6 桁でない場合、ユーザーからの確認は必要ありません。

于 2016-02-26T16:31:14.107 に答える