官方Native.js 示例获取所有短信进行遍历的示例有问题 ,一直报TypeError: Cannot read property 'TYPE' of null,自定义调试基座以及权限是没问题的,查找帖子找到如下代码,分享一下,希望官方能看见修改,下面代码经测试无问题 ,帖子转自https://cnbing.net/Detail/8.html,不能评论,表示感谢
getMassage() {
if(plus.os.name === 'Android'){
//不同机型可能获取不全
//查看权限是否已允许
var Context = plus.android.runtimeMainActivity()
var res = plus.android.invoke('android.support.v4.app.ActivityCompat', 'checkSelfPermission', Context, 'android.permission.READ_SMS')
var PERMISSIONS_STORAGE = new Array()
PERMISSIONS_STORAGE.push('android.permission.READ_SMS')
if (res !== '0')
{
plus.android.invoke('android.support.v4.app.ActivityCompat', 'requestPermissions', Context, PERMISSIONS_STORAGE, 1)
} else {
}
var main = plus.android.runtimeMainActivity()
var Uri = plus.android.importClass('android.net.Uri')
var ContactsContract = plus.android.importClass('android.provider.ContactsContract')
var uri = Uri.parse('content://sms/')
var cr = main.getContentResolver()
plus.android.importClass(cr)
var cur = cr.query(uri, null, null, null, null)
plus.android.importClass(cur)
cur.moveToFirst()
var smslist = []
while (cur.moveToNext())
{
var index_Address = cur.getColumnIndex('address')
var address = cur.getString(index_Address)
//短信内容
var index_Body = cur.getColumnIndex('body')
var body = cur.getString(index_Body)
//类型1接收 2发送
var index_Type = cur.getColumnIndex('type')
var type = cur.getString(index_Type)
smslist.push({
address:address,
body:body,
type:type
})
}
console.log(smslist)
}else if(plus.os.name === 'iOS'){
console.log('iOS')
}
},
3 个评论
要回复文章请先登录或注册
r***@126.com
9***@qq.com (作者)
小小菜76055421