sip/xmpp(セッション開始プロトコル)を使用してテキストメッセージを送信したいAndroidでアプリケーションを開発しています.誰でもそのコードと、無料のsipプロバイダーでの開発とテストに関するガイドラインを教えてください.
1 に答える
再読した更新
申し訳ありませんが、質問がテキストメッセージのみに関連していることに気づきませんでした。SIP 自体はテキスト メッセージングをサポートしていません。SIMPLE または MSRP 拡張機能が有効になっています。満足して作業できるスタックを見つける必要があります。これはDoubangoとそのデモ製品IMSDroidの一例ですが、他の多くのオプションについては Google の「Android MSRP」を参照してください。私はまだ XMPP について何も知りませんが、このスレッドをチェックして、ライブラリと用途の優れたリストを確認してください。
更新終了
これまでに何を試しましたか?質問の SIP (音声) 部分については、Android Developers サイトのドキュメントに必要な情報がすべて記載されています。無料の SIP プロバイダーであるGetonsipを参照してください。
Android デベロッパー サイトから大幅に抜粋したコード サンプルの削減。
基本的に、SIP ライブラリは 2.3 まで追加されなかったため、minSDK が 9 に設定されていることを確認する必要があります。サービスをマニフェストに追加します。
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.USE_SIP" />
uses-feature voip
アプリが動作しないデバイスにアプリをインストールしないようにする場合は、必要に応じてディレクティブを追加します。
<uses-feature android:name="android.hardware.sip.voip" />
SipManager を作成します。
android.net.sip.SipManager manager = SipManager.newInstance(this);
プロバイダー経由で電話をかけたり受けたりするためのプロファイルを作成します。
android.net.sip.SipProfile.Builder builder = new SipProfile.Builder(username, domain);
builder.setPassword(password);
android.net.sip.SipProfile sipProfile = builder.build();
電話をかけることだけが重要な場合:
manager.open(profile);
電話をかけるには、リスナーと連携します。
SipAudioCall.Listener listener = new SipAudioCall.Listener() {
@Override
public void onCallEstablished(SipAudioCall call) {
call.startAudio();
call.setSpeakerMode(true);
call.toggleMute();
...
}
@Override
public void onCallEnded(SipAudioCall call) {
// Do something.
}
};
これで、ピアの SIP アドレスを持っている限り、以下を使用できます。
SipProfile friendProfile = ...;
manager.makeAudioCall(sipProfile.getUriString(), friendAddress, listener, 30);
これで始められるはずです。残念ながら、私は XMPP の経験がありません。