我们已从playStore收到以下政策通知:
您的应用清单请求“呼叫日志”权限组(例如READ_CALL_LOG,WRITE_CALL_LOG,PROCESS_OUTGOING_CALLS)
必须在设备上主动将其注册为默认的Phone或Assistant处理程序。
我无法理解设备上的助手处理程序。 任何意见或建议都欢迎。
Android应用程序满足要求的最低要求是什么。
答案 0 :(得分:1)
在以下位置查看文档: 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);
答案 1 :(得分:0)
您不能通过编程将其设置为默认值。关键是用户可以选择默认值,因此他们可以选择要获取其短信和通话的应用程序。您也许可以使用root来执行此操作,但是别无其他。
答案 2 :(得分:0)
顺便说一句,如果您的应用程序不是电话处理程序,但是您仍需要它们来使功能正常工作,则可以尝试获得豁免(请参阅文章的最后一段): https://support.google.com/googleplay/android-developer/answer/9047303?hl=en 因此您的应用不会成为电话处理者,但仍然能够获得这些权限。
答案 3 :(得分:0)
除了marmor所说的android 10 Q状态的更新文档之外:-
自Q开始不再支持此功能,请使用
RoleManager.createRequestRoleIntent(String)
与 改为RoleManager.ROLE_DIALER
。
当我按照清单fie中的意图过滤器遵循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>