![](/img/trans.png)
[英]java.lang.SecurityException: Sending SMS message: uid 10051 does not have android.permission.SEND_SMS
[英]Sending SMS message: uid 10137 does not have android.permission.SEND_SMS
在我的第一个使用棒棒糖的手机中,程序运行良好,我可以发送和接收短信。 但是在使用棉花糖的第二部手机中,我的应用被强制关闭。 我不知道怎么了
这是强制关闭后的日志...
java.lang.IllegalStateException:无法在android.widget执行android.onClick的方法,在android.view.View $ DeclaredOnClickListener.onClick(View.java:4461)在android.view.View.performClick(View.java:5207) android.os.Handler.handleCallback(Handler.java:739)上的.CompoundButton.performClick(CompoundButton.java:122)在android.view.View $ PerformClick.run(View.java:21177)在android.os.Handler。 android.os.Looper.loop(Looper.java:148)的dispatchMessage(Handler.java:95)android.app.ActivityThread.main(ActivityThread.java:5458)的java.lang.reflect.Method.invoke(Native) com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:738)处com.android.internal.os.ZygoteInit.main(ZygoteInit.java:628)的原因:java.lang.reflect .java.lang.reflect.Method.invoke处的.InvocationTargetException(本地方法)android.view.View $ DeclaredOnClickListener.onClick(View.java:4456)... 10造成原因:java.lang.SecurityException:发送SMS消息:uid 10137不 具有android.permission.SEND_SMS。 在android.os.Parcel.readException(Parcel.java:1620)在android.os.Parcel.readException(Parcel.java:1573)在com.android.internal.telephony.ISms $ Stub $ Proxy.sendTextForSubscriber(ISms.java :842),位于android.telephony.SmsManager.sendTextMessageInternal(SmsManager.java:311),位于com.example.tamvan.komunikasiberlapis.MainActivity.clicksaklar1GSMMode(MainActivity.java: 379)...还有12个
这是我在清单中的允许
<uses-permission android:name="android.permission.SEND_SMS" />
<uses-permission android:name="android.permission.READ_SMS" />
<uses-permission android:name="android.permission.RECEIVE_SMS" />
For Marshmallow, You need to add permission Code: ... private static final int PERMISSION_SEND_SMS = 1; ... if(ActivityCompat.checkSelfPermission(this, Manifest.permission.SEND_SMS) != PackageManager.PERMISSION_GRANTED) { ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.SEND_SMS}, PERMISSION_SEND_SMS); } else { //do send or read sms } ... @Override public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) { switch(requestCode) { case PERMISSION_SEND_SMS: if(grantResults != null && grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) { //do send or read sms } break; } }
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.