123 lines
3.6 KiB
Vue
123 lines
3.6 KiB
Vue
<script>
|
||
export default {
|
||
globalData:{
|
||
projectname:'', // 项目名称
|
||
lat:'', // 公司地址维度
|
||
lng:'' ,// 公司地址经度
|
||
hostapi:'https://7and5.cn' ,// 域名配置
|
||
},
|
||
// 优先于show方法
|
||
onLaunch: function() {
|
||
// 配置全局域名
|
||
// #ifdef H5 || APP-PLUS
|
||
this.globalData.bgmMusic = uni.createInnerAudioContext();
|
||
// #endif
|
||
// #ifdef MP-WEIXIN
|
||
this.globalData.bgmMusic = wx.createInnerAudioContext();
|
||
// #endif
|
||
this.checkNotification();
|
||
},
|
||
onShow: function() {
|
||
if(uni.getStorageSync('token')){
|
||
// 每十分钟更新用户地理位置
|
||
this.$toolAll.tools.renewLocationEv();
|
||
// 检测是否开启GPS定位服务
|
||
this.$toolAll.tools.checkOpenGPSServiceByAndroidIOS();
|
||
}
|
||
},
|
||
onLoad() {
|
||
|
||
},
|
||
onHide: function() {
|
||
|
||
},
|
||
methods:{
|
||
/**
|
||
* 检测通知栏
|
||
*/
|
||
checkNotification:function(){
|
||
if(plus.os.name.toLowerCase() == 'ios'){
|
||
this.checkIosNotification();
|
||
}
|
||
else{
|
||
this.checkAndroidNotification();
|
||
}
|
||
},
|
||
checkAndroidNotification:function(){
|
||
var main = plus.android.runtimeMainActivity();
|
||
var pkName = main.getPackageName();
|
||
var NotificationManagerCompat = plus.android.importClass("android.support.v4.app.NotificationManagerCompat");
|
||
var packageNames = NotificationManagerCompat.from(main);
|
||
if (packageNames.areNotificationsEnabled()) {
|
||
// console.log('已开启通知权限');
|
||
}else{
|
||
uni.showModal({
|
||
title: '提示',
|
||
content: '请先打开APP通知权限,否则无法收到消息推送',
|
||
showCancel: false,
|
||
success: function (res) {
|
||
if (res.confirm) {
|
||
var Intent = plus.android.importClass('android.content.Intent');
|
||
var intent = new Intent('android.settings.APP_NOTIFICATION_SETTINGS');//可设置表中所有Action字段
|
||
intent.putExtra('android.provider.extra.APP_PACKAGE', pkName);
|
||
main.startActivity(intent);
|
||
}
|
||
}
|
||
});
|
||
}
|
||
},
|
||
checkIosNotification:function(){
|
||
var UIApplication = plus.ios.import("UIApplication");
|
||
var app = UIApplication.sharedApplication();
|
||
var enabledTypes = 0;
|
||
if (app.currentUserNotificationSettings) {
|
||
var settings = app.currentUserNotificationSettings();
|
||
enabledTypes = settings.plusGetAttribute("types");
|
||
} else {
|
||
//针对低版本ios系统
|
||
enabledTypes = app.enabledRemoteNotificationTypes();
|
||
}
|
||
plus.ios.deleteObject(app);
|
||
if ( 0 == enabledTypes ) {
|
||
uni.showModal({
|
||
title: '提示',
|
||
content: '请先打开APP通知权限,否则无法收到消息推送',
|
||
showCancel: false,
|
||
success: function (res) {
|
||
if (res.confirm) {
|
||
var UIApplication = plus.ios.import("UIApplication");
|
||
var NSURL = plus.ios.import("NSURL");
|
||
var setting = NSURL.URLWithString("app-settings:");
|
||
var application = UIApplication.sharedApplication();
|
||
application.openURL(setting);
|
||
plus.ios.deleteObject(setting);
|
||
plus.ios.deleteObject(application);
|
||
}
|
||
}
|
||
});
|
||
}
|
||
},
|
||
}
|
||
};
|
||
</script>
|
||
|
||
<style>
|
||
/*每个页面公共css */
|
||
|
||
/* 阿里巴巴矢量图标库 start */
|
||
@import url("./commons/icon-font.css");
|
||
/* 阿里巴巴矢量图标库 end */
|
||
/* 项目基础样式 start */
|
||
@import url("./commons/base.css");
|
||
/* 项目基础样式 end */
|
||
/* 项目页面样式 start */
|
||
@import url("./commons/flying-monkey.css");
|
||
/* 项目页面样式 end */
|
||
|
||
/* 动画样式 start */
|
||
@import url("./commons/animate.min.css");
|
||
/* 动画样式 end */
|
||
|
||
page {background-color: #f7f7f7;}
|
||
</style>
|