第三方集成那些事 - 吐槽篇

来源:互联网 发布:pdf免费编辑软件 编辑:程序博客网 时间:2024/05/17 06:03

应用开发过程中,经常会使用第三方SDK集成开发,一来可以加快开发的速度,二来有些功能也必须借助第三方完成。

本篇吐槽使用第三方开发过程遇到的坑。


一、 百度地图

地图弹窗

最近用了百度地图,需要在地图上显示一个弹窗。使用的是 3.2.0 版本SDK。

翻阅了文档和Demo发现了一个叫 infoWindow 的类,可以实现弹窗效果。


这个infowindow 有两个坑爹的地方:

一是使用自定义的 view 的时候,父布局必须是 LinearLayout 的,因为 infowindow 在 onMeasure() 中要计算高度,

如果使用 RelativeLayout  等布局,会报错的;

二是这个 infoWindow 类实际上是将 view 转化为一张图片,所以,点击事件只有一个,就是整个图片的点击事件!!!

问题是基本上稍微复杂的自定义 view 都不止一个点击事件,这都不能愉快地敲代码了。


这么看来,用 InfoWindow 有什么好处呢?嗯,可以显示在指定地图坐标上,弹窗随地图缩放而移动,这大概是它最重要的特性了。

好吧,最后,我是用PopupWindow 实现弹窗的,因为这个特性不如响应事件重要。


签名问题

这个签名是新版才有的key验证体系,看起来是从2.1.3 版本开始使用的,至于什么时候换新的,那就不好说了。嗯,缅怀旧版的验证体系。。。

新版key验证体系,使用签名和应用包名组合而成。

一般默认情况下,开发测试用的证书是debug.kestore ,但是正式打包用的是另外生成的证书,它们的签名是不一样的,

发布应用时,要记得到百度控制台改成正式的签名。

当然,你也可以用一份正式的证书改成debug.kestore,这样测试环境和正式环境统一签名,再也不用担心签名问题。


二、微信登录

微信当然也有签名的问题,跟上面百度地图差不多,这里略过,我想吐槽的问题是

木有开放论坛

微信开放登录功能,我记得好像是14年8月份左右的事。

唔,这两天(15.02.10)应用加了一个微信登录,获取了用户的基本信息,demo里只写了发起授权,好在网页上有写登录流程,

自己补全了后面的获取 token 和获取用户信息等步奏,然后发现返回的数据居然中文乱码。。。

中文乱码可以用  String result = new String(resultData.getBytes("iso-8859-1"), "UTF-8"); 解决。


中间过程走了些弯路,每当这时,我就在想,为什么微信开放平台上没有技术讨论论坛呢?

基本上像百度、新浪微博、友盟等开放平台都有,很多问题都会被提出、解决,有需求也可以反馈,不是挺好的么?























0 0
原创粉丝点击