HBuilderX

HBuilderX

极客开发工具
uni-app

uni-app

开发一次,多端覆盖
uniCloud

uniCloud

云开发平台
HTML5+

HTML5+

增强HTML5的功能体验
MUI

MUI

上万Star的前端框架

ios基座 调用相机相册 记录下

iOS平台离线生成自定义基座
  1. 记得添加 liblibCamera.a 添加另外两个 framework GLkit Matalkit 不行的话再加个Photo.framework
    2.在info.plist中加上 为什么获取相机相册权限的描述
  2. 还报错的话加上DCZImagePickerController bundle
继续阅读 »
  1. 记得添加 liblibCamera.a 添加另外两个 framework GLkit Matalkit 不行的话再加个Photo.framework
    2.在info.plist中加上 为什么获取相机相册权限的描述
  2. 还报错的话加上DCZImagePickerController bundle
收起阅读 »

windows制作apple苹果证书-appuploader

iOS云端打包

hbuilderx云打包ios ipa包时需配置apple发布证书:

但是正常情况证书获取需使用macos工具,对于windows开发者可以通过appuploader来制作证书, 但是要注意:(没有给apple支付688/年的只能制作开发证书)

具体appuploader的使用教程,移驾

继续阅读 »

hbuilderx云打包ios ipa包时需配置apple发布证书:

但是正常情况证书获取需使用macos工具,对于windows开发者可以通过appuploader来制作证书, 但是要注意:(没有给apple支付688/年的只能制作开发证书)

具体appuploader的使用教程,移驾

收起阅读 »

字节跳动createInnerAudioContext() 真机调试无声音

报错截图或相关BUG

域名白名单已经配置

复现步骤

代码
const InnerAudioContext = tt.createInnerAudioContext();

InnerAudioContext.src ='https://7463-tcb-0vprr8addd07d6-8dv2mfef7086f-1310975784.tcb.qcloud.la/right.mp3'

InnerAudioContext.play()

InnerAudioContext.onPlay(() => {

console.log('开始播放');

console.log(InnerAudioContext.duration);

});

InnerAudioContext.onError((res) => {

console.log(res.errMsg);

console.log(res.errCode);

});

模拟器播放正常且显示音频时长

..真机显示一样就是无声音

继续阅读 »

报错截图或相关BUG

域名白名单已经配置

复现步骤

代码
const InnerAudioContext = tt.createInnerAudioContext();

InnerAudioContext.src ='https://7463-tcb-0vprr8addd07d6-8dv2mfef7086f-1310975784.tcb.qcloud.la/right.mp3'

InnerAudioContext.play()

InnerAudioContext.onPlay(() => {

console.log('开始播放');

console.log(InnerAudioContext.duration);

});

InnerAudioContext.onError((res) => {

console.log(res.errMsg);

console.log(res.errCode);

});

模拟器播放正常且显示音频时长

..真机显示一样就是无声音

收起阅读 »

免费开源的WordPress开源小程序个人博客小程序星宿UI微信小程序

WordPress

直达链接:点击进入插件市场下载


  1. 2.0.x版本 新增:小程序直接下载附件资源能力(对download页面重新布局代码改动大,由戴蒙提供建议)

新增:金刚区跳转视频号主页(更新index页面xs_default函数,由YouTuMv提供建议)

新增:文章密码访问(更新index页面newPostTap函数,search页面tapTagList函数,categ_lisst页面posTap函数以及data页面逻辑)

更新:借鉴了一个QQ端过审的隐私说明界面(更新后privacy页面要输入开发者邮箱)

更新:首页金刚区,公告逻辑(修改index页面金刚区,公告v-if判断)

修复:windows和mac端设备激无需励视频可直接下载(修改download页面getVideoAd函数,data页面videoAD函数)

修复:轮播图文章阅读方式(由君君反馈,修改openSwipre函数)

修复:首页,搜索,二级文章列表等页面视频号阅读方式点击无效(由onlyone,蕉窗夜雨反馈,修改页面的列表点击函数)

