‘壹’ mui 即时通信,im问题汇总.环信,融云怎么集成
即时通信IM接入应用/系统,我们用的是容能云,PaaS云服务开放平台,集成方式是通过云端开放API/客服端SDK接口接入,容能云支持Android、iOS、Web、PC多平台。减少了不少开发时间,用了这么久感觉不错,按需取用空间容量,成本上也很好控制。
‘贰’ 用H_ui框架怎么从数据中带到html页面上数据
数据主要是用mui 封装好的ajax获取json数据,然后用js拼接,把html代码加载到页面。
mui框架基于htm5plus的XMLHttpRequest,封装了常用的Ajax函数,支持GET、POST请求方式,支持返回json、xml、html、text、script数据类型; 本着极简的设计原则,mui提供了mui.ajax方法,并在mui.ajax方法基础上,进一步简化出最常用的mui.get()、mui.getJSON()、mui.post()三个方法。
举个简单的例子:
varaddress_url=htts+'mobile/index.php?act=member_address&op=address_list';
mui.post(address_url,{key:ukey},function(data){
varaddress_list=data.datas.address_list||{};
for(vari=0;i<address_list.length;i++)
{
if(address_id==address_list[i].address_id)
{
address_html='<aclass="mui-navigate-right"onclick="add_new_address()">';
address_html+='<span>姓名:'+address_list[i].true_name+'</span>';
address_html+='<spanclass="xxdz">详细地址:'+address_list[i].area_info+''+address_list[i].address+'</span>';
address_html+='<span>联系电话:'+address_list[i].mob_phone+'</span>';
address_html+='</a>';
document.querySelector('#shrxx').innerHTML=address_html;
document.querySelector('input[name="address_id"]').value=address_list[i].address_id;
document.querySelector('input[name="area_id"]').value=address_list[i].area_id;
document.querySelector('input[name="city_id"]').value=address_list[i].city_id;
offpay();
}
}
},'json')
‘叁’ MUI.ajax是怎么获取数据的
$.ajax({ type:"post", //请求方式 url:"./test", //发送请求地址 data:{ //发送给数据库的数据 username:$("#username").val(), content:$("#content").val() }, //请求成功后的回调函数有两个参数 success:function(data,textStatus
‘肆’ MUI除了做移动APP界面,还可以做普通手机网站吗
文/罗超 爱科技网创始人 授权搜狐IT发布 中国移动低调上线飞信公众平台这事儿,在这个微信收费之争的风口,被很多人认为是中移动对腾讯的反击,只是“照着老虎画成了猫”。被诟病的地方有两点:一是界面山寨微信公众平台。二是认证账号流程复杂。笔者对以上吐槽持保留意见。 在飞信推出公众平台之前,一直视微信为眼中钉的新浪微博已在内测“微博聚合信息推送平台”。阿里巴巴旺信在愚人节也被爆出正在谋求旺信公众平台。靠山寨 Evernote 起家的有道云笔记也于近期推出了公众账号页面。笔者估计网络、搜狗等巨头这段时间应该也在紧锣密鼓地跟进中。巨头们正在做的这些,难道仅仅是为了山寨微信? 去年关于微信是媒体还是平台的已经不少。其实这是一个没有答案的问题。因为微信是一个承载基础通信的工具,也是一个具备互动属性的媒体,还是一个可以无限扩展的平台。这几点,都在微信公众平台上得到了体现。微信公众平台的本质是什么?伴随着微信自定义菜单的推出,笔者更加确定微信公众平台实际上是跟原生 APP 应用市场、WEB APP 同样级别的“类微信 APP ”市场。巨头们在做的这些事情,都是在利用自家的用户资源,建设类微信 APP 市场,以防再次失去第三个移动互联网大入口。 一、移动互联网的入口之争上一个入口丢失,是在 App Store 出现时 昔日移动通信行业的话语权核心运营商错失入口控制机会。传统互联网公司包括搜索引擎巨头也都被苹果抢占应用市场入口。Google 用安卓帮大家抢回部分入口,于是有了 Google Play、Mobile Market、应用汇、豌豆荚、网络手机助手等应用分发市场的机会。第二个入口浏览器也是传统的互联网入口,内容还是 WEB ,通过手机浏览器搬到移动设备上。 不过浏览器的往日风光不在,网络数据显示,去年 Q3 手机用户平均媒体时长,APP 占 80% ,浏览器不到 20% 。从流量来看,浏览器产生的流量也已远低于各 APP 的总流量。移动互联网一直存在 APP 和 WEB 之争。比较有意思的是,在移动互联网究竟是 WEB ,还是 APP ,业界尚无定论之时,又有一个第三者将加入他们:类微信 APP 。它极有机会成为移动互联网第三种入口,第三种内容提供形态。如果再做移动互联网流量或者用户时长统计,把类微信 APP 单独计算,应该会超两位数。 二、类微信 APP :一种基于 WEB 并加上诸多限制的 APP 类微信 APP 是什么呢? 这是我的理解:由具备异步交互功能的 APP 所承载,第三方提供商接入,且以账号的形式面向该 APP 已有用户,提供功能和服务的软件。典型的微信公众账号有虎嗅网的文章查询、大众点评提供的餐馆查询。微信 APP 是一种非常独特的应用形式。它有着自己的显着特征,这一定程度成就了它无法替代的优势。微信 APP 与 WEB APP 和原生 APP 有什么本质不同吗? 原生 APP 的优点很多,如更加个性化的功能和交互方式,操作系统级别的性能优化,对离线数据的支持更加适合无线的网络状况以及更加符合用户的使用习惯。但是也有一个弱点:开发成本及门槛较高。虽然是基于传统编程语言如 C 、JAVA 的,但是在产品设计、编程方式、测试和部署等方面,APP 编程仍然需要专门的学习和专门的人才。 WEB APP 最大的优势是基于浏览器的体验因而可移植极强,不管什么平台,什么屏幕,只需开发一次。适配工作绝大部分由浏览器去做。而微信 APP ,如果仅仅是运营一个微信公号,开发成本几乎为 0 。具备开发能力的也可以进行个性化的开发,如自动回复,自定义菜单。这种开发技术是面向微信平台的 API 进行 WEB 开发。 微信在呈现微信公众平台账号时,也会结合浏览器技术来进行展示。所以这里可以认为微信 APP 是一种 WEB APP ,不过已经绕开了浏览器的入口。但是它又对 WEB 应用进行了诸多限制,甚至是阉割。交互方式极度有限,除了最古老的数字或语音回复的“会话”类交互方式外,自定义菜单也仅仅支持菜单及“上拉菜单”,以及简单的表单。这让其足够简单,但是也限制了一些功能。不需考虑任何屏幕适配的问题,微信已做好屏幕适配。 其实,iPad 版微信至今都还没推出。类微信 APP 在手机上运行的程序极少,更多是内容的呈现。而需要执行的程序,都是在云端进行。所以,我们可以认为其是云端 APP 。对本地设备的计算能力和能耗要求低。这也有一定劣势,如富媒体的展现。如何解决本地程序执行的问题,微信采取了一个这种的方式:点击超链接,直接调用其浏览器引擎,这时候进入 WEB APP 的交互方式——有一定限制。限制颇多,但微信公众账号仍然覆盖了几乎所有应用领域。游戏、社交、CRM、工具、媒体、地图、电商、理财等。 部分公众账号为了绕开限制也提供了一些创新的交互方式,比如逻辑思维,罗振宇发布一段语音,回复语音中两个文字,得到一篇好文章;虎嗅网最近甚至实现了微信号与虎嗅官方账号的绑定功能。微信 APP 是基于 WEB APP 的技术,但是又进行了大量的阉割,实现了比App Store还要严格的控制。 乔布斯的产品除了“封闭”外,“控制”也是一大特色。硬件、系统、APP、内容、APP Store、iTunes 甚至苹果体验店,都体现了乔布斯的“控制”欲望。Apple 的用户体验美名与这个控制不无关系。而张小龙和他的微信,将这个“控制”发挥到了极致。 所以笔者一直认为,张小龙大神深得乔布斯思想精髓,结合自身情况进行了独到好处的应用。你可以否定张小龙的控制结果,但微信仍吸引了大量的第三方涌入。 做微信个性化开发的朋友告诉我,接入资格审批排队要 5 天以上。离 App Store 的一周甚至 10 天有距离,但也是一个很长的时间。笔者的微信公众账号 SuperSofter 发送消息时,从前期排队 30 秒到现在排队三分钟甚至 20 分钟都有。腾讯暂时没有公布微信公众账号数,公众账号发布消息数。但这肯定是惊人的数字。那么微信的魔力在哪里呢?或者说微信的优势究竟在哪里? 三、类微信 APP 为何可以成为第三大移动互联网入口? 1、对第三方来说,用户是他们趋之若鹜的基础 4 亿的用户数量是一个原因,但微博还超 5 亿呢。不过微信这 4 亿用户是真实的用户。每一个微信用户身份都是确定的。不是实名制,但是每个账号背后一定是一个真正实在的人。这解决了微博存在的僵尸粉问题。吸引用户登录,增加用户黏性,让用户成为自己家的,是绝大部分网站、应用想解决的问题。微信则天生具备账号管理的功能。普通 APP 及 WEB APP 的用户不登录则不确定其身份,微信用户在使用你家公众账号时,一定是登录的。微信的类 OAUTH 类账号 API 暂时没开放,但是已经有办法可以实现微信账号与网站账号的绑定了。 从信息到达率来说,微信消息达到率接近 100% 。一条微博,可能会淹没在“信息流”中。但是微信则是推送到用户手机,用户必须一条条点击阅读。微信比较狠,一直不推出“全标为已读”的功能。之前很多观点认为微信这种方式会赶走用户,因为这是骚扰。这一点微信一方面限制微信公众账号每天只能发送 1 条信息,另外也让用户和公众账号“自选择”,你如果真骚扰到了用户,其删除你也是非常容易。 还有一个是门槛。微信公众账号的门槛非常低。只有有 QQ 号或者邮箱就可以开一个公众账号。对普通账号来说几乎不存在开发及维护成本。专注做好运营和推广即可。微信二维码在这个环节还起到很大推动作用。 2、对于用户来说,微信 APP 虽然过于简单,但是它可以简单地满足需求登陆微信就够了,不需要在不同应用重复登录。尤其是在移动端还没有“微博一键登录”这种成熟的解决方案时,打字又不方便,登录是痛苦的体验。微信公众账号,也不需要下载安装。添加账号即可使用服务了。这比 WEB APP 或者 Chrome OS 的应用添加还要简单。 对用户来说微信最大的变革还是“交互方式”。这是与传统的 HTTP 协议完全不同的“对讲机”异步交互方式。与好友通信时,发文字消息和语音消息,跟发短信和打电话的区别是你不用担心信号不好。地铁里信号不好,消息没发出去,等你走出地铁,消息已经发出去了。如果是打电话遇到信号问题呢?断线,得再拨号。除了对讲机交互,微信还提供表情、位置、名片、视频、实时视频等通信内容(谁知道以后还有什么)。在信号好的地方如 WIFI ,又可以选择使用实时通话这类与手机通话几无二致的通信方式。所以微信带来的通信方式,完全不是“免费的短信彩信”这么简单,而是一种变革。 同样,在通过浏览器进行交互的时候,如果是访问一个网站,或者发表一个,你得等。等到结果返回。如果遇到网络问题,只能说“shit”然后点击刷新按钮,再试;如果不行,继续点击“刷新”。微信呢?在你向公众账号发了一个信息后,你可以将手机装进口袋。等你拿出来的时候,如果你不是在撒哈拉沙漠应该已经发出去了。微信在遇到网络问题时,可以不断尝试,直至成功。HTTP 是同步的交互,发了请求得等服务器端返回。(虽然 AJAX 有点异步的意思,但是跟微信还是不一样)。微信则是真正的异步: 我发了消息给你就不管了,你总会收到。上述讨论有点偏技术,用户感知就是简单了。 简单对大部分人来说意味着不用记忆,不用学习,不用看操作手册。可能这对极客们意味着不好用,虎嗅也有用户在骂微信难用,但是请理解以及接受这个事实:只有小米是专为发烧友而生的。另外微信虽然简单,但是其逐步开放的第三方接口,日渐丰富的第三方账号,以及微信自身与支付环节、与搜索等基础功能的打通,将使得微信成为一款简约但不简单的应用平台。这都会让用户更多地使用微信。 根据“用户碎片时间守恒”的理论,用户用微信及微信公众账号越多,使用其他 APP 时间会变少。最新统计数据显示微信每日启动次数已经超过了微博、浏览器等常规 APP 。 3、对于腾讯来说,有了商业化的机会现实是微信已经通过第三方APP分发在商业化了。 使用微信时,点击一下“ ”号,出来的东西没有什么特别的,除了第二个“ ”号。是什么?点击后显示“添加更多推荐工具”。再次点击后出来的是微信推荐的一些APP,除了腾讯自有的,还有美丽说、唱吧、豆果美食、POCO 美食等 APP 。而比较“巧合”的是,这些 APP 也是腾讯的应用市场“应用宝”下面推荐的应用。这难免让人联想。微信与原生 APP 有什么关系呢? 在移动互联网的现阶段,赚钱的并不多,游戏是一个;还有就是应用分发市场或者周边的一些产品。例如最近被阿里收的友盟以及李开复的其他两个投资品应用汇和豌豆荚,拟上市但不融资的 91 无线。应用不赚钱,但是应用要分发要获取用户,每个成本却超过了 3 元。这对微信这类有 4 亿用户的产品来说,将“推荐工具”放到更明显的位置,躺着也将钱赚了。——运营商嚷着要收钱的时候,微信的商业化压力会更大。 第三方工具推荐,对微信来说仅仅是它的用户基础带来的红利。且现在的第三方 APP 推广是收费还是资源置换也不可知。但微信 APP 市场则带来了极大的想象空间。微信 APP 市场:微信既可以通过第三方账号的付费订阅提成,也可以通过应用内收费提成。说市场,肯定得有交易。 微信公众账号的交易在哪里呢?除了微信公众账号将来可以进行付费订阅外(与用户花钱在 App Store 购买 APP 类似),还有一个更大的空间是应用内收费。笔者之前谈过 APP 的免费是趋势(去年 2/3 的 iPhone 应用免费,安卓比例更大)。而应用市场正是靠应用收费获取提成的。既然 APP 免费,APP 怎么赚钱呢?除了广告,APP 内收费是一种新的途径。即在用户使用 APP 的过程中,提供增值服务,或者进行交易进而收费。 去年前 100 名收费的 iPhone 应用中几乎都采用了应用内收费。而这部分交易,应用市场则很难提成。用户下载应用后就与应用市场没关系了。也有一些应用市场望风而动,提供支付手段,进而介入应用内收费环节。微信如果与财付通对接上,甚至将微信账号与财付通账号绑定,将打通微信 APP 订阅付费,以及微信 APP 在使用过程中的“应用内收费”的最后一个环节。届时微信 APP 的开发者分成模式,对微信意味着现金流。 这里举个笔者切身例子:我的 SuperSofter 账号每天发布我整理的 5 条新闻+发送给收听者。读者觉得好可以“赞助”,形式是打款到我财付通账号。很多读者反馈看到消息后说如果微信能直接支付就好了。开电脑又想不起这事儿了。这,就是我说的微信 APP 的“应用内”收费。传统应用市场的其他模式如对开发者提供数据支持、提供推广广告服务、提供排行榜,对微信也是水到渠成的事情。 4、微信 APP 可以解决应用内搜索的难题微信到现在仍然没有很好地解决微信公众账号的发现和查找的诉求。只有一个最简单的基于名称的查询公众账号功能。这一块微信暂时没有特别重视,倒有很多第三方微信公众号导航网站或者搜索网站风生水起。为了避免广告之嫌,这里不做介绍。 这说明这个需求是有的。微信号需要推广,用户也需要更方便地找到需要的微信 APP 。微信要做微信公众号的搜索,与现在的第三方导航不同的是,微信可以基于微信号的介绍,粉丝数、消息发送活跃情况等进行相关性的排名,进而给用户更全、更精准的结果。这跟应用市场如 AppStore 的搜索很像。最大的突破在于,微信可以搜索“应用内”的内容。——微信 APP 内搜索。 笔者在《 APP 搜索,会是网络的下一个春天》曾经提出过 APP 内搜索的难点。现在网络等搜索巨头尚在研究探索中。而微信 APP 对于腾讯来说,根本不存在应用之间的信息孤岛问题。因为微信 APP 的所有内容,对微信都是可见的。因此,用户不只是可以搜到微信 APP ,还可以搜到微信公众账号提交到微信的所有内容。再进一步,微信开放接口允许第三方公众账号接入自家数据,也就是说不只是像现在这样主动推送,而是让用户可以主动去搜索,这俨然会是微信的下一个“阿拉丁”计划。微信 APP 的信息孤岛问题得到解决,这个解决方案只对腾讯才有效。 笔者旧文《微信,三亿用户之后的默然演进》,曾经提出过微信做搜索的几个先天条件。第一是基于语音的交互方式,语音是移动搜索的一大入口(还有视觉、体感、地图等)。Siri 是一种,将中移动的 12580 搬到微信也是一种;第二是社交搜索,最像 Facebook 的中国公司是腾讯,同样,最有机会实现 GraphSearch 的也是腾讯,手机端是微信:朋友圈 通讯录 微信 APP 内搜索。 总结一下:微信 APP 即微信公众账号,对 APP 提供者来说这是一个门槛极低,容易到达数亿真实用户且确保用户黏性的分发平台;对用户来说,这是一种前所未有及其简单的应用使用方式;对腾讯来说,将形成微信 APP 市场,通过微信 APP 付费订阅和 APP 内收费的实现商业化,而微信 APP 及微信 APP 内搜索,将让微信有机会成为移动互联网的一种搜索入口。微信 APP 不是吹的。市场也好,搜索也好——各种角度来看,它都会是移动互联网与 APP 及浏览器平行的第三大入口,这才是旺信、飞信、*信等努力跟进的原因。
‘伍’ 做web前端开发还是java后端开发哪个前景好
前后端应该都挺有发展前景,相对来说前端会比较简单一点。但是现在对于同个层次的人,一般公司前后端待遇都差不多,待遇好的肯定是你技术过硬的。那就要看自己的爱好了。以下是web前端开发和java后端开发两者的分析。
‘陆’ MUI中的api是什么意思,有什么作用
api 全称 Application Programming Interface,也就是应用程序接口的意思。
我举个例子:用户在一个商城通过客户端进行了一些操作,我们要记录用户的这些操作并且做出处理回应就需要通过后端来处理,通过数据库来保存相关信息,那么前端和后端就是通过 api 来进行数据交互的。api(一般情况下我们开发都叫它做:接口),例如用户在购物车添加了一个商品,那么前端就将这个商品的相关信息通过 api 发送给后端,后端进行处理,保存在数据库,然后从数据库返回新的记录,前端再将新的数据显示给用户。
简单点来说,pai 就是拿来传递数据的,当然api的作用不仅仅是前端和后端,还可以是前端和其他平台进行数据传递。
‘柒’ 华为云如何同步手机联系人到云端
手机型号:华为 P10
1、在手机上找到云服务应用并点击进入该应用。
‘捌’ mui开发知识积累总结-----puls.runtime
Runtime
Runtime模块管理运行环境,可用于获取当前运行环境信息、与其它程序进行通讯等。通过plus.runtime可获取运行环境管理对象。
属性:
version获取客户端的版本号
innerVersion获取客户端运行时环境的版本号
arguments获取第三方程序调用时传递给程序的参数
appid获取当前应用的APPID
方法:
getProperty获取指定APPID对应的应用信息
install安装应用
quit退出客户端程序
restart重启当前的应用
setBadgeNumber设置程序快捷方式上显示的提示数字
openURL调用第三方程序打开指定的URL
openFile调用第三方程序打开指定的文件
launchApplication调用第三方程序
对象:
WidgetOptionJSON对象,应用安装参数
WidgetInfoJSON对象,应用信息
OpenFileOptionJSON对象,打开文件参数
ApplicationInfJSON对象,打开第三方程序参数
回调方法:
InstallSuccessCallback安装应用成功回调函数
InstallErrorCallback安装应用失败回调函数
GetPropertyCallBack获取应用属性成功回调函数
OpenErrorCallback打开本地文件或URL失败回调函数
LaunchErrorCallback调用第三方程序失败回调函数
getProperty
获取指定APPID对应的应用信息
void plus.runtime.getProperty( appid, getPropertyCB );
说明:
获取指定APPID对应的应用信息
参数:
appid (DOMString) 可选 应用的Appid
getPropertyCB (GetPropertyCallBack) 可选 获得应用信息成功回调函数
返回值:
无
平台支持:
Android : 2.2+
支持
iOS : 4.3+
支持
WP : 7.5+
暂不支持
示例:
// 扩展API加载完毕后调用onPlusReady回调函数
document.addEventListener( "plusready", onPlusReady, false );
// 扩展API加载完毕,现在可以正常调用扩展API
function onPlusReady() {
}
// 获取应用信息
function getAppInfo() {
plus.runtime.getProperty( plus.runtime.appid, function ( wgtinfo ) {
//appid属性
var wgtStr = "appid:"+wgtinfo.appid;
//version属性
wgtStr += "
version:"+wgtinfo.version;
//name属性
wgtStr += "
name:"+wgtinfo.name;
//description属性
wgtStr += "
description:"+wgtinfo.description;
//author属性
wgtStr += "
author:"+wgtinfo.author;
//email属性
wgtStr += "
email:"+wgtinfo.email;
//licence属性
wgtStr += "
license:"+wgtinfo.license;
//licensehref属性
wgtStr += "
licensehref:"+wgtinfo.licensehref;
//features 属性
wgtStr += "
features:"+wgtinfo.features;
console.log( wgtStr );
} );
}
获取应用信息
install
安装应用
void plus.runtime.install( wgtFilePath, options, installSuccessCB, installErrorCB);
说明:
安装包格式为wgt应用,其扩展名为'.wgt',使用这个方法之前,需要提前把安装包从网络处或其他位置放置到运行时环境可以访问的位置。
参数:
wgtFilePath (DOMString) 可选 应用安装文件或基座安装文件(扩展名为'.wgt')
options (WidgetOption) 可选 应用安装设置的参数
installSuccessCB (InstallSuccessCallback) 可选 正确安装后的回调
installErrorCB (InstallErrorCallback) 可选 安装失败的回调
返回值:
无
平台支持:
Android : 2.2+
支持,支持apk包的安装
iOS : 4.3+
支持,不支持ipa包的安装
WP : 7.5+
暂不支持
quit
退出客户端程序
void plus.runtime.quit();
说明:
退出客户端程序
返回值:
无
平台支持:
Android : 2.2+
支持
iOS : 4.3+
iOS系统不支持此功能,只能通过设备的Home键退出应用。
WP : 7.5+
暂不支持
示例:
// 扩展API加载完毕后调用onPlusReady回调函数
document.addEventListener( "plusready", onPlusReady, false );
// 扩展API加载完毕,现在可以正常调用扩展API
function onPlusReady() {
plus.key.addEventListener( "backbutton", onKeyBack, false );
}
function onKeyBack() {
plus.runtime.quit();
}
restart
重启当前的应用
void plus.runtime.restart();
说明:
重启当前的应用
返回值:
无
平台支持:
Android : 2.2+
支持
iOS : 4.3+
支持
WP : 7.5+
暂不支持
示例:
// 扩展API加载完毕后调用onPlusReady回调函数
document.addEventListener( "plusready", onPlusReady, false );
// 扩展API加载完毕,现在可以正常调用扩展API
function onPlusReady() {
}
// 重启当前的应用
function restartApp() {
plus.runtime.restart();
}
重启当前的应用
Restart
setBadgeNumber
设置程序快捷方式上显示的提示数字
void plus.runtime.setBadgeNumber( number );
说明:
设置程序快捷方式上显示的提示数字
参数:
number (DOMString) 可选 在快捷方式上显示的数字,参数为0则表示清除提示数字。
返回值:
无
平台支持:
Android : 2.2+
支持
iOS : 4.3+
支持
WP : 7.5+
暂不支持
示例:
// 扩展API加载完毕后调用onPlusReady回调函数
document.addEventListener( "plusready", onPlusReady, false );
// 扩展API加载完毕,现在可以正常调用扩展API
function onPlusReady() {
}
// 设置数字
function setBadge() {
plus.runtime.setBadgeNumber(8);
}
// 清除数字
function clearBadge() {
plus.runtime.setBadgeNumber(0);
}
设置程序快捷方式上显示的提示数字
openURL
调用第三方程序打开指定的URL
void plus.runtime.openURL( url, errorCB, identity );
说明:
调用第三方程序打开指定的URL
参数:
url (DOMString) 可选 字符串类型,各平台支持的地址类型存在差异,参考平台URL支持表。
errorCB (OpenErrorCallback) 可选 打开指定URL地址失败时回调,并返回失败信息。
identity (DOMString) 可选 在iOS平台此参数被忽略,在Android平台为程序包名,如果指定的包名不存在,则打开URL地址失败。
返回值:
无
平台支持:
Android : 2.2+
支持
iOS : 4.3+
支持,不支持identity参数
WP : 7.5+
支持,不支持identity参数
openFile
调用第三方程序打开指定的文件
void plus.runtime.openFile( filepath, options, errorCB );
说明:
调用第三方程序打开指定的文件
参数:
filepath (DOMString) 可选 字符串类型,文件路径必须是本地路径,否则会导致打开文件失败。
options (OpenFileOption) 可选 打开文件的参数,参考OpenFileOption对象。
errorCB (OpenErrorCallback) 可选 打开文件操作失败时回调,返回失败信息。
返回值:
无
平台支持:
Android : 2.2+
支持
iOS : 4.3+
支持
WP : 7.5+
支持
示例:
// 扩展API加载完毕后调用onPlusReady回调函数
document.addEventListener( "plusready", onPlusReady, false );
// 扩展API加载完毕,现在可以正常调用扩展API
function onPlusReady() {
}
// 打开文件操作
function testFile() {
plus.runtime.openFile( "_doc/a.pdf" );
}
调用第三方程序打开文件
launchApplication
调用第三方程序
void plus.runtime.launchApplication( appInf, errorCB );
说明:
调用第三方程序
参数:
appInf (ApplicationInf) 可选 要启动第三方程序的描述信息
errorCB (LaunchErrorCallback) 可选 启动第三方程序失败时回调,并返回失败信息。
返回值:
无
平台支持:
Android : 2.2+
支持
iOS : 4.3+
支持
WP : 7.5+
暂不支持
示例:
// 扩展API加载完毕后调用onPlusReady回调函数
document.addEventListener( "plusready", onPlusReady, false );
// 扩展API加载完毕,现在可以正常调用扩展API
function onPlusReady() {
}
// 调用第三方程序
function launchApp() {
if ( plus.os.name == "Android" ) {
plus.runtime.launchApplication( {pname:"com.android.browser"
,extra:{url:"http://www.html5plus.org"}}, function ( e ) {
alert( "Open system default browser failed: " + e.message );
} );
} else if ( plus.os.name == "iOS" ) {
plus.runtime.launchApplication( {action:"http://www.html5plus.org"}, function ( e ) {
alert( "Open system default browser failed: " + e.message );
} );
}
}
调用第三方程序
version
获取客户端的版本号
plus.runtime.version;
说明:
客户端版本号,字符串类型,在编译环境中设置的版本号。
平台支持:
Android : 2.2+
支持
iOS : 4.3+
支持
WP : 7.5+
暂不支持
innerVersion
获取客户端运行时环境的版本号
plus.runtime.innerVersion;
说明:
运行时环境版本号,格式为:[主版本号].[次版本号].[修订版本号].[编译代号]。
平台支持:
Android : 2.2+
支持
iOS : 4.3+
支持
WP : 7.5+
暂不支持
arguments
获取第三方程序调用时传递给程序的参数
plus.runtime.arguments;
说明:
第三方程序传递过来的参数,字符串格式类型数据。 不是由第三方程序调用启动,则返回空字符串。
平台支持:
Android : 2.2+
支持,把第三方传递过来的参数组合成JSON格式字符串,如“{"name":"XiaoMing","password":"123456"}”
iOS : 4.3+
支持,把第三方传递过来的参数,去掉前缀,如“name=XiaoMing&password=”,建议第三方程序传递JSON格式字符串
WP : 7.5+
暂不支持
appid
获取当前应用的APPID
plus.runtime.appid;
说明:
当前应用的APPID,字符串类型。注意,如果是在HBuilder真机运行获取的是固定值“HBuilder”,需要提交App云端打包后运行才能获取真
实的APPID值。
平台支持:
Android : 2.2+
支持
iOS : 4.3+
支持
WP : 7.5+
支持
WidgetOption
JSON对象,应用安装参数
说明:
可通过对象设置安装的应用是否进行appid校验、版本号校验等。
属性:
appid:DOMString,只读属性,默认值 null。当前正在安装的应用的appid,填写该值后应用安装时将进行校验,如安装包内的appid和指定
的不同则终止当前应用的安装
force:Boolean,只读属性,默认值 false。当取值为true,应用安装为强制安装,不再进行版本号的校验,如果为false则进行版本号校验
,如果将要安装应用的版本号不高于现有应用的版本号则终止安装,并返回安装失败
WidgetInfo
JSON对象,应用信息
属性:
appid:DomString,应用的APPID
version:DomString,应用的版本号
name:DomString,应用的名称
description:DomString,应用描述信息
author:DomString,应用描述信息
email:DomString,开发者邮箱地址
license:DomString,应用授权描述信息
licensehref:DomString,应用授权说明链接地址
features:DomString[],应用许可特性列表
OpenFileOption
JSON对象,打开文件参数
属性:
popover:json,JSON对象,格式如{top:10;left:10;width:200;height:200;},所有值为像素值,左上坐标相对于容器webview的位置。仅
在iPad设备平台有效。
ApplicationInf
JSON对象,打开第三方程序参数
属性:
pname:DOMString,仅Android平台支持,表示程序的包名,其它平台忽略此属性值。
action:DOMString,Android平台上与系统的action值一致;iOS平台为要调用程序的URLScheme格式字符串。
extra:JSON,仅Android平台支持,为JSON格式,用于传递给要调用程序的参数,如extra:{url:"http://www.html5plus.org"}。
InstallSuccessCallback
安装应用成功回调函数
void onSuccess(widgetInfo){
// Code here
}
说明:
安装应用成功回调函数
参数:
widgetInfo (WidgetInfo) 必选 应用信息,参见:WidgetInfo
平台支持:
Android : 2.2+
支持,如安装文件为APK,则不触发此回调函数
iOS : 4.3+
支持
WP : 7.5+
暂不支持
InstallErrorCallback
安装应用失败回调函数
void onError(error){
// Handle the error
}
说明:
安装应用失败回调函数
参数:
error (DOMException) 必选 安装失败的错误信息
平台支持:
Android : 2.2+
支持
iOS : 4.3+
支持
WP : 7.5+
暂不支持
GetPropertyCallBack
获取应用属性成功回调函数
void onGetPropertyCB(widgetInfo){
// Code here
}
说明:
获取应用属性成功回调函数
参数:
widgetInfo (WidgetInfo) 必选 应用信息,参见:WidgetInfo
平台支持:
Android : 2.2+
支持
iOS : 4.3+
支持
WP : 7.5+
暂不支持
OpenErrorCallback
打开本地文件或URL失败回调函数
void onError(error){
// Handle the error
}
说明:
打开本地文件或URL失败回调函数
参数:
error (DOMException) 必选 打开操作失败的错误信息
平台支持:
Android : 2.2+
支持
iOS : 4.3+
支持
WP : 7.5+
暂不支持
LaunchErrorCallback
调用第三方程序失败回调函数
void onError(error){
// Handle the error
}
说明:
调用第三方程序失败回调函数
参数:
error (DOMException) 必选 操作失败的错误信息
平台支持:
Android : 2.2+
支持
iOS : 4.3+
支持
WP : 7.5+
暂不支持
‘玖’ mui-scroll有什么作用如何使用
初识Windows功能增强“插件”MSI
我们经常可以看到许多软件只有一个扩展名为MSI的文件,双击这个文件运行,就会出现和Windows应用软件安装非常相似的安装过程,MSI文件到底是什么?为什么许多软件开始用MSI格式来发行呢?请听我慢慢说来。
1.MSI文件的由来
说到MSI文件,不得不先说说Windows Installer,它不只是安装程序,而是可扩展的软件管理系统。Windows Installer的用途包括:管理软件的安装、管理软件组件的添加和删除、监视文件的复原以及使用回滚技术维护基本的灾难恢复。另外,Windows Installer还支持从多个源位置安装和运行软件,而且可以由想要安装自定义程序的开发人员自定义。要想使用这些功能,就必须通过MSI文件。MSI文件是Windows Installer的数据包,它实际上是一个数据库,包含安装一种产品所需要的信息和在很多安装情形下安装(和卸载)程序所需的指令和数据。MSI文件将程序的组成文件与功能关联起来。此外,它还包含有关安装过程本身的信息:如安装序列、目标文件夹路径、系统依赖项、安装选项和控制安装过程的属性。