1、获取短信 在hb上 运行 第一次 会弹出 是否允许读取短信 权限 而 hbx上 并不会弹出
2、如果用户未打开 允许读取短信 权限 hb上会读取为空 不会报错 但是在hbx上 会报错 具体如下图
hbx hb 均为目前最新版本
以下为获取短信代码:
let Sms = []
let Cursor = plus.android.importClass('android.database.Cursor')
let Uri = plus.android.importClass('android.net.Uri') // 注意啦,android.net.Uri中的net是小写
let activity = plus.android.runtimeMainActivity()
let uri = Uri.parse('content://sms/')
let projection = new Array('_id', 'address', 'person', 'body', 'date', 'type')
let cusor = activity.managedQuery(uri, projection, null, null, 'date desc')
let idColumn = cusor.getColumnIndex('_id')
let nameColumn = cusor.getColumnIndex('person')
let phoneNumberColumn = cusor.getColumnIndex('address')
let smsbodyColumn = cusor.getColumnIndex('body')
let dateColumn = cusor.getColumnIndex('date')
let typeColumn = cusor.getColumnIndex('type')
if (cusor != null) {
while (cusor.moveToNext()) {
let len = Sms.length
// SmsInfo存放一条短信的各项内容
let SmsInfo = {}
if (len < 50) {
// SmsInfo.id = cusor.getString(idColumn)
// SmsInfo.Name = cusor.getInt(nameColumn)
SmsInfo.sendDate = cusor.getLong(dateColumn)
SmsInfo.sendDate = SmsInfo.sendDate
SmsInfo.mobile = cusor.getString(phoneNumberColumn)
SmsInfo.content = cusor.getString(smsbodyColumn)
// SmsInfo.Type = cusor.getString(typeColumn)
Sms.push(SmsInfo)
}
}
cusor.close()
}
console.log('conInfo.params.message = ' + JSON.stringify(Sms))
希望能快点回复 很急 谢谢
4***@qq.com
太有用了。!就是权限问题。 我把短信权限,和 联系人权限全加上 OK!
2019-06-25 18:32