修复:热门文章阅读方式无效(修改tapTagList函数)

修复:资源下载连接长按复制(修改download页面中detailData.fr_down_url_alter数值的容器)

修复:公众号列表文字长度(由君君反馈,修改list-float-img,list-float-text,list-ona-abstract-2样式)

移除:因V1.8+支持文章阅读方式,此移除文章详情也顶部金刚区

移除:移除小程序赞赏二维码功能(该功能无法过审核,删除data和download页面tapMoney函数以及内容)

其他:首页轮播图点击函数openSwipre函数废除,采用列表函数newPostTap

其他:取消下载页面的一键复制功能(代码注释了,若需要可以开启)

继续阅读 »

直达链接:点击进入插件市场下载


  1. 2.0.x版本 新增:小程序直接下载附件资源能力(对download页面重新布局代码改动大,由戴蒙提供建议)

新增:金刚区跳转视频号主页(更新index页面xs_default函数,由YouTuMv提供建议)

新增:文章密码访问(更新index页面newPostTap函数,search页面tapTagList函数,categ_lisst页面posTap函数以及data页面逻辑)

更新:借鉴了一个QQ端过审的隐私说明界面(更新后privacy页面要输入开发者邮箱)

更新:首页金刚区,公告逻辑(修改index页面金刚区,公告v-if判断)

修复:windows和mac端设备激无需励视频可直接下载(修改download页面getVideoAd函数,data页面videoAD函数)

修复:轮播图文章阅读方式(由君君反馈,修改openSwipre函数)

修复:首页,搜索,二级文章列表等页面视频号阅读方式点击无效(由onlyone,蕉窗夜雨反馈,修改页面的列表点击函数)

修复:热门文章阅读方式无效(修改tapTagList函数)

修复:资源下载连接长按复制(修改download页面中detailData.fr_down_url_alter数值的容器)

修复:公众号列表文字长度(由君君反馈,修改list-float-img,list-float-text,list-ona-abstract-2样式)

移除:因V1.8+支持文章阅读方式,此移除文章详情也顶部金刚区

移除:移除小程序赞赏二维码功能(该功能无法过审核,删除data和download页面tapMoney函数以及内容)

其他:首页轮播图点击函数openSwipre函数废除,采用列表函数newPostTap

其他:取消下载页面的一键复制功能(代码注释了,若需要可以开启)

收起阅读 »

如何在VUE中播放海康威视RTSP/RTMP视频流且延迟低于300毫秒?支持海康威视NVR录像机回放!

vue.js rtsp

近期在做摄像头监控视频在网页中播放的工作,现在大部分摄像头厂商如海康威视、大华、华为等都支持标准的RTSP协议,RTSP协议的优势是实时性高、流畅度度高,同时支持H.265和H.264,清晰度也更高,对于要求比较高的安防、交通等领域很适合,交通行业特殊需要延迟低于300毫秒,于是开始收集各种方案,互联网上RTSP协议的网页播放方案也很多,但是基本上分为两种:

1. 无插件方案

(如:FFmpeg +node.Js)也就是需要再服务器上搭建一个转码服务,这个对服务器的消耗会比较大,特别是多路同时播放和播放的视频是高清视频的情况下,相对应的延迟也会增加,对于要求不高的可以考虑,但是商业使用效果还是太差。

2.有插件方案

一种就是摄像头厂商提供的插件。

比如海康威视提供的开发包,优势就是延迟比较低,但要求浏览器需要支持NPAPI插件,而Chrome等高版本浏览器是不支持的,如果使用老版本浏览器也可以暂时解决问题,但是漏洞比较多,商用还是有很大风险,并且不同的厂商的方案也只针对本厂商产品,不能兼容其他厂商的摄像头。

另外一种就是猿大师播放器

