Android 如何使用PreciseCallState
我正在制作一个应该能够检测通话状态的应用程序,早些时候我被建议使用Android 如何使用PreciseCallState,android,Android,我正在制作一个应该能够检测通话状态的应用程序,早些时候我被建议使用PreciseCallState,因为默认情况下,android无法准确检测通话处于什么状态,PreciseCallState位于电话分机中,该分机位于,如何让我的导入工作?,在安卓上,这在很大程度上会起作用吗?试试这个 首先,你像这样接受许可 <uses-permission android:name="android.permission.READ_PRECISE_PHONE_STATE" /> 但该权限是为特殊
PreciseCallState
,因为默认情况下,android无法准确检测通话处于什么状态,PreciseCallState
位于电话分机中,该分机位于,如何让我的导入工作?,在安卓<5或其仅有的5>上,这在很大程度上会起作用吗?试试这个
首先,你像这样接受许可
<uses-permission android:name="android.permission.READ_PRECISE_PHONE_STATE" />
但该权限是为特殊用途应用程序定义的,如拨号器、载波应用程序或ims应用程序。那么普通应用程序应该如何处理它呢 读取\u精确\u电话\u状态 公共静态最终字符串读取\精确\电话\状态 允许以只读方式访问精确的手机状态。允许读取有关特殊用途应用程序(如拨号器、运营商应用程序或ims应用程序)的电话状态的详细信息
常量值:“android.permission.READ\u precision\u PHONE\u STATE”有用,但不回答问题。如何在项目中包含库,以及什么是SDKrequired@TimCastelijns确切地说,我应该如何包含这个库,因为它似乎没有默认SDK,更像是隐藏的API。我需要下载电话扩展SDK(虽然我已经尝试过了,但它不起作用)或者下载整个SDK?不确定这是否有帮助-@androiddeveloper我面临一个关于呼叫阻塞的问题。你能帮帮我吗
<receiver android:name=".OutCallLogger">
<intent-filter>
<action android:name="android.intent.action.PRECISE_CALL_STATE" />
</intent-filter>
</receiver>
public class OutCallLogger extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
switch (intent.getIntExtra(TelephonyManager.EXTRA_FOREGROUND_CALL_STATE, -2) {
case PreciseCallState.PRECISE_CALL_STATE_IDLE:
Log.d(This.LOG_TAG, "IDLE");
break;
case PreciseCallState.PRECISE_CALL_STATE_DIALING:
Log.d(This.LOG_TAG, "DIALING");
break;
case PreciseCallState.PRECISE_CALL_STATE_ALERTING:
Log.d(This.LOG_TAG, "ALERTING");
break;
case PreciseCallState.PRECISE_CALL_STATE_ACTIVE:
Log.d(This.LOG_TAG, "ACTIVE");
break;
}
}
}