iPhoneでプログラム的にSMSを送信するにはどうすればいいですか?質問する

iPhoneでプログラム的にSMSを送信するにはどうすればいいですか?質問する

公式 SDK / Cocoa Touch を使用して、からプログラムでSMSを送信することが可能かどうか、またその方法を知っている人はいますか?iPhone

ベストアンサー1

制限

iPhone のプログラム内で SMS を送信できれば、バックグラウンドでスパムを送信するゲームを作成できるようになります。友達から「この新しいゲームを試してみて! 私のボックス ユーザーは大喜び。あなたのボックス ユーザーの皆さんも大喜びするはずです! roxxersboxxers.com!!!! 今すぐサインアップすると、3,200 RB ポイントがもらえます!!」というスパムが届くのが待ち遠しいでしょう。

Apple は、自動化された(または部分的に自動化された)SMS およびダイヤル操作に制限を設けています。(ゲームが特定の時間に 911 にダイヤルするとしたらどうなるか想像してみてください)

完全な自動化が必要な場合は、オンライン SMS 送信サービスを使用する中間サーバーをインターネット上にセットアップし、そのルートで SMS を送信するのが最善策です。(つまり、iPhone 上のプログラムが UDP パケットをサーバーに送信し、サーバーが実際の SMS を送信します)

iOS 4 アップデート

ただし、iOS 4 では、viewControllerアプリケーションにインポートできる が提供されるようになりました。SMS フィールドに事前入力すると、ユーザーはコントローラー内で SMS の送信を開始できます。「SMS:...」 URL 形式を使用する場合とは異なり、これにより、アプリケーションを開いたままにして、宛先フィールド本文フィールドの両方に入力することができます。複数の受信者を指定することもできます。

これにより、ユーザーが明示的に認識していない限り、アプリケーションが自動 SMS を送信することがなくなります。iPhone 自体から完全に自動 SMS を送信することはまだできず、ユーザーの操作が必要になります。ただし、これにより少なくともすべてを入力でき、アプリケーションを閉じる必要がなくなります。

MFメッセージコンポーズビューコントローラークラスは十分に文書化されており、チュートリアル実装がいかに簡単かを示します。

iOS 5 アップデート

iOS 5 には iPod touch および iPad デバイス用のメッセージング機能が含まれているため、私自身はまだテストしていませんが、すべての iOS デバイスが MFMessageComposeViewController 経由で SMS を送信できるようになる可能性があります。この場合、Apple はセルラー モデムを持たないデバイスに代わってメッセージを送信する SMS サーバーを運用していることになります。

iOS 6 アップデート

このクラスには変更はありません。

iOS 7 アップデート

使用しているメッセージ メディアが件名や添付ファイルを受け入れるかどうか、また受け入れる添付ファイルの種類を確認できるようになりました。 メディアが許可している場合は、件名を編集したり、メッセージに添付ファイルを追加したりできます。

iOS 8 アップデート

このクラスには変更はありません。

iOS 9 アップデート

このクラスには変更はありません。

iOS 10 アップデート

このクラスには変更はありません。

iOS 11 アップデート

このクラスには大きな変更はありません

このクラスの制限

これは iOS 4 のない携帯電話では動作せず、おそらく iOS 5 を除いて iPod touch や iPad でも動作しないことに注意してください。このコントローラーを使用する前にデバイスと iOS の制限を検出するか、最近アップグレードされた 3G、3GS、および 4 iPhone にアプリが制限されるリスクを負う必要があります。

ただし、SMS を送信する中間サーバーがあれば、インターネットにアクセスできるすべての iOS デバイスから SMS を送信できるため、多くのアプリケーションでは中間サーバーの方がより適切なソリューションとなる可能性があります。または、両方を使用し、デバイスがサポートしていない場合にのみオンライン SMS サービスにフォールバックします。

おすすめ記事