作者文章

fwq

FWQ
小程序
浅谈小程序开发中蓝牙连接错误分析及解决方法
当打开手机蓝牙后去连接蓝牙,会出现连接不上情况,报错10003,此时不管是重启小程序还是重新关闭打开蓝牙,都不能正常连接蓝牙设备。10003是微信蓝牙连接经常碰到的问题,微信官方给出的文档中就简单的描述为“connection fail”,备注为“连接失败”。然而,实际上出现连接失败的状况有很多,比如蓝牙设备被占用或者上次蓝牙连接未断开导致无法连接;根据deviceId连接蓝牙时,蓝牙设备未开启或异常导致无法连接。 既然是因为没有断开蓝牙连接导致的,那就在关闭手机蓝牙时去断开蓝牙;然而,在蓝牙状态监听中调用断开连接函数,返回错误(10001(not available)当前蓝牙适配器不可用)。 没有找到现成的解决方案,就只有跟踪代码了,在关键方法中加日志;发现,在顶部栏关闭手机蓝牙时,小程序中无法断开蓝牙连接,报错(10001(not available)当前蓝牙适配器不可用);后来又在偶然情况下,清除了蓝牙设备的绑定关系,重新进入蓝牙搜索页面,发现这样操作后竟然能成功连接上蓝牙。 上述问题定位中,可以发现应该是没有断开上次蓝牙连接导致的,重新搜索蓝牙以后再连接可以解决该问题;于是只能考虑重新搜索蓝牙后再连接的方法,在出现10003错误后,重新搜索蓝牙,并且在找到对应的设备后进行蓝牙连接;修改代码反复测试,根据日志显示,确实是出现了10003,然后进入搜索模块,搜到指定设备后进行蓝牙连接,之后连接成功,这个方案解决了该问题。 wx.createBLEConnection({ deviceId: deviceId, success: function (res) { //连接成功 initnotifyCharacteristic(notifyCharacteristic);// 指定特征值,并进行数据交互 // 已连接 _bthConnectStaus = BTH_STATUS_CONNECTED; }, fail: function (res) {// 连接蓝牙失败 _bthConnectStaus = BTH_STATUS_DISCONNECT; // 回调上层蓝牙连接失败 callback(res.errCode, connectfailed) } 登录后复制 然后根据fail中的res.errCode判断是否10003。 if(code ==10003) { //  部分android手机特殊情况下需要重新搜索才能连接蓝牙,此时报错10003,进行蓝牙搜索(ps:原因可能是系统中将手机蓝牙关闭导致连接状态不能改为断开,导致下次无法连接同一个设备) var timeId = setTimeout(function () { stopSearchBluetooth(); callback(false, timout) }, 5000); // 最多搜索5s searchBluetooth(function (res) { if (res.devices === undefined ||res.devices === null) {…
2024-11-25 阅读全文 →
FWQ
CMS教程
删除织梦所有待审核稿件sql语句是什么
删除织梦所有待审核稿件sql语句是什么? 先提醒一下 archives是dedecms主表 addonarticle 新闻信息表 推荐学习: 在dede后台”系统-》SQL命令行工具”运行下以命令即可(注意,运行后未审核的数据全被删除,小心使用) 代码如下: delete from `dede_archives` where arcrank=-1; 登录后复制 在phpmyadmin中运行 条sql语句帮你删除dede后台所有待审核稿件 所有未审核文档全部删除 lx是表的前缀 代码如下 DELETE `lx_archives`.*,`lx_addonarticle`.* FROM `lx_archives` LEFT JOIN `lx_addonarticle` ON `lx_archives`.id = `lx_addonarticle`.aid WHERE `lx_archives`.arcrank = '-1' 登录后复制 小编觉得后面删除更干净一些,因为后者删除了所有表中等待审核的数据哦。 以上就是删除织梦所有待审核稿件sql语句是什么的详细内容,更多请关注米云其它相关文章!
2024-11-25 阅读全文 →
FWQ
CMS教程
使用Node.js的Readline和Socket.io实现实时聊天
Node.js 在其标准库中有一个未被充分重视的模块,但却非常有用。 Readline 模块按照包装盒上的说明执行操作:从终端读取一行输入。这可用于询问用户一两个问题,或在屏幕底部创建提示。在本教程中,我打算展示 Readline 的功能并制作一个由 Socket.io 支持的实时 CLI 聊天室。客户端不仅可以发送简单的消息,还可以使用 /me 发送表情命令,使用 /msg 发送私人消息,并允许使用 /nick。 关于 Readline 的一点 这可能是 Readline 最简单的用法: var readline = require('readline'); var rl =…
2024-11-25 阅读全文 →
FWQ
小程序
微信小程序如何开发一款小游戏?(实战教程)
如何快速开发一款火爆的小游戏?“火爆”是一个偏运营的词,今天介绍的内容可能更倾向于技术方面,即如何利用微信的开放能力开发一款小游戏。小游戏上线120天时发布了几个重要的消息,其中有几个数字可以用来描述“火爆”这个词。微信小游戏正式允许第三方开发者发布的时间是在3月3日,而现在几款小游戏的用户已经过亿,安卓月流水过千万的也有数款小游戏,大家应该已经体会到了微信小游戏的火爆程度。 与火爆相关的两个知识,一个就是如何开发?首先要利用好微信的社交相关性,微信去中心化的情景下社交分享互动是非常重要的,因为没有传统流量分发的总入口。第二个是操作的简便性,我们根据游戏成为爆款游戏后的数据才能推出这两个结论,并不是说具备这两个特性就一定能开发出一款火爆的游戏。 什么是小游戏? 首先为大家介绍一下什么是小游戏:小游戏特指微信小游戏,是小程序的一个子类目,可在微信内被便捷地获取和传播,即点即玩,具备出色的用户体验。在开发的视角来看,小游戏是一个基于Canvas/WebGL + 微信社交开放能力的新平台。在框架上看分为三层,是一个典型的分层架构。微信中有一个小游戏的Runtime去运行小游戏,而OS本身可能会涉及到不同类的设备。 如果放大小游戏的Runtime可以看到很多的细节,第一就是游戏逻辑,也就是与平台无关的游戏逻辑的开发。第二部分是游戏引擎,大部分会用到一些引擎的工作流、一些各种系统封装好的高层的API。第三部分是weapp,小游戏的框架是参考了webview的框架,但其实它的底层不是webview,而是webview精简优化过的平台,小游戏有的只是与核心相关的一些渲染的API。这里的weapp-adaper是把小游戏的能力适配到与webview更接近的环境,让更上层的游戏或引擎本身能够更快速地集入到平台中。 微信的Runtime对外暴露的都是微信的API,所有的能力都是通过微信API发布出去的。底层最基本的能力是渲染相关的,即Canvas 2d和WebGL。其他一些微信相关的能力是另外一部,所以小游戏在架构上和小程序是有差别的,但用户体验起来没有太大的区别。小游戏是没有页面概念的,在实现上也不完全是webview,其中不必要的部分已经被去掉了。 总的来说小游戏的入口为game.js,游戏可以利用底层的一些能力将游戏的整个界面绘制出来。配置文件为game.json主要用来配置小游戏是横屏还是竖屏,小游戏的全局对象game Gobal类似于webview中的window对象,同时支持javascript语言。但是小游戏有一个重要的一个限制是禁止动态执行代码,开发者必须先提交审核,在审核通过后才可以上架给普通用户。另外,小游戏包括引擎的代码量比较大,所以限制大小比小程序要大,首包限制大小为4M。 下面来说一下Webview Adapter,它的初衷是为了让游戏开发者更好地熟悉我们的平台,所以我们的平台在能力上会尽可能地与webview做一些适配,其实这个适配也是很简单的一层。比如说我们在浏览器里面使用image对象创建一个图片,而在小游戏里是通过wx.createimage来创建的,在代码中需要做一个简单的适配。比如说Canvas、Document都是在Adapter中实现的,大家可以研究链接中的代码。其中有一些优化的版本,之后官方不会继续维系这个Adapter,因为我们会更专注于底层能力的建设。如果大家已经比较熟悉这个平台的话,就会比较容易地开发游戏。比如Document这个对象在小游戏框架本身中跟普通对象是没有区别的,它是Adapter做的一个简单的适配。 下图是小游戏能力的概览,最近小游戏能力的迭代比较快,部分能力还没有罗列出来。比如最近刚发布的游戏圈、健康系统相关的一些接口,都还没有列进去。我们先看一下基础能力,在渲染这部分WebGL1.0和Canvas 2D都是支持的,这里的Canvas更接近于浏览器里面的标准。同时,这里提到的可控帧率的概念,如果小游戏在后台运行的话,可以尽量将帧率降低。在多媒体部分,小游戏还不能像小程序一样实现实时的音频视频流,这是我们在后续要进一步支持的。网络IO的部分与小程序也是类似的,我们也提供了一些UI的组件,比如说拉起键盘,模态对话框等。 小游戏的社交开放能力现在已经对外开放了。其中最重要的一个能力是开放域,将微信的好友关系列开放出去,给开发者一起使用,但也存在着一些限制。因为小游戏去中心化的特点,分享这一部分也是非常重要的,开发者要考虑如何将这个能力利用起来。在代码方面,因为首包限制是4兆,但部分小游戏的代码量可能比较大。我们最近也在规划一个分包的能力,异步加载代码,但这个代码是一定要经过我们审核的。 如何开发一款小游戏? 那么如何开发一款小游戏?因为我本人也只是开发过一些简单的游戏,并不是专业进行游戏开发,所以接下来我会更多地介绍一下如何利用微信的能力来开发小游戏。 选择小游戏引擎 首先在开发游戏时要选择引擎,我们与引擎商也有着比较密切的合作,开发小游戏的引擎一定要是适配的。比如在底层,一开始引擎可能只支持原生的游戏,在微信小游戏上就要做一些适配,依赖浏览器特有的能力。Cocos Creator、Egret Engine、LayaAir Engine这三个引擎已经支持了小游戏的开发,网上也有相应的文章介绍如何发布到微信小游戏的平台。 设备/环境适配 有关设备管理的适配,小游戏会有API提供获取屏幕的宽高、设备像素比等能力。在小游戏开发完成后,在开发者工具也可以发起真机测试的请求,微信提供了不同设备的测试集群,帮助开发者提前去发现问题。基础库提供的wx API本身是一个不断迭代更新的过程,对于使用了新能力的小游戏,需要做低版本兼容。比如在检测到不支持新 API的低版本允许有损服务用户。同时,如果某个低版本的用户占比较少,可以考虑在管理后台直接配置小游戏要求的基础库最低版本,当然也意味着这一部分用户在接触到这个小游戏时,微信客户端会弹出一个要求用户更新到微信新版本才可使用该小游戏的提示,如果不更新可能就会失去这个用户。 微信登录…
2024-11-25 阅读全文 →
FWQ
CMS教程
帝国cms定时发布怎么设置
帝国cms中设置定时发布的步骤:创建文章/信息,选中”启用计划发布时间”复选框。从日历中选择计划发布时间。保存设置,文章/信息将在指定时间自动发布。 帝国CMS定时发布设置教程 问题:如何设置帝国CMS定时发布? 回答:在帝国CMS中,可以通过以下步骤设置定时发布: 步骤 1:创建文章或信息 登录帝国CMS后台。 进入文章或信息管理模块。 创建一篇新文章或信息。 步骤 2:设置发布时间 在发布选项中,找到”计划发布时间”字段。 选中”启用计划发布时间”复选框。 从日历中选择您希望文章或信息发布的日期和时间。 步骤 3:保存设置 单击”提交”按钮保存文章或信息。 其他设置: 发布粒度:您可以选择文章或信息发布的时间精度(例如,分钟、小时、天)。 发布时间间隔:如果您希望文章或信息定期发布,可以设置发布间隔(例如,每小时、每天、每周)。 发布状态:在计划发布时间之前,文章或信息将处于”等待发布”状态。在指定时间后,它将自动发布。 提示: 请确保您服务器的时间设置正确。 定时发布功能需要在帝国CMS后台启用。 如果您遇到任何问题,请参考帝国CMS官方文档或寻求技术支持。 以上就是定时发布怎么设置的详细内容,更多请关注米云其它相关文章!
2024-11-25 阅读全文 →
FWQ
CMS教程
帝国cms刷新失败怎么办
帝国cms刷新失败的原因包括:权限不足、目录不存在、存储空间不足、.htaccess 文件配置错误、第三方插件冲突、模板文件损坏、数据库连接问题、服务器资源不足和其他问题。 帝国CMS刷新失败怎么办? 帝国CMS刷新失败的原因有很多种,下面一一列出: 1. 目标文件或目录权限不足 确保目标文件(index.shtml、index.html等)和目录具有适当的读写权限。 2. 目录不存在 验证目标目录是否已创建。某些主题可能需要额外的目录,例如静态页面目录。 3. 存储空间不足 确保服务器上有足够的存储空间来生成静态页面文件。 4. .ht 文件配置错误 检查 .htaccess 文件是否包含语法错误或与服务器配置不兼容的规则。 5. 第三方插件冲突 禁用任何已安装的插件,然后尝试刷新。如果刷新成功,则逐个重新启用插件,以识别导致问题的插件。 6. 模板文件损坏 重新上传原始模板文件,覆盖损坏的文件。 7. 数据库连接问题 检查数据库连接设置是否正确。如果服务器上安装了多个…
2024-11-25 阅读全文 →
FWQ
小程序
微信小程序没声音怎么解决?
微信小程序没声音解决方法: 1、打开微信后,点击右下角的我, 2、接下来,在这个界面点击设置 3、进入设置后,点击帮助与反馈 4、进入帮助与反馈界面后,点击右上角的小扳手 5、在这个界面点击故障修复 6、里面有很多类目可以选择,选择小程序并点击,等待系统自动修复即可。 以上就是微信小程序没声音怎么解决?的详细内容,更多请关注米云其它相关文章!
2024-11-25 阅读全文 →
FWQ
CMS教程
帝国cms网站模板有哪些
帝国cms 提供多种网站模板,包括企业、电商、新闻、个人、移动、社区和学校模板。选择帝国cms 模板时,请考虑网站类型、用户体验、响应式设计、功能性以及定制选项。 网站模板清单 帝国cms 是一款功能强大的 PHP 内容管理系统(CMS),提供各种预先构建的网站模板来满足不同类型的网站需求。以下是帝国cms 网站模板的清单: 企业模板: Empire企业模板:适用性强,适用于各种行业和企业。 Deluxe企业模板:现代时尚,注重用户体验。 Classic企业模板:简洁专业,适合企业形象展示。 电商模板: Shop企业模板:功能齐全,适用于在线商店和电子商务网站。 Shop Deluxe模板:美观大方,增强产品展示效果。 Shop Classic模板:典雅简约,适合小型在线商店。 新闻模板: News信息模板:面向新闻、媒体和信息类网站。 News Deluxe模板:现代时尚,内容组织清晰。 News Classic模板:简洁明了,重点突出新闻内容。 个人模板: Personal个人模板:适用于个人博客、作品展示和简历。 Personal…
2024-11-25 阅读全文 →
FWQ
CMS教程
WordPress后台乱码烦恼?试试这些解决方案
WordPress后台乱码烦恼?试试这些解决方案,需要具体代码示例 随着WordPress在网站建设中的广泛应用,许多用户可能会遇到WordPress后台乱码的问题。这种问题会导致后台管理界面显示乱码,给用户的使用带来极大困扰。本文将介绍一些常见的解决方案,帮助用户解决WordPress后台乱码的烦恼。 修改wp-config.php文件 打开wp-config.php文件,添加如下代码: define('DB_CHARSET', 'utf8'); define('DB_COLLATE', ''); 登录后复制 这段代码指定了数据库字符集为utf8,解决了大部分乱码问题。如果问题依然存在,可以尝试修改wp-config.php文件中这两行代码,将其改为: define('DB_CHARSET', 'latin1'); define('DB_COLLATE', ''); 登录后复制 保存文件并刷新WordPress后台,查看是否解决了乱码问题。 修改主题文件 有时候乱码问题可能是由于主题文件的编码方式导致的。可以以utf-8格式重新保存主题文件,具体操作如下: 使用文本编辑器打开主题文件(如header.php、footer.php等) 转至“文件”菜单,选择“另存为”,在编码方式中选择utf-8 保存文件后上传至WordPress主题目录,替换原文件 修改数据库字符集 如果乱码问题还没有解决,可以尝试修改数据库的字符集,具体操作如下: 登录phpMyAdmin,选择要操作的数据库 点击“操作”选项卡,在“数据库设置”中修改字符集为utf8(如utf8_general_ci) 确认修改并刷新WordPress后台界面 修改WordPress后台语言字符集 有些用户可能会遇到WordPress后台固定字符集为ISO-8859-1导致乱码的问题。可以按照以下步骤修改后台语言字符集:…
2024-11-25 阅读全文 →
FWQ
小程序
微信小程序websocket人如何实现SpringMVC+Spring+Mybatis的实例
这篇文章主要介绍了 微信小程序websocket实现springmvc+spring+mybatis的相关资料,这里提供实现思路及实现代码,需要的朋友可以参考下 微信小程序实现websocket步骤: 后台:  1. 添加maven依赖  2. 创建握手  3. 创建处理器  4. spring配置(xml配置或javabean方式配置任选一种) 登录后复制 微信小程序:  1. 书写连接 登录后复制 java后台 1.添加maven依赖  <!-- websocket -->   <dependency>     <groupid>org.springframework</groupid>     <artifactid>spring-websocket</artifactid>     <version>${spring.version}</version>   </dependency>   <dependency>     <groupid>org.springframework</groupid>     <artifactid>spring-messaging</artifactid>     <version>${spring.version}</version>   </dependency>   <!--…
2024-11-25 阅读全文 →