0

私のAndroidプロジェクト(ターゲットSDKバージョン23)では、着信を拒否したいです。特にこれについて多くの質問があることを私は知っています

1 com.android.internal.telephony.ITelephony を Android アプリケーションにインポートする方法

2アンドロイドでプログラムによって呼び出しを拒否する方法

3すでに着信を検出している場合に着信を拒否する方法

最初の 1 つのリンクでは、提案された解決策はITelephony、内部インターフェイスであるため、インターフェイスでリフレクションを使用することです。ただし、このソリューションはMODIFY_PHONE_STATEシステム アプリにのみ付与できるアクセス許可を使用するため、とにかく機能しません。

2番目と3番目のリンクから、ソリューションがここITelephonyからコピーされ、それを私のソリューションの新しいパッケージに入れることを理解しています。問題は、このインターフェイスにはクラスの検索に関する多くの問題があることです(エラーはシンボルクラスを見つけることができません)、そのクラスはAndroid のプラットフォームフレームワークベースにあります。com.android.internal.telephonyandroid.telephony.RadioAccessFamilyRadioAccessFamily

この問題を解決するためのアイデアはありますか?

4

1 に答える 1

0

私は自分で答えを見つけました。興味のある他の人のために、ここそれがあります:

main フォルダーに aidl フォルダーを作成します。

aidl フォルダーにパッケージ com.android.internal.telephony を作成します。

パッケージ内の aidl ファイルを作成します。

interface ITelephony {      

    boolean endCall(); 
    void answerRingingCall();      

}

通話終了に関するコードについては、リンクの回答を参照してください。

許可を追加する必要はありません

android.permission.MODIFY_PHONE_STATE

于 2015-12-14T16:28:38.960 に答える