![](/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.