gpt4 book ai didi

android - 在 android 7.0 中使用 cordova 发送短信时出现安全异常

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:04:24 25 4
gpt4 key购买 nike

我正在尝试通过添加 corodova 发送短信插件从使用短信管理器的设备发送短信。这个应用程序工作正常,直到 android6.0 设备它也发送短信但是当我尝试从 android7.0 发送短信时它显示我遇到以下安全异常。在发送短信之前,它要求获得许可,我也已授予许可。

异常(exception):

java.lang.SecurityException: 
at android.os.Parcel.readException(Parcel.java:1683)
at android.os.Parcel.readException(Parcel.java:1636)
at com.android.internal.telephony.IPhoneSubInfo$Stub$Proxy.getGroupIdLevel1(IPhoneSubInfo.java:583)
at android.telephony.TelephonyManager.getGroupIdLevel1(TelephonyManager.java:2163)
at android.telephony.SmsMessage.hasEmsSupport(SmsMessage.java:854)
at com.android.internal.telephony.SmsMessageBase.calcUnicodeEncodingDetails(SmsMessageBase.java:409)
at com.android.internal.telephony.gsm.SmsMessage.calculateLength(SmsMessage.java:796)
at android.telephony.SmsMessage.fragmentText(SmsMessage.java:354)
at android.telephony.SmsManager.divideMessage(SmsManager.java:450)
at com.cordova.plugins.sms.Sms.send(Sms.java:143)
at com.cordova.plugins.sms.Sms.access$400(Sms.java:22)
at com.cordova.plugins.sms.Sms$1.run(Sms.java:102)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
at java.lang.Thread.run(Thread.java:761)

发送短信的代码:

  var smsdata = ' தேதி: ' + this.currentbilldate + ' பில் எண்: ' + this.save_details.vehicle_bill_no + ' எடுக்கப்பட்ட பொருட்களின் விவரங்கள்: ' + this.smselements.toString() + ', மொத்த பொருட்கள்: ' + totalcount + '';
var farmermobileno = this.entry_details.farmer_mobile_no;
this.sms.send(farmermobileno, smsdata).then((result) => {
this.commonService.presentToast('Message sent successfully');
}, (error) => {
console.log('Error in sending message', error);
this.commonService.presentToast('Message Failed');
});

插件名称: Cordova 短信插件

短信发送:

 var smsdata = 'உங்கள் கணக்கில் அன்று 23-8-17 அட்வான்ஸ் தொகை ₹500  வழங்கப்பட்டுள்ளது.இருப்பு ₹5000';

最佳答案

希望您可以使用下面的方法来检查权限。

On Android, an extra function is exposed to know whether or not you have the permission to send a SMS (Android Marshmallow permission).

var app = {
checkSMSPermission: function() {
var success = function (hasPermission) {
if (hasPermission) {
sms.send(...);
}
else {
// show a helpful message to explain why you need to require the permission to send a SMS
// read http://developer.android.com/training/permissions/requesting.html#explain for more best practices
}
};
var error = function (e) { alert('Something went wrong:' + e); };
sms.hasPermission(success, error);
}
};

您可以在此处查看更多详细信息 Git too .

更新:

var smsdata = 'உங்கள் கணக்கில் அன்று 23-8-17 அட்வான்ஸ் தொகை' + '₹500' +  'வழங்கப்பட்டுள்ளது.இருப்பு'+ '₹5000';

关于android - 在 android 7.0 中使用 cordova 发送短信时出现安全异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45007058/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com