diff --git a/src/platforms/app-plus/service/api/device/get-app-authorize-setting.js b/src/platforms/app-plus/service/api/device/get-app-authorize-setting.js index 37f15d8d4b358107bab65241880843804f035560..0c159c8dc5abe4ed3ed1451e595200d4634b9196 100644 --- a/src/platforms/app-plus/service/api/device/get-app-authorize-setting.js +++ b/src/platforms/app-plus/service/api/device/get-app-authorize-setting.js @@ -5,5 +5,12 @@ export function getAppAuthorizeSetting () { if (typeof appAuthorizeSetting === 'string') { appAuthorizeSetting = JSON.parse(appAuthorizeSetting) } } catch (error) { } + for (const key in appAuthorizeSetting) { + if (Object.hasOwnProperty.call(appAuthorizeSetting, key)) { + const value = appAuthorizeSetting[key] + if (value === 'undefined') appAuthorizeSetting[key] = undefined + } + } + return appAuthorizeSetting } diff --git a/src/platforms/app-plus/service/api/plugin/push.js b/src/platforms/app-plus/service/api/plugin/push.js index c866efd4646a3065c6793f892f1a06dbafec146c..cbc56321b5355f58476e46c9d5f3ceca550a05c0 100644 --- a/src/platforms/app-plus/service/api/plugin/push.js +++ b/src/platforms/app-plus/service/api/plugin/push.js @@ -1,6 +1,3 @@ -import { - hasOwn -} from 'uni-shared' import { invoke, publish @@ -72,11 +69,6 @@ export function offPush (params) { export function createPushMessage (params, callbackId) { const setting = getAppAuthorizeSetting() - if (!hasOwn(setting, 'notificationAuthorized')) { - return invoke(callbackId, { - errMsg: 'createPushMessage:fail missing push module' - }) - } if (setting.notificationAuthorized !== 'authorized') { return invoke(callbackId, { errMsg: 'createPushMessage:fail ' + setting.notificationAuthorized diff --git a/src/platforms/mp-weixin/helpers/get-app-authorize-setting.js b/src/platforms/mp-weixin/helpers/get-app-authorize-setting.js new file mode 100644 index 0000000000000000000000000000000000000000..24135a76c4d13484d9585d8a9db662658db72dde --- /dev/null +++ b/src/platforms/mp-weixin/helpers/get-app-authorize-setting.js @@ -0,0 +1,12 @@ +export default { + returnValue: function (result) { + const { locationReducedAccuracy } = result + + result.locationAccuracy = 'unsupported' + if (locationReducedAccuracy === true) { + result.locationAccuracy = 'reduced' + } else if (locationReducedAccuracy === false) { + result.locationAccuracy = 'full' + } + } +} diff --git a/src/platforms/mp-weixin/runtime/api/protocols.js b/src/platforms/mp-weixin/runtime/api/protocols.js index c610422607eff5934ea4817c985d5c3678851311..7f3a5f7a423cc09ed44505f1653a6d4266adee1d 100644 --- a/src/platforms/mp-weixin/runtime/api/protocols.js +++ b/src/platforms/mp-weixin/runtime/api/protocols.js @@ -6,6 +6,7 @@ import showActionSheet from '../../helpers/show-action-sheet' import getAppBaseInfo from '../../helpers/get-app-base-info' import getDeviceInfo from '../../helpers/get-device-info' import getWindowInfo from '../../helpers/get-window-info' +import getAppAuthorizeSetting from '../../helpers/get-app-authorize-setting' export const protocols = { redirectTo, @@ -16,7 +17,8 @@ export const protocols = { showActionSheet, getAppBaseInfo, getDeviceInfo, - getWindowInfo + getWindowInfo, + getAppAuthorizeSetting } export const todos = [ 'vibrate',