目录
四、关于uniapp的真机调试 一直等待问题 或者 正在建立链接
七、关于请求数据 在电脑端正常请求,但是真机调试到手机上后请求失败原因与解决方法
八、顶部状态栏的占位 height: var(--status-bar-height);
(小知识)
一、uniapp 勾选自带的隐私政策 出现的问题
勾选自动隐私政策后 会在根目录下出现一个androidPrivacy.json文件 一下是里面的内容 一开始可能 只会有 "version" : "1"
{
"version": "1",
"prompt": "template",
"title": "服务协议和隐私政策",
"message": " 请你务必审慎阅读、充分理解“服务协议”和“隐私政策”各条款,包括但不限于:为了更好的向你提供服务,我们需要收集你的设备标识、操作日志等信息用于分析、优化应用性能。<br/> 你可阅读<a href=\"https://gaoying@fumobile.com/protocol.html\">《服务协议》</a>和<a href=\"https:\\www.0594.com/html/about/private\">《隐私政策》</a>了解详细信息。如果你同意,请点击下面按钮开始接受我们的服务。",
"buttonAccept": "同意并接受",
"buttonRefuse": "暂不同意",
"hrefLoader": "system",
"backToExit":"false",
"second": {
"title": "确认提示",
"message": " 进入应用前,你需先同意<a href=\"\">《服务协议》</a>和<a href=\"https:\/\/www.0594.com\/html\/about\/private\/\">《隐私政策》</a>,否则将退出应用。",
"buttonAccept": "同意并继续",
"buttonRefuse": "退出应用"
},
"disagreeMode":{
"support": false,
"loadNativePlugins": false,
"visitorEntry": false,
"showAlways": false
},
"styles": {
"backgroundColor": "#ffffff",
"borderRadius":"5px",
"title": {
"color": "#000000"
},
"buttonAccept": {
"color": "#55aaff"
},
"buttonRefuse": {
"color": "#ff0000"
},
"buttonVisitor": {
"color": "#00ffff"
}
}
}
一、关闭自带的隐私政策 在manifest.json 源码视图 中找到 "app-puls" 里面添加
"privacy" : { //关闭自带隐私政策
"prompt" : "none"
},
二、隐私政策里的 超链接写法 搞了好久原来是写错位置了 我说为什么一直不跳转 马虎了
<a href=\"https:\\www.0594.com/html/about/private\">《隐私政策》</a>
二、是否忽略版本兼容检查提示
打完包后 以为可以正常运行 没想到 刚打开App 就弹出一个框

解决方法:在manifest.json 源码视图 中找到 "app-puls" 里面添加
"compatible" : {
"ignoreVersion" : true //可选,Boolean类型,是否忽略版本兼容检查提示
},

三、勾选了uniapp的消息推送 打包后弹出提示框

