百度小程序调研微信转百度

1、微信与百度小程序的区别

整体框架和微信小程序一致,遵循新建路由页面需要利用创建page模块,不能手动创建,分别有swan(相当于html文件)、js、json(页面配置文件)、css。

html中主要需要更改的部分如下:

循环调用: wx:for s-forindex下标 wx:for-index s-for-indexitem wx:for-item s-for-itemkey wx:key 无if判断 wx:if s-ifelse wx:else s-elseelseif wx:elif s-elif

百度小程序的s-if 与 s-for 不可在同一标签下同时使用

需要特殊注意的地方:

标签中的触发sumbit,微信为:<button formType=”submit”>Submit</button>百度为: <button form-type=”submit”>提交</button>

bindTap 换成 bind:tap

服务端中的wx.request等都转换成swan.request

以上搬家工具基本都支持

2、微信转百度小程序搬家工具

全局安装 npm install -g wx2

// 转化A文件夹的微信小程序为B文件的百度小程序$ wx2 ./A ./B -t

3、API能力

能力举例:获取系统信息、获取网络状态(wifi、4g等)、获取屏幕亮度(不支持修改),打电话、震动、设置剪贴板(需用户交互)、加速度获取、用户截屏事件、用户设备方向、跳转(可跳转百度app内页面)、登录、支付、订阅、分享、广告、等等。

还有AI相关,比如文字识别、文本审核(识别文本是否符合互联网发布规范,违禁词等)、图像识别、语音识别、人脸识别、但web端全不支持(开发者工具无法调试),且不确定兼容性。

举例-支付:https://smartprogram.baidu.com/docs/develop/api/open/payment_swan-requestPolymerPayment/

Html

<view class="wrap">
<view class="card-area">
<button bind:tap="requestPolymerPayment" type="primary" hover-stop-propagation="true">支付0.01元</button>
</view>
</view>

js

流程为:

1.请求下单接口获取支付所需订单号等信息,orderInfo

2.调用百度支付属性requestPolymerPayment 调起收银台,orderInfo参数传过去

3.收银台选择后进行支付,支付完成后跳转之前定义的orderInfo.payResultUrl(为回调地址)

4.成功后通过tpOrderId轮训支付状态

