希望大家都能有了好东西分享出来,单单就ionic来说,我是刚接触,现在用的人不是很多。
我认为如果大家能 有了好的东西或者好的方案 不藏着掖着,分享出来,那么我们的社区会更加活跃,用的人会越来越多,解决方案会越来越多,走的人多了才形成了路。
ionic 项目,微信分享,搞了快一个星期。坑很多,写出解决方案,希望能帮助你们。
废话不多说直接开始:
首先,如果你还没有在微信开放平台添加app并申请通过,马上去,审核时间好长,我等了快一个星期。
https://open.weixin.qq.com/
ionic 的微信分享插件:https://github.com/xu-li/cordova-plugin-wechat
他还有demo,列出来,不用去翻了 有不明白的可以自己打包看看。
https://github.com/xu-li/cordova-plugin-wechat-example/tree/master/ionic
用法: Check if wechat is installed
这是检查是否安装微信,还有很多,自己去github 上面看
Wechat.isInstalled(function (installed) {
alert("Wechat installed: " + (installed ? "Yes" : "No"));
}, function (reason) {
alert("Failed: " + reason);
});
- 1
- 2
- 3
- 4
- 5
按照他的用法,打包成apk后,发现 Wechat is not defined 这个问题困扰了我快一个星期
在index.html 引入,最好写在app.js 上面
<script src="cordova.js"></script>
- 1
还有,不能用cordova 命令打包,因为出来的apk 还是掉用不了sdk
就是这个 yourapp\platforms\android\build\outputs\apk里面的 android-debug.apk
我是用的eclipse 打的包。
还有,每次改完了www 目录里面的内容后,都需要 运行命令
cordova prepare
- 1
因为 yourapp\platforms\android\assets\www 里面的是缓存你的www目录,改了需要每次更新,这个命令就是更新。
在你用eclipse 打包的时候,需要 project–clean – 把你的项目缓存 清除掉,才能打包。
你以为这就完了么,不会的
我们需要配置签名
微信开放平台 https://open.weixin.qq.com/
改包名
右键Refactor–Rename 填上你的包名,如果不需要改,那就跳过不改。
左边四个 全选—preview —continue —ok
还有下面的gen 目录,也是,在下面的com. XXX 右键。。。。
你也可以删了它,他又会自动生成出来。
到这儿 包名就改完了。我说的不详细,可以参考链接
http://www.etwiki.cn/java/3757.html
还需要注意的一点,在你的项目www 目录下有个config.xml 文件 这个也改成你的包名,否则,当你project-clean 又会变成原来的包名。
获取应用签名
有一个方法是通过命令 keytool http://ionichina.com/topic/55656f0a89dbe3b66a391180
但是我按照他说的怎么也不行。
最后我用了 微信官方的apk 来获取 签名 。
详情页
https://open.weixin.qq.com/cgi-bin/showdocument?action=dir_list&t=resource/res_list&verify=1&id=open1419319167&token=d68d8fa6e4fc56daedc4f69473f8905e715b63d8&lang=zh_CN
apk 下载地址
https://res.wx.qq.com/open/zh_CN/htmledition/res/dev/download/sdk/Gen_Signature_Android221cbf.apk
这里就不截图了,都会操作。手机上输入你的包名,点Get Signature 就能取到你的签名。然后填到 微信开放平台的管理中心–应用签名。
注意 包名肯定要跟他一致。。。