- 希望插件的页面能够不被宿主小程序的app.wxss影响?
目前插件中的页面样式,会被宿主小程序的全局样式影响。 如果宿主小程序只在全局样式中定义class还比较好处理,我们自行加特殊前缀就行。 但在实际运营过程中,发现有些小程序会对标签做全局的样式重置(比如view{position:relative;}),造成了插件页面的内容显示异常。 希望能够避免这样的影响,或者给一个配置交由插件开发者或小程序方使用。
2020-02-28 - 希望能在插件中增加FileSystemManager相关API的支持?
我们的业务中,插件要下载较大素材文件缓存到本地,并且要读取文件内容, 这样一来,donwloadFile不可行,只能request下来,就只能用Storage缓存。 一来Storage单个key有1MB的上限,二来插件会抢占宿主小程序太多的空间存储大小。这是不方便的。 因此,希望能在插件中开放读取文件内容相关的API。
2020-02-28 - 插件中使用getImageInfo接口,如何对代码工程中的图片指定src参数?
开发小程序插件,需要使用getImageInfo获取工程中的图片文件信息。 使用相对路径./image.jpg,报错{errMsg: "getImageInfo:fail file not found"}。 使用/pages/开头的绝对路径也不行,报一样的错误. 那么在插件中,该如何指定这个路径呢?
2020-02-04 - iOS最新版7.0.9微信,获取cameraFrame数据时,内容发生了变形。
通过接口CameraContext.onCameraFrame获取的图像数据,是被变形压缩的。 只在最新版iOS微信7.0.9上出现。
2019-12-27 - 离屏canvas用作TensorFlow,组件Canvas用作webgl渲染时,iOS会随机卡死渲染
导入代码片段,需要使用appid,且在appid所在小程序后台添加插件【wx6afed118d9e81df9 同时自行使用npm安装三方包,并执行工具->构建npm。 该代码片段在进行webgl 三维渲染的同时,也在使用tensorflow.js加载模型并使用。 期望两者都能正常运行。 但实际上: 如果iOS上关闭用作三维渲染的webgl参数antialias,那么iOS上,在10次打开此小程序中,会随机出现几次三维渲染画面不动【卡死】的情况,而逻辑层的代码却在正常运行。 如果关闭抗锯齿参数,并且不用tensorflow.js加载模型并使用,那么可以正常运行。 如果开启抗锯齿参数,且使用了tensorflow.js,也可以正常运行。 如果tensorflow.js不使用wx.createOffscreenCanvas创建离屏canvas,而是使用canvas组件,那么不会出现渲染卡死的情况。但是tensorflow.js的模型却不能正常使用。 而开启抗锯齿参数还会引发其他的问题,详看:https://developers.weixin.qq.com/community/develop/doc/000004e95841f8f2ed892911b5b400
2019-12-24 - webgl接口gl.readPixels获取的数据存在问题?
获取出来的数据和正常画面是上下颠倒的。 即使上一句代码执行了renderer.render(scene, camera),下一句代码立马进行gl.readPixels,有时候也会获取出纯透明无画面的数据。(后续测试情况:iOS上,当开启了抗锯齿antialias参数时,gl.readPixels读取的数据就100%是纯黑色透明。 当关闭了antialias参数时,gl.readPixels就没有问题,除了数据上下颠倒。Android完全没问题) 偶尔获取出来的数据有残缺。比如渲染了一张图,readPixels出来的数据显示,图的上半部分不见了,下半部分可见。【暂未找到100%复现的方法】
2019-12-04 - camera画面呈现规则?CameraContext.onCameraFrame返回的帧图像规则?
因为摄像头硬件捕获到的画面比例,和手机屏幕比例不一样,加上camera组件还可以任意设置宽高。 那么,我想了解一下,camera组件呈现的画面,是以什么样的规则从原始camera流映射过来的? 是居中裁减?还是都固定左上角来呈现?希望能给一份说明。。 然后就是onCameraFrame返回的帧图像了,这个又是以什么样的规则映射的呢? 是直接以camera流原比例返回,只是分辨率不一致。 还是有其他的裁减规则了? 也希望也给一份说明~~
2019-11-13 - 新版Canvas的createImageData方法返回的imageData.data属性不能修改?
代码片段 https://developers.weixin.qq.com/s/sXGa4ymR7Xc7 使用了2.9.0以上才支持的新版Canvas, [代码]const imageData = context.createImageData(width, height) ;[代码][代码]imageData.data[0] = 100;[代码][代码]console.log(imageData.data[0]); [代码][代码]// iOS上输出0[代码]之后还测试了 [代码]imageData.data.set([代码][代码]new[代码] [代码]Uint8ClampedArray(hasExistArrayBuffer)); [代码] [代码]Object.defineProperty(imageData, [代码][代码]'data'[代码][代码], {[代码][代码] [代码][代码]get() {[代码][代码] [代码][代码]return[代码] [代码]new[代码] [代码]Uint8ClampedArray(hasExistArrayBuffer);[代码][代码] [代码][代码]}[代码][代码]});[代码] 最终结果: 安卓上使用Object.defineProperty可劫持,也可改变数值,但是putImageData之后,再wx.canvasToTempFilePath出来的图片没有内容。并且wx.canvasToTempFilePath报错,如下图所示: [图片] 重要:iOS上三种方法都不可改变imageData.data的值。
2019-11-01 - CameraContext.onCameraFrame API设计方式存在缺陷?
在真机(小米6)上大量实测后,发现获取camera frame数据,小程序设计为推送帧数据到js引擎之中的方式(测试为30帧速度,即每秒推送30个任务过来)。 这会导致,一旦js引擎存在密集计算型任务正在执行(比如使用asm/wasm做处理),推送过来的这些回调任务就会堆积。 既然使用了onCameraFrame接口,那很多应用场景就是图像计算处理。 此时当用户点击交互时,点击事件也被堆积在后面,导致程序一直不能响应事件。 这在交互体验上就是大问题。 希望能把推送的API设计,优化为js主动拉取的方式,这就能很好的避免这个问题。
2019-09-04