requestPolymerPayment(e) {swan.request({// 仅为示例,并非真实的接口地址,开发者从真实接口获取orderInfo的值url: 'https://mbd.baidu.com/xxx',success: res => {let {orderInfo} = res;// Web 态中,支付完成后跳转的页面路径(本例中跳转回当前页面:pages/index/index)// 携带 tpOrderId 参数,方便跳转后从服务端查询订单信息orderInfo.payResultUrl = '/pages/index/index?tpOrderId=' + orderInfo.tpOrderId;swan.requestPolymerPayment({orderInfo: orderInfo,success: res => {// 更新支付状态显示。// Web 态中不进入 success 回调,而是跳转回本页面,因此在onload中也要检测支付状态this.updatePayStatus(orderInfo.tpOrderId);},fail: err => {swan.showModal({title: err.errCode,content: err.errMsg});console.log('pay fail', err);}});},fail: err => {swan.showToast({title: '支付失败',icon: 'none'});}});},updatePayStatus(tpOrderId) {if (!tpOrderId) {return;}// 通过开发者服务端接口,检测支付状态swan.request({// 仅为示例,并非真实的接口地址url: 'https://mbd.baidu.com/xxx/checkPayStatus',data: {tpOrderId},success: res => {// 仅为示例,具体判断规则由开发者服务端接口返回值决定。if (res.payStatus === 'success') {swan.showToast({title: '支付成功',icon: 'success'});}}});}

举例-广告:https://smartprogram.baidu.com/docs/develop/api/ad/swan-createRewardedVideoAd/

激励视频广告,跟微信的广告有所不同的是表现形式,为新开一个页面全屏展开的视频广告,之后通过监听广告对象来获取广告的播放的各种状态,展示(show),关闭(onClose),结束(finally)等,在进行后续操作。

onLoad() {let videoAd = null;if (swan.createRewardedVideoAd) {// 完整示例可参考 RewardedVideoAd:(https://smartprogram.baidu.com/docs/develop/api/ad/swan-createRewardedVideoAd/)// adUnitId 和 appSid 需要在百青藤平台上获取,打开代码片段时注意需要更改为对应的 appid 使用videoAd = swan.createRewardedVideoAd({adUnitId: '7182333',appSid: 'f71feede'});}this.videoAd = videoAd;
}

举例-文字识别:https://smartprogram.baidu.com/docs/develop/api/ai/ocr_swan-ai-ocrIdCard/

主要功能是特定的,包括:身份证、银行卡、驾驶证、行驶证

以识别身份证为例:一些值得注意的属性:id_card_side标识正面(front)or国徽面(back)、detect_risk身份证风险类型,复印件、翻拍的身份证等的验证,默认false,开启则会在返回值中加入对应识别后的结果。

swan.chooseImage({success: res => {let image = res.tempFilePaths[0];swan.ai.ocrIdCard({detect_direction: true,id_card_side: 'front',// 暂不支持识别网络图片image, detect_risk: true,success: res => {console.log('ocrIdCard res', res.words_result);},fail: err => {console.log('ocrIdCard err', err);}});}})

举例-人脸识别(付费):https://smartprogram.baidu.com/docs/develop/api/ai/face_swan-ai-faceDetect/

上传人脸照片,返回人脸相关信息,接收base64和url地址

值得注意的参数:face_field(设置需要的返回信息,不加默认只有基本信息,token等)、face_type人脸类型(LIVE:生活照,IDCARD:身份证照片等)

一些能得到的信息

swan.chooseImage({success: res => {let image = res.tempFilePaths[0];swan.ai.faceDetect({image,image_type: 'BASE64',face_field: 'age,beauty,angle,expression,face_shape,gender,glasses,eye_status,race,quality',max_face_num: '1',face_type: 'LIVE',success: res => {console.log(res.face_list);},fail: err => {console.log( err);}});}
})

4、smartUI

组件库 Smart UI ,是对智能小程序基础组件的能力扩容,即完全适配百度小程序的ui组件库。

文档:https://smartprogram.baidu.com/docs/develop/extended/ui_component/smt-icon/

使用步骤

  1. npm install @smt-ui/component

  1. json文件中引入

{"usingComponents": {"smt-icon": "@smt-ui/component/src/icon"}}
  1. swan中直接使用

<smt-icon name="arrow-left"></smt-icon>

5、组合能力使用

此部分是百度小程序对于很多页面通用功能的整合,比如信息流模板,此模板整合了下拉刷新、滚动加载、左图右文模式等,方便开发者快速建立小程序,目前官方有14种模板

https://smartprogram.baidu.com/docs/develop/example/template/templatelist/

有很多模板依赖了smartUI,使用前先安装smartUI防止报错

使用步骤

  1. npm引入

npm i @smt-ui-template/page-feed  // 模板名称
  1. 将对应的node_modules下的模板文件拷贝到当前小程序合适的目录下(如 pages)

  1. 在json文件中配置path路径(使用后发现要配置成pages/@smt-ui-template-feed/index/index)

"pages": [..."pages/@smt-ui-template-status/index"...
]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/18193.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

百度人工智能API的调用_微信小程序。

微信小程序–智能接口 通过微信小程序开发调用百度人工智能接口&#xff0c;从而实现很多有趣的功能。 文章目录 微信小程序--智能接口前言一、百度智能云的认识1-1 注册1-2 页面说明1-3 功能初识1-4 api 接口 二、百度智能接口的创建2-1 创建接口2-1-1 点击创建新应用2-1-2 应…

百度飞桨paddlespeech实现小程序实时语音流识别

前言&#xff1a; 哈哈&#xff0c;这是我2023年4月份的公司作业。如果仅仅是简单的语音识别倒也没什么难度&#xff0c;wav文件直接走模型输出结果的事。可是注意标题&#xff0c;流式识别、实时&#xff01; 那么不得不说一下流式的优点了。 1、解决内存溢出的烦恼。 2、…

QT聊天机器人(百度语音+青云客API)

文章目录 效果前期准备设计功能?代码文字聊天代码语音聊天代码 一些细节可以改进的地方 代码已上传到github&#xff1a; https://github.com/HMY777/RobotChat 效果 运行界面&#xff1a; 请无视这个简陋的布局 文字聊天&#xff1a; 语音聊天: 为了压缩GIF大小已经裁剪…

微信小程序和百度的语音识别接口

介绍 因为项目需要,使用到了微信小程序和百度的语音接口 现在将项目中的一个小模块拿出来单独分享. 技术关键字 微信小程序百度语音接口nodejs,expressfluent-ffmegp 环境 windows 10vs code 1.20.1微信小程序开发工具 1.02.1802270花生壳-提供域名和内容穿透-用于方便本地…

你想不到,韩国女团最喜欢的英文单词是这些

如果你也想赚钱&#xff0c;实现财务自由&#xff0c;但接触不到优质的人脉和资源&#xff0c;可以到公June浩&#xff1a;成长home&#xff0c;发"资源" &#xff0c;就会看到我吐血整理的168条保姆级零基础吸金秘籍&#xff0c;跟着我一起亲历毕业5年、创业3年、从…

太逼真!这个韩国虚拟女团你追不追?

“她们看上去太像真人了”&#xff0c; 韩国虚拟女团MAVE的首支MV和打歌舞台引发网友阵阵惊呼。现在&#xff0c;她们的舞蹈已经有真人在挑战了。 这一组虚拟人的“逼真”倒不在脸&#xff0c;主要是MAVE女团的舞台动作接近自然&#xff0c;不放近景看&#xff0c;基本可以达到…

NBA球星数据可视化分析-FineBI

目录 一、实验&#xff08;实训&#xff09;目的 二、实验&#xff08;实训&#xff09;原理或方法 三、仪器设备、材料 四、实验&#xff08;实训&#xff09;步骤 五、实训记录及结果 <---------------------------------木易白驹----------------------------------…

【第十一届泰迪杯数据挖掘挑战赛】A 题:新冠疫情防控数据的分析 思路+代码(持续更新)

【第十一届泰迪杯数据挖掘挑战赛】A 题&#xff1a;新冠疫情防控数据的分析 思路代码&#xff08;持续更新&#xff09; 问题背景解决问题代码下载数据分析Task1Task2Task3Task4 问题背景 自 2019 年底至今&#xff0c;全国各地陆续出现不同程度的新冠病毒感染疫情&#xff0c;…

【数据博彩】如何使用大数据机器学习预测NBA比赛结果?

引言 伴随着大数据时代的来临&#xff0c;机器学习、深度学习、人工智能等越来越多的出现在我们的视野中&#xff0c;数据技术正在颠覆着包括体育和博彩在内的各行各业&#xff0c;本文着手于使用大数据机器学习预测NBA比赛结果&#xff0c;希望给相关行业从业者和爱好者带来启…

用Python采集球员信息,成功预测到了球赛胜负?

前言 嗨嗨&#xff0c;最近看球赛的朋友多吗 emm怎么说&#xff0c;我对这个虽然兴趣不是很大 但是还是想跟朋友赌赌&#xff0c;自己对这些球员也不是很熟悉&#xff0c;索性叫我的好同事帮我用Python采集了各国球员的一些信息&#xff0c;没料到竟预测成功了&#xff01; …

大火的ChatGPT能为自动驾驶带来什么?

/导读/ 最近的科技圈&#xff0c;大家都被微软推出的ChatGPT刷屏&#xff0c;作为工智能公司OpenAI于2022年11月推出的聊天机器人&#xff0c;其能够通过学习和理解人类的语言来进行对话&#xff0c;还能根据聊天的上下文进行互动&#xff0c;甚至能完成撰写邮件、视频脚本、文…

神器Ai工具箱全集,不用找了你想要的Ai都在这里。

周报生成器 https://weeklyreport.avemaria.fun/zh AI写作 README 生成器 https://readme.rustc.cloud/zh AI写作 AI做决定 https://rationale.jina.ai AI助手 AI自动后端 https://www.autobackend.dev AI代码 AI上色 https://palette.fm AI图设 AI简历 https:…

AI面试必刷算法题 附答案和解析 --持续更新中

面试中发现很多同学一股脑优化、润色项目经历&#xff0c;但聊到基本的算法&#xff0c;反而会一脸懵X&#xff0c;得空整理下算法题给大家&#xff0c;希望对你有帮助。 1. tail(head(tail(C))) ( ) 已知广义表: A(a,b), B(A,A), C(a,(b,A),B), 求下列运算的结果:&#xff08…

google大模型Bard下场【谷歌版本的ChatGPT】

本文需要会可学上网&#xff0c;不会直接拉到底部 google大模型开始下场了https://bard.google.com/,点击链接用谷歌账户登录就能使用 步骤 第一步&#xff1a;如果你有谷歌账号&#xff0c;你所做的就只是登录【一个谷歌账号&#xff0c;可以帮你在大部分地方免登录&#x…

当 chatGPT 被职场 PUA ,笑麻了

大家最近是不是被 chatGPT 刷屏了&#xff1f;简单来说&#xff0c;chatGPT 是一个智能聊天引擎。 那 chatGPT 和小爱同学、 siri 有什么区别呢&#xff1f; 如果体验过的朋友&#xff0c;能感受到区别还是很大&#xff0c;chatGPT 的智能表现过于优秀&#xff0c;远远超过了这…

关于ChatGPT中文版,看看Openai官网怎么说!

目前&#xff0c;OpenAI官网上仅提供了英文版的ChatGPT模型和API。这意味着官方只提供了英文对话生成的支持和资源。对于中文用户来说&#xff0c;OpenAI官网上并没有官方发布的ChatGPT中文版本。 然而&#xff0c;尽管OpenAI官网未发布ChatGPT中文版&#xff0c;一些第三方开发…

您遇到过网页抓取时被封IP的情况吗?

​网站如何检测网络爬虫&#xff1f; 网络爬取和网络抓取相辅相成&#xff0c;对于公共数据收集来说至关重要。电子商务企业会使用网络抓取工具从各个网站收集新数据。然后&#xff0c;将抓取到的信息用于改进业务和营销策略。 对于那些不知道如何避免抓取网站时被封IP的人来说…

检查IP或端口是否被封

遇到IP连接超时&#xff0c;想要确认是否被封&#xff0c;可通过以下几个方式检验&#xff1a; IP可用性检测工具 - Tools大全在线工具 Ping, mtr, dig and TCP port check from multiple locations 端口扫描 - 站长工具

爬虫ip在使用中被封了如何解决 ?

爬虫是最近几年非常热门的互联网抓取技术&#xff0c;能够帮助数据公司进行大数据分析&#xff0c;极大的降低人工成本。 那么在爬虫进行批量采集的时候&#xff0c;有时候ip地址也会被封&#xff0c;这具体是什么原因引起的&#xff1f; 为了能够高效的爬虫工作&#xff0c;…

如何预防服务器IP被封

一:被流量攻击封堵 在日常使用服务器时&#xff0c;一定要及时的注意网络流量攻击&#xff0c;一旦自己的网站遭到攻击&#xff0c;而服务器的IP是没有防御的&#xff0c;可能就会导致服务器IP遭到封堵&#xff0c;IP被封堵&#xff0c;一般情况下是封堵3个小时左右&#xff0…