26

我们收到了来自 playStore 的政策通知:

您的应用清单请求呼叫日志权限组(例如 READ_CALL_LOG、WRITE_CALL_LOG、PROCESS_OUTGOING_CALLS)
它必须主动注册为设备上的默认电话或助理处理程序。

我无法理解设备上的助手处理程序。欢迎任何意见或建议。

android应用程序满足要求的最低要求是什么。

4

4 回答 4

4

检查文档: https ://developer.android.com/reference/android/telecom/TelecomManager#ACTION_CHANGE_DEFAULT_DIALER

示例代码:

Intent intent = new Intent(TelecomManager.ACTION_CHANGE_DEFAULT_DIALER);
intent.putExtra(TelecomManager.EXTRA_CHANGE_DEFAULT_DIALER_PACKAGE_NAME, getActivity().getPackageName());
startActivity(intent);
于 2019-01-01T14:00:27.510 回答
1

除了 marmor 所说的更新的 android 10 Q 文档之外:-

自 Q 起不再支持此功能,请改用 RoleManager.createRequestRoleIntent(String)with RoleManager.ROLE_DIALER

当我按照 freezo9 回答有关清单文件中的意图过滤器时,代码实际上有效:- https://stackoverflow.com/a/55716209/7552894

添加这些: -

<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<action android:name="android.intent.action.DIAL"/>

<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>

<data android:scheme="tel"/>
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.DIAL"/>

<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
于 2019-12-21T16:17:34.360 回答
0

顺便说一句,如果您的应用程序不是电话处理程序,但您仍然需要它们才能正常工作,您可以尝试获得豁免(请参阅文章的最后一段): https: //support.google.com/googleplay/ android-developer/answer/9047303?hl=en 所以您的应用程序不会是电话处理程序,但仍然可以获得这些权限。

于 2018-10-09T12:30:37.127 回答
0

您不能以编程方式将其设为默认值。重点是用户可以选择默认设置,这样他们就可以选择哪些应用程序可以获取他们的短信和电话。你可以用root来做,但没有别的。

于 2018-10-08T18:16:53.173 回答