百度地图
、高德地图
等等)需要下载插件包,进行修改key值操作,然后将插件作为自定义插件上传使用
这一繁琐过程。公测所用的测试插件为极光推送,测试版本为安卓:uexJPush-3.0.4 (见公测贴链接附件)
示例代码如下:用户需要在 config.xml 中添加:
<config desc="uexJPush" type="KEY">
<param platform="Android" name="$UEXJPUSH_PACKAGE$" value="org.zywx.wbpalmstar.widgetone.uexJPushDemo"/>
<param platform="Android" name="$UEXJPUSH_APPKEY$" value="e905af7390a3413439d24377"/>
</config>
并把org.zywx.wbpalmstar.widgetone.uexJPushDemo 换成自己应用的包名、把 e905af7390a3413439d24377 换成极光推送官网申请的appkey。
极光推送
,测试版本为iOS:uexJPush-3.0.2
(见公测贴链接附件)<config desc="uexJPush" type="KEY">
<param platform="iOS" file="uexGroupfolder/PushConfig.plist" name="$UEXJPUSH_APP_KEY$" value="29f3d28136125dad137a42df"/>
<param platform="iOS" file="uexGroupfolder/PushConfig.plist" name="$UEXJPUSH_PUSH_CHANNEL$" value="TestPush"/>
<param platform="iOS" file="uexGroupfolder/PushConfig.plist" name="$UEXJPUSH_APS_ENVIRONMENT$" value="1"/>
</config>
$UEXJPUSH_APP_KEY$ -->iOS的AppKey 填在极光推送官网上注册后得到的iOS AppKey
$UEXJPUSH_PUSH_CHANNEL$ --> apns推送频道 填任意字符串
$UEXJPUSH_APS_ENVIRONMENT$ -->推送证书类型 0-开发者证书(developement) 1-发布证书(distribution)
<config desc="uexGaode" type="KEY" >
<param platform="iOS" name="$uexGaodeMap_APIKey$" value="XXX"/>
</config>
<config desc="uexGaode" type="KEY" >
<param platform="Android" name="$uexGaodeMap_APIKey$" value="XXX"/>
</config>
自定义UrlScheme
的接口微信
、QQ
等等)需要下载插件包,进行修改UrlScheme操作,然后将插件作为自定义插件上传使用
这一繁琐过程。Url Scheme:可以通过Url Scheme从一个应用打开另一个应用,并实现应用间的数据传递。
比如在微信支付过程中,App用过uexWeiXin插件打开微信客户端进行支付,支付过程完成后,微信客户端通过应用自定义的UrlScheme返回到本
App,并传回支付结果
<config desc="uexQQ" type="URLSCHEME">
<urlScheme name="uexQQ" schemes="['A123124','Tencent24asd3431']"/>
</config>
每一个自定义UrlScheme用单引号(')包含起来,多个UrlScheme之间用逗号(,)隔开,然后所有这些UrlScheme用中括号([])再包括进去
uexWidget.loadApp('A123124:');
即可打开应用A(注意不要漏掉冒号!)自定义应用权限
的接口<config desc="bgConfig" type="AUTHORITY">
<permission platform="iOS" info="backGroundMode" flag="111"/>
</config>
backGroundMode
,既后台权限配置backGroundMode
后台权限的参数说明如下flag | 解释 | 备注 |
---|---|---|
1 | 后台音乐播放 | |
2 | 后台定位 | |
4 | 后台VoIP服务 | |
8 | 后台新闻更新 | |
16 | 后台与iOS配件进行交互 | |
32 | 后台与蓝牙设备进行交互 | |
64 | 后台通过蓝牙发送广播 | |
128 | 后台下载内容 | 仅iOS 7.0+支持 |
256 | 通过点击推送消息后台下载内容 | 仅iOS 7.0+支持 |
uexXXX.m
还是要用oc编写uexXXXSwift.h
(以下均用.h
来代表此头文件)
.h
.h
添加至生成静态库的工程中uexSwift
,并将所有的.swift文件
复制至此目录中uexChart-3.0.0
此插件封装的一个开源swift库ios-charts,用以提供各种图表功能。
开发者可以查看此插件的源码来了解具体封装方法
由swift特性所限,用此方法开发的插件需求系统版本至少为iOS 7.0+
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<widget appId="10030629" channelCode="000" version="0.1" widgetId="">
<name>测试uexDemo</name>
<description>测试插件Demo</description>
<author email="3g2win@mail.com">3g2win</author>
<icon src="icon.png"/>
<license href="http://3g2win.com"/>
<content encoding="utf-8" src="index.html"/>
<logserverip/>
<obfuscation>false</obfuscation>
<updateurl/>
<showmyspace>true</showmyspace>
<bgcolor>#fefefe</bgcolor>
<widgetOne version="[widgetOneVersion]"/>
<orientation>1</orientation>
<config desc="uexJPush" type="KEY">
<param platform="iOS" file="uexGroupfolder/PushConfig.plist" name="$UEXJPUSH_APP_KEY$"
value="29f3d28136125dad137a42df"/>
<param platform="iOS" file="uexGroupfolder/PushConfig.plist" name="$UEXJPUSH_PUSH_CHANNEL$" value="TestPush"/>
<param platform="iOS" file="uexGroupfolder/PushConfig.plist" name="$UEXJPUSH_APS_ENVIRONMENT$" value="1"/>
</config>
<config desc="uexGaode" type="KEY" >
<param platform="iOS" name="$uexGaodeMap_APIKey$" value="填写你申请的appkey"/>
</config>
<config desc="bgConfig" type="AUTHORITY">
<permission platform="iOS" info="backGroundMode" flag="111"/>
</config>
<config desc="uexQQ" type="URLSCHEME">
<urlScheme name="uexQQ" schemes="[`A123124`,`Tencent24asd3431`]"/>
</config>
</widget>