0

私のアプリケーションは、通話アクティビティを制御する必要があります。私は Itelephony aidl を使用していましたが、実際のデバイスでは機能していません。多くのサイトを検索しましたが、それらはすべて ITelephony aidl を使用しています。私の質問は、すべてのリリースと互換性のあるプログラムで呼び出しを終了する方法です。次のメソッド execute end call のオブジェクトを使用しています。

protected Object getITelephony(final Context context)
        throws SecurityException, NoSuchMethodException,
        IllegalArgumentException, InvocationTargetException,
        IllegalAccessException
    {
        final TelephonyManager tm = (TelephonyManager)
                context.getSystemService(Context.TELEPHONY_SERVICE);
        final Method getITelephony
                = tm.getClass().getDeclaredMethod("getITelephony");
        if (!getITelephony.isAccessible()) {
            getITelephony.setAccessible(true);
        }
        return getITelephony.invoke(tm);

    }
4

1 に答える 1

0

"getITelephony" へのアクセスを取得するためのリフレクションの使用は、Android 2.3 以降では機能しません。

参照:

http://hive-mind.org/android-call-blocking

2.3+ で通話をプログラムで終了するにはどうすればよいですか?

ITelephony は API レベル 2.3 より上では機能しないため、このリンクが役立つ場合があります。

于 2013-04-22T10:18:06.953 に答える