猿大师播放器是基于猿大师中间件提供的内嵌网页播放的专利技术,底层调用VLC客户端的ActiveX控件可实现在Chrome等高版本浏览器中内嵌播放海康威视、大华等摄像头的RTSP视频流,可以以做到低延迟(300毫秒),支持多路同时播放和回放,支持H.264和H.265格式,支持2K、4K等高清视频,兼容主流浏览器的老版本和最新版本,不用担心浏览器升级导致不能用的问题。

猿大师播放器官网:http://www.yuanplayer.com

猿大师与VLC原生播放器延迟对比:https://www.bilibili.com/video/BV1Sr4y117v8/

猿大师与大华官方网页延迟对比:https://www.bilibili.com/video/BV1ff4y1j7qg/

网上到到一个RTSP公网视频,用猿大师测试页面播放,可以同时播放十几路一点问题也没有,视频链接:https://www.bilibili.com/video/BV1Y34y197Z3

继续阅读 »

近期在做摄像头监控视频在网页中播放的工作,现在大部分摄像头厂商如海康威视、大华、华为等都支持标准的RTSP协议,RTSP协议的优势是实时性高、流畅度度高,同时支持H.265和H.264,清晰度也更高,对于要求比较高的安防、交通等领域很适合,交通行业特殊需要延迟低于300毫秒,于是开始收集各种方案,互联网上RTSP协议的网页播放方案也很多,但是基本上分为两种:

1. 无插件方案

(如:FFmpeg +node.Js)也就是需要再服务器上搭建一个转码服务,这个对服务器的消耗会比较大,特别是多路同时播放和播放的视频是高清视频的情况下,相对应的延迟也会增加,对于要求不高的可以考虑,但是商业使用效果还是太差。

2.有插件方案

一种就是摄像头厂商提供的插件。

比如海康威视提供的开发包,优势就是延迟比较低,但要求浏览器需要支持NPAPI插件,而Chrome等高版本浏览器是不支持的,如果使用老版本浏览器也可以暂时解决问题,但是漏洞比较多,商用还是有很大风险,并且不同的厂商的方案也只针对本厂商产品,不能兼容其他厂商的摄像头。

另外一种就是猿大师播放器

猿大师播放器是基于猿大师中间件提供的内嵌网页播放的专利技术,底层调用VLC客户端的ActiveX控件可实现在Chrome等高版本浏览器中内嵌播放海康威视、大华等摄像头的RTSP视频流,可以以做到低延迟(300毫秒),支持多路同时播放和回放,支持H.264和H.265格式,支持2K、4K等高清视频,兼容主流浏览器的老版本和最新版本,不用担心浏览器升级导致不能用的问题。

猿大师播放器官网:http://www.yuanplayer.com

猿大师与VLC原生播放器延迟对比:https://www.bilibili.com/video/BV1Sr4y117v8/

猿大师与大华官方网页延迟对比:https://www.bilibili.com/video/BV1ff4y1j7qg/

网上到到一个RTSP公网视频,用猿大师测试页面播放,可以同时播放十几路一点问题也没有,视频链接:https://www.bilibili.com/video/BV1Y34y197Z3

收起阅读 »

安卓怎么把网址和包名写入nfc芯片

NFC

uniapp的安卓nfc文档少的可怜,最近有安卓的需求需要往nfc芯片里面写入网址和包名的,查找了相关的文档和插件市场都没有这个需求和这方面的资源,于是自己耗时耗力去查了安卓原生的NFC操作文档,弄出来了写入url和写入包名,有需要的同学拿走。

nfc写入网址

写入包名打开app

继续阅读 »

uniapp的安卓nfc文档少的可怜,最近有安卓的需求需要往nfc芯片里面写入网址和包名的,查找了相关的文档和插件市场都没有这个需求和这方面的资源,于是自己耗时耗力去查了安卓原生的NFC操作文档,弄出来了写入url和写入包名,有需要的同学拿走。

nfc写入网址

写入包名打开app

收起阅读 »

getLocation定位失败 requiredPrivateInfos

小程序发生了定位失败的情况,

返回异常信息放回如下:{"errMsg":"getLocation:fail the api need to be declared in the requiredPrivateInfos field in app.json/ext.json"}

查阅了官方的app.json文档
app.json 的配置指引

官方文档

在原有的配置信息下在配置 requiredPrivateInfos

"permission" : {
"scope.userLocation" : {
"desc" : "您的位置将用于获取当前城市的商品"
}
},
"requiredPrivateInfos": [
"chooseAddress",
"chooseLocation",
"choosePoi",
"getLocation",
"onLocationChange",
"startLocationUpdateBackground",
"startLocationUpdate"
]

继续阅读 »

小程序发生了定位失败的情况,

返回异常信息放回如下:{"errMsg":"getLocation:fail the api need to be declared in the requiredPrivateInfos field in app.json/ext.json"}

查阅了官方的app.json文档
app.json 的配置指引

官方文档

在原有的配置信息下在配置 requiredPrivateInfos

"permission" : {
"scope.userLocation" : {
"desc" : "您的位置将用于获取当前城市的商品"
}
},
"requiredPrivateInfos": [
"chooseAddress",
"chooseLocation",
"choosePoi",
"getLocation",
"onLocationChange",
"startLocationUpdateBackground",
"startLocationUpdate"
]

收起阅读 »

[[AVAudioSession sharedInstance]setCategory: js实现方式?

原生代码:
[[AVAudioSession sharedInstance]setCategory: AVAudioSessionCategoryPlayback
withOptions: AVAudioSessionCategoryOptionMixWithOthers
error: nil]

用js如何实现呢? 目前js只有AVAudioSession.sharedInstance().setCategoryerror 这个方法,没有withOptions 的参数。

继续阅读 »

原生代码:
[[AVAudioSession sharedInstance]setCategory: AVAudioSessionCategoryPlayback
withOptions: AVAudioSessionCategoryOptionMixWithOthers
error: nil]

用js如何实现呢? 目前js只有AVAudioSession.sharedInstance().setCategoryerror 这个方法,没有withOptions 的参数。

收起阅读 »

【uniapp开发(结合vue2)】想使用uniapp扩展组件,却遇到Cannot find module '@dcloudio/uni-ui/lib/uni-***/uni-***.vue'

想使用uniapp扩展组件(npm安装+easycom配置),却遇到Cannot find module '@dcloudio/uni-ui/lib/uni-/uni-.vue',不能找到某模块

为了实现一些功能,借用了一些开源UI框架,PC端app模拟器测试时,好好地;而真机测试时,令人唏嘘不已。哎~难受~还是瞅瞅扩展组件吧~

下面跟大家分享一下,npm安装+easycom配置,安装uniapp扩展组件是的一个注意点。(本次分享,也是自己的笔记记录,分享有点长,可以认真看完也可以选择阅读,各位道友请自便)
【分享重点:主要是easycom,本着优化性能的原则的设计,没想到有点小瑕疵,解决这个小瑕疵】
npm安装uniapp扩展组件,根据官方安装介绍步骤正常进行,如下(更小的细节,像使用限制版本等,见官文):

1、根目录新建并配置 vue.config.js文件

// vue.config.js  
module.exports = {  
        transpileDependencies:['@dcloudio/uni-ui']  
}

2、准备 sass

// 安装 sass  
npm i sass -D   或   yarn add sass -D   
// 安装 sass-loader  
npm i sass-loader@10.1.1 -D   或   yarn add sass-loader@10.1.1 -D  
(安装时可以不指定版本号)

3、安装 uni-ui

npm i @dcloudio/uni-ui   或   yarn add @dcloudio/uni-ui

4、配置easycom(最关键的一步,也是找不到模块组件的问题所在)

//官方建议这么配置  
// pages.json  
{  
    "easycom": {  
        "autoscan": true,  
        "custom": {  
            // uni-ui 规则如下配置  
            "^uni-(.*)": "@dcloudio/uni-ui/lib/uni-$1/uni-$1.vue"  
        }  
    },  

    // 其他内容  
    pages:[  
        // ...  
    ]  
}

按理说,配置完之后就可以正常使用扩展组件了,但控制台出现了最不想见到的红色:Cannot find module........
其实easycom配置的规范样式并没有错,更深入的仔细看会发现安装的node模块下@dcloudio/uni-ui中并没有lib目录,所以找不到模块是正常的。

顺藤摸瓜,根据自己的模块目录自己将目录配置完整,就可以正常用扩展组件了。
我顺着模块目录,更改后的配置如下:

"easycom": {  
            "autoscan": true,  
            "custom": {  
                "^uni-(.*)": "@dcloudio/uni-ui/uni_modules/uni-$1/components/uni-$1/uni-$1.vue"  
            }  
        },

还有一个注意点,还要提醒初次配置扩展组件的道友注意,每次配置完easycom,需要重启项目或HBuilder,配置才会生效。
分享结束。

继续阅读 »

想使用uniapp扩展组件(npm安装+easycom配置),却遇到Cannot find module '@dcloudio/uni-ui/lib/uni-/uni-.vue',不能找到某模块

为了实现一些功能,借用了一些开源UI框架,PC端app模拟器测试时,好好地;而真机测试时,令人唏嘘不已。哎~难受~还是瞅瞅扩展组件吧~

下面跟大家分享一下,npm安装+easycom配置,安装uniapp扩展组件是的一个注意点。(本次分享,也是自己的笔记记录,分享有点长,可以认真看完也可以选择阅读,各位道友请自便)
【分享重点:主要是easycom,本着优化性能的原则的设计,没想到有点小瑕疵,解决这个小瑕疵】
npm安装uniapp扩展组件,根据官方安装介绍步骤正常进行,如下(更小的细节,像使用限制版本等,见官文):

1、根目录新建并配置 vue.config.js文件

// vue.config.js  
module.exports = {  
        transpileDependencies:['@dcloudio/uni-ui']  
}

2、准备 sass

// 安装 sass  
npm i sass -D   或   yarn add sass -D   
// 安装 sass-loader  
npm i sass-loader@10.1.1 -D   或   yarn add sass-loader@10.1.1 -D  
(安装时可以不指定版本号)

3、安装 uni-ui

npm i @dcloudio/uni-ui   或   yarn add @dcloudio/uni-ui

4、配置easycom(最关键的一步,也是找不到模块组件的问题所在)

//官方建议这么配置  
// pages.json  
{  
    "easycom": {  
        "autoscan": true,  
        "custom": {  
            // uni-ui 规则如下配置  
            "^uni-(.*)": "@dcloudio/uni-ui/lib/uni-$1/uni-$1.vue"  
        }  
    },  

    // 其他内容  
    pages:[  
        // ...  
    ]  
}

按理说,配置完之后就可以正常使用扩展组件了,但控制台出现了最不想见到的红色:Cannot find module........
其实easycom配置的规范样式并没有错,更深入的仔细看会发现安装的node模块下@dcloudio/uni-ui中并没有lib目录,所以找不到模块是正常的。

顺藤摸瓜,根据自己的模块目录自己将目录配置完整,就可以正常用扩展组件了。
我顺着模块目录,更改后的配置如下:

"easycom": {  
            "autoscan": true,  
            "custom": {  
                "^uni-(.*)": "@dcloudio/uni-ui/uni_modules/uni-$1/components/uni-$1/uni-$1.vue"  
            }  
        },

还有一个注意点,还要提醒初次配置扩展组件的道友注意,每次配置完easycom,需要重启项目或HBuilder,配置才会生效。
分享结束。

收起阅读 »

希望HBuilderX控制台增加两个功能,搜索和清空按钮

HBuilderX

希望HBuilderX控制台增加两个功能,搜索和清空按钮。谢谢。

希望HBuilderX控制台增加两个功能,搜索和清空按钮。谢谢。

温州微凌客科技有限公司 全栈经验,全职接单

外包

16年成立,近10年开发经验。写过各类uniapp+tp 项目 求接单或外包

16年成立,近10年开发经验。写过各类uniapp+tp 项目 求接单或外包