2

我现在正在尝试在 Google Nexus 6 (AOS:7) 上运行 Android CTS 7.0。项目“CtsCarrierApiTestCases”中有一个失败的错误信息是:

android.carrierapi.cts.CarrierApiTest#testHasCarrierPrivileges 
fail
 junit.framework.AssertionFailedError: This test requires a SIM card with carrier privilege rule on it.

我们检查了以下 Android 网页: https ://source.android.com/devices/tech/config/uicc.html#prepare_uicc

根据上面的链接,我们需要将 CarrierPrivileges 添加到 UICC 卡,这必须通过电话系统提供商完成。不幸的是,到目前为止,我们还没有联系到我们在台湾的系统供应商。我们有没有机会通过我们在实验室中获胜来做到这一点?我们正在考虑购买读卡器和空白SIM卡,这是一个方向吗?

欢迎任何建议,并提前致谢。

4

1 回答 1

0

我遇到了同样的问题。某些 cts 测试仅允许用于系统特权应用程序或如果应用程序具有 UICC 运营商特权。

在这两个选项都不可用的情况下,作为一种解决方法,/AOSP/platform/packages/services/Telephony/src/com/android/phone/PhoneInterfaceManager.java可以如下所示进行调整,以禁用源代码中的权限检查。应用补丁后,运行“ mmm platform/packages/services/Telephony/ ”,然后运行“ adb remount && adb sync ”来更新系统特权应用程序/system/priv-app/TeleService/TeleService.apk。之后需要重新启动一次设备。

 private void enforceModifyPermissionOrCarrierPrivilege(int subId) {
+   log("CTS CarrierPrivilege Allowed Patch");
+     return;
    int permission = mApp.checkCallingOrSelfPermission(
于 2018-12-05T06:30:33.080 回答