Android USsd代码运行器

时间:2016-10-04 12:43:33

标签: java android android-security

我试图使用以下

发送USSD
String ussdCode = mDataset.get(position).getCode();
                if (ussdCode != null) {
                    ussdCode = ussdCode.replace("#", Uri.encode("#"));
                    context.startActivity(new Intent("android.intent.action.CALL", Uri.parse("tel:" + ussdCode)));
                }

我的android-manifest我已经添加了权限

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

但是有一些设备抛出异常这个

Fatal Exception: java.lang.SecurityException
Permission Denial: starting Intent { act=android.intent.action.CALL dat=tel:xxxxx cmp=com.android.server.telecom/.components.UserCallActivity } from ProcessRecord{694e5b 12138:uz.mobileprovider/u0a70} (pid=12138, uid=10070) with revoked permission android.permission.CALL_PHONE
 Raw Text
android.os.Parcel.readException (Parcel.java:1683)
android.app.Activity.startActivity (Activity.java:4475)
uz.mobileprovider.MyAdapter$1.onClick (MyAdapter.java:72)
android.view.View.performClick (View.java:5609)
com.android.internal.os.ZygoteInit.main (ZygoteInit.java:755)

我写错了什么。请帮忙。

0 个答案:

没有答案