0

電話をかけるときに、データを (1 つの余分な数字の形式で) 着信側に送信したいと考えています。当然、両方のユーザーが私のアプリをインストールする必要があります。

例: Person Aに電話をかけるとPerson B、アプリは発信通話をキャンセルし、着信番号に " *1" (例) を追加して、通話を再開します。の電話の私のアプリはPerson B着信をリッスンし、着信番号から余分な数字を抽出します。

このようなことは可能ですか?は着信番号ではなく、発信( ) の番号であるpublic void onCallStateChanged(int state, String incomingNumber) {}ため、これには使用できないことに注意してください。通話がピックアップされる前に余分な数字を抽出できるようにする必要があるため、DTMF ダイヤル コードを使用することはできません。incomingNumberPerson Apw

発信者側に「インターセプトとリダイヤル」部分があり、アプリの「着信を聞く」部分が機能していますが、A) 数字を送信する方法がわかりません。それは(キャリアによってドロップされるのではなく)着信側の電話に到着し、B)受信者の電話で着信番号を取得します。

ありがとう!

4

1 に答える 1

0

このようにデータを送信することはできないと思いますが、よくわかりません。その理由は、キャリアがこれらの番号 (コード) で通話を転送するためです。余分な番号 (または余分な 1 桁) を送信すると、番号が間違っている (または間違っている) ことを意味し、おそらく通話がキャンセルされます。あなたがやりたいことは、ネットワークを操作する方法のように思えますが、それは不可能だと思います. キャリアのデータセンターは、おそらくこれについて少なくとも何らかのチェックを行っています.

これらのシンボル「*1」を送信する必要がある理由はわかりませんが、これはハードコードされているため、アプリケーションにも簡単にハードコードできます。電話番号を使って発信者を特定できると思いますが、このように動的に情報を転送する必要がある場合、それは不可能なはずです。

アプリがインストールされている他のデバイスと直接通信してみてください。これについて興味深いスレッドがありますが、この種の通信はマルチプレイヤー ゲームに使用され、デバイスが通信する方法を提供します。

于 2013-02-08T15:31:40.037 に答える