快手小程序 【开发】 自学总结

  1. 关于授权
  • scope.userInfo - 是否授权用户信息,对应接口 ks.getUserInfo
  • scope.userLocation - 是否授权地理位置,对应接口 ks.getLocation, ks.chooseLocation
  • scope.record - 是否授权录音功能,对应接口 ks.startRecord
  • scope.writePhotosAlbum - 是否授权保存到相册 ks.saveImageToPhotosAlbum, ks.saveVideoToPhotosAlbum
  • scope.camera - 是否授权摄像头,对应camera 组件

通过查看有无授权,再开启主动询问授权:

//获取用户的当前设置。返回值中只会出现小程序已经向用户请求过的权限。
    ks.getSetting({
        success(res) {
            if (!res.authSetting['scope.camera']) {
                //提前向用户发起授权请求
                ks.authorize({
                    scope: 'scope.camera',
                    success() {
                        console.log('调用相册权限');
                    },
                });
            }
        },
});
  1. 关于chooseVideo
  • 某些安卓手机 无法正常获取 视频时长,可能其单位为毫秒,区别于苹果与小米手机的单位 秒
  • 选择视频 在权限上也有差异,某些安卓机无法获取相册内的视频,怀疑是权限问题
  1. 关于分享,在生命周期onShareAppMessage中触发
//分享
onShareAppMessage(){
    return {
        imageUrl: 'https://www.zhijiangame.net/minisoft/baoliaoxiang/sharePic.jpg',
        title: '免费领取MBA试听课',
        path: '/pages/banner_detail3/index',
    }
},
  1. 关于迁移项目(微信小程序、字节小程序)至快手流程
  • 文件的后缀名修改
    样式修改:wxss、ttss → css
    结构修改:wxml、ttml → ksml
  • 样式修改
    最外层结构,不会再有ID名,名称为app


  • (ksml,js)内关键字的修改
    wx:if=""、tt:if="" → ks:if
    wx.API名称、tt.API名称 → ks.API名称
  1. 关于图片的引用
  • pages文件夹内,可以引用pages同级文件夹resource中的内容
  • 但是无法使用background背景图

  1. picker各种问题:
  • picker如果在一个定位尺寸很小的容器中,设置容器overflow:hidden,那么真机这个picker会被容器裁切
  • picker所在的定位浮层,真机情况下,不能使用css样式控制显示隐藏,否则在第一次选择后,会出现无法点击的情况,可以使用ks:if来解决这个BUG
  • picker与会触发滚动的view、scroll-view为兄弟关系,且view、scroll-view由条件判断渲染,如ks:if,那么会出现picker渲染为透明的情况,且功能可以正常使用

你可能感兴趣的:(快手小程序 【开发】 自学总结)