这个问题是我在勾选消息推送后 并没有使用 所以报错 后来关闭了消息推送还是报错
原因是虽然关闭了消息推送但是 在manifest.json 源码视图里 "app-puls" 中依然有关于推送的信息,找到push:{}
push:{
//什么东西
}
删除这个push:{} 重新运行打包就不会报错了!
四、关于uniapp的真机调试 一直等待问题 或者 正在建立链接
一般情况下不会出现这种问题 我当时在频繁修改 调试的时候出现 解决原因有 重启HBuilder,
或者换一个usb插口 我就是换了一个插口usb3.0的 还有就是看看有没有链接成功 ,或者删除原来手机上的包让他重新下载
五、在uniapp 页面中不显示滚动条
一般在使用scroll-view和overflow-y/x: auto;的时候都会出现一个灰色的滚动条,可以在pages.json里面添加 "scrollIndicator": "none", 隐藏滚动条
六、控制手机音量键 + - 触发相对用的方法
//进入页面是监听音量键
onShow() {
plus.key.addEventListener('volumeupbutton', this.handleVolumeUp);
plus.key.addEventListener('volumedownbutton', this.handleVolumeDown);
},
// 在页面隐藏的时候移除监听
onHide() {
plus.key.removeEventListener('volumeup', this.handleVolumeUp);
plus.key.removeEventListener('volumedown', this.handleVolumeDown);
},
handleVolumeUp() {
// 音量增大时的处理逻辑
console.log('音量键+被按下');
},
handleVolumeDown() {
// 音量减小时的处理逻辑
console.log('音量键-被按下');
},
七、关于请求数据 在电脑端正常请求,但是真机调试到手机上后请求失败原因与解决方法
在根目录下创建一个setting.js文件 把下面的代码复制到里面即可
export default {
url:'http://musicapp.qifu100.com/api/index',
}
这个原因是我在本地服务器请求,所以到真机调试手机上就显示数据请求失败 把请求路径改为 自己的ip地址而且 电脑要跟手机链接同一个wifi,查看电脑ip的命令ipconfig。
// url:'http://192.168.0.120:3000',
// url: 'http://localhost:3000'
//localhost、127.0.0.1等服务器地址,只能在电脑端运行,手机端连接时不能访问。
//手机跟电脑连同一wifi(电脑和手机在同一个网络环境),然后访问地址用内网ip,电脑cmd,输入ipconfig查看内网ip,ipv4
八、顶部状态栏的占位 height: var(--status-bar-height);
<template>
<view>
<view class="status_bar">
<!-- 这里是状态栏 -->
</view>
<view> 状态栏下的文字 </view>
</view>
</template>
<style>
.status_bar {
height: var(--status-bar-height);
width: 100%;
}
</style>
九、视频组件层级太高 使用nVue解决
详细解决方案请看:uniapp视频组件层级太高,解决方法使用subNvue原生子体窗口_uniapp视频组件会在最上层-CSDN博客
十、条件编译
1、仅出现在 App 平台下的代码
#ifdef APP-PLUS
需条件编译的代码
#endif
2、除了 H5 平台,其它平台均存在的代码(注意if后面有个n)
#ifndef H5
需条件编译的代码
#endif
3、在 H5 平台或微信小程序平台存在的代码(这里只有||,不可能出现&&,因为没有交集)
#ifdef H5 || MP-WEIXIN
需条件编译的代码
#endif
十一、禁用,安卓系统上的物理键返回
安卓系统上的返回键,会导致 subNVue原生子窗体的关闭,我们不希望他关闭所以使用一下方法禁用。
plus.key.addEventListener("backbutton", function() {
console.log('backbutton');//里面可以写一些相关逻辑
});
十二、在APP 端禁止触摸 某一个区域
@touchmove.stop.prevent 加上以后view 里面所有的 都触摸不到!
<view @touchmove.stop.prevent>
<!--里面的都触摸不到-->
<view/>
十三、获取软键盘弹起的高度(APP 端)
uni.onKeyboardHeightChange(res => {
console.log(res.height)
})
十四、uniapp 软键盘弹起 把布局顶上面去了,解决方法
在input 中添加上 :adjust-position="false"
<input :adjust-position="false" class="shuru-kuang_input" type="text" placeholder="说点什么..." placeholder-style="color:#fff" />
并且在 pages.json 文件添加 "softinputMode": "adjustResize"//软键盘弹出
"app-plus":{
"softinputMode": "adjustResize"//软键盘弹出
}
十五、手机屏幕常亮
保持屏幕常亮 加在onLoad里面就行
uni.setKeepScreenOn({
keepScreenOn: true
});
小知识:
1、在App.vue 页面中的syle 设置 page{background-color:#ccc} 全局背景颜色为灰色 。
2、使用uniapp 组件中的scroll-view容器时 给scroll-view 设置css属性的时候 flex 弹性盒会失效。
因为: scroll-view 是一个内置的滚动容器组件,其内部内容是可滚动的,并不适用于弹性盒布局。
解决方法:
在scroll-view标签添加css属性:white-space:nowrap; 强制不换行,
在scroll-view的子节点标签添加:display:inline-block;让子元素变成行内元素。

894

被折叠的 条评论
为什么被折叠?



