码嘛呢
码嘛呢
  • 发布:2023-06-12 14:48
  • 更新:2023-06-12 17:23
  • 阅读:162

app端, 判断是否开启推送权限, 根据官方提供的方法, ios正常, 安卓端一直都是true, 这是什么原因?

分类:uni-app

官方代码如下:

/**  
 * 判断Push是否开启  
 */  
function isTurnedOnPush(){  
    var isOn = undefined;  
    try{  
        if('iOS' == plus.os.name){  
            var types = 0;  
            var app = plus.ios.invoke('UIApplication', 'sharedApplication');  
            var settings = plus.ios.invoke(app, 'currentUserNotificationSettings');  
            if(settings){  
                types = settings.plusGetAttribute('types');  
                plus.ios.deleteObject(settings);  
            }else{  
                types = plus.ios.invoke(app, 'enabledRemoteNotificationTypes');  
            }  
            plus.ios.deleteObject(app);  
            isOn = (0!=types);  
        }else{  
            var main = plus.android.runtimeMainActivity();  
            var manager = plus.android.invoke('com.igexin.sdk.PushManager', 'getInstance');  
            isOn = plus.android.invoke(manager, 'isPushTurnedOn', main);  
        }  
    }catch(e){  
        console.error('exception in isTurnedOnPush@dc-push!!');  
    }  
    return isOn;  
}  

/**  
 * 打开Push  
 * Android平台 - 打开个推(UniPush)的推送通道  
 * iOS平台 - 如果开启通知功能,则打开应用的设置页面引导用户开启通知  
 */  
function turnOnPush(){  
    try{  
        if('iOS' == plus.os.name){  
            // 如果设置中没有开启通知,则打开应用的设置界面  
            if(!isTurnedOnPush()){  
                settingInIos();  
            }  
        }else{  
            var main = plus.android.runtimeMainActivity();  
            var manager = plus.android.invoke('com.igexin.sdk.PushManager', 'getInstance');  
            plus.android.invoke(manager, 'turnOnPush', main);  
        }  
    }catch(e){  
        console.error('exception in turnOnPush@dc-push!!');  
    }  
}

还有开启推送的方法也有问题, ios调用不会跳转到设置页面

我想问下是有什么改动吗?要怎么改呢?

2023-06-12 14:48 负责人:无 分享
已邀请:
FullStack

FullStack - 【插件开发】【专治疑难杂症】【ios上架、马甲包、白包、过审、已成功上架过几百个】【多款插件已上架:https://ext.dcloud.net.cn/publisher?id=22130】【非诚勿扰】QQ:543610866

可能个推 sdk 有问题,可以去个推官网 去咨询

要回复问题请先登录注册