Android的集成测试应用程序的权限(Android Integration test appli

2019-10-18 11:01发布

我正在寻找一种方式来获得我的集成测试当前设备的序列号。

现在,当调用

TelephonyManager manager = (TelephonyManager) getActivity().getSystemService(Context.TELEPHONY_SERVICE);
String deviceId = manager.getDeviceId();

在我的测试方法,我得到java.lang.SecurityException: Requires READ_PHONE_STATE: Neither user 10227 nor current process has android.permission.READ_PHONE_STATE.

我加了<uses-permission android:name="android.permission.READ_PHONE_STATE"/>在我的测试项目AndroidManifest.xml ,但是这并没有帮助。

Answer 1:

您应该检查在应用程序的AndroidManifest.xml READ_PHONE_STATE许可是否加入与否。

像这样::

<uses-permission android:name="android.permission.READ_PHONE_STATE"/>  

如果它不存在,请添加它,因为你的测试用例不能超过你的应用程序更多的特权。



文章来源: Android Integration test application permissions