记录自己开发中踩过的一些坑
来源:互联网 发布:万宝路黑冰爆珠淘宝 编辑:程序博客网 时间:2024/05/18 22:42
如题,进以此来记录日常开发中遇到的一些坑,近期抽空整理一下并长期更新~~
排名不分先后,随踩随记~
1.部分手机App唤起第三方支付(微信/支付宝)不成功
以支付宝为例,环境为华为Mate7 EMUI4.0(Android6.0)系统,体验发现代码流程正常,支付宝却未启动正常的支付界面,其他手机正常,想到Android6.0新的权限管理方案,于是查看权限管理发现支付宝的权限中 关联启动 一项未被授予,手动开启这项权限后正常。
本以为加上提示或者跳转告诉用户去开启支付宝的关联启动项就OK了,但是测试同学说美团App在同样的环境下不需要手动开启那项权限依然可以正常唤起支付宝宝,这TM就很尴尬了。最后通过查看支付宝官方最新集成文档并提问支付宝技术支持得到一个半肯定的回答,因为我们使用的支付宝SDK版本太老了,影响正常使用。项目中支付宝SDK中还是用的AliPay唤起的支付宝,这至少也是2年前的SDK版本了,不知道为什么一直没有更新,可能是抱着不出问题就不换的原则。通过demo测试确实和支付宝SDK版本有关, 经过替换最新版的支付宝SDK后验证一切正常。
2.H5交互相关
//java.lang.Throwable: A WebView method was called on thread ‘JavaBridge’. All WebView methods must be called on the same thread
1.与H5交互的交互中标注@JavascriptInterface的函数可被javaScript调用 但并不在Android主线程调用
所以此函数中不可进行UI操作或对WebView的操作
2.与H5交互的交互中标注@JavascriptInterface的函数命名为getUserId()与API冲突 在部分手机中出现权限报错(华为Mate10by8.0),不可用getUserId命名与H5交互的函数
3.//项目正式签名打包时报错mulit define错误
一般为依赖库重复引用冲突导致 以retrofit为例,retrofit会捆绑依赖okhttp
当其它lib中也有okhttp时会冲突(阿里云文件上传SDK需依赖okhttp),删掉lib中的okttp即可
可通过命令行查看app所有依赖库的lib树结构,具体命令百度
4//QQ分享成功后提示分享取消
1同时注意这里的APPid需要替换成你代码里配置的APPid
PlatformConfig.setQQZone(“100424468”, “c7394704798a158208a74ab60104f0ba”);
这两处的APPid应该是一致的,同时注意不要删掉tencent前缀!!!!
2注意实现onActivityresult方法
mShareAPI.onActivityResult(requestCode, resultCode, data);
5.//相机拍照机相册选择的开发相关
调用系统相机拍照获取图片分2种情况,如果启动相机时指定了Uri,则相机拍照结果会储存在该Uri下,并且onActivityResult中
的data返回为null 。如果启动相机时未指定Uri,则onActivityResult中data会返回照片缩略的Bitmap对象=data.getParcelableExtra(“data”)
- 记录自己开发中踩过的一些坑
- TabLayout自己踩过的一些坑
- EventBus自己踩过的一些坑
- 记录自己微信开发趟过的那些坑
- java项目开发过程中自己挖过的坑
- Unity中一些为自己的记录
- 记录篇,自己在项目中使用过的。
- 记录自己JNI开发的一些东西,方便自己查阅
- linux的一些基本命令(用来记录自己使用过的一些命令)
- 记录一些用过的
- 我的前端开发之路---谨以记录工作中那些踩过的坑,持续更新中~~
- 一些曾经踩过的坑,cocos2dx手机游戏开发
- 吐槽小程序开发踩过的坑,以及一些解决方法
- 吐槽小程序开发踩过的坑,以及一些解决方法
- 吐槽小程序开发踩过的坑,以及一些解决方法
- swift 开发过程中犯过的错误记录
- 踩过的一些坑。
- Node自学中踩过的一些坑
- Unity 5.6中的混合光照(下)
- this
- java设计模式-建造者模式
- Setting up iTerm2 with oh-my-zsh and powerline on OSX
- ORACLE EXPDP命令使用详细
- 记录自己开发中踩过的一些坑
- navicat 连接sqlserver提示要安装 sql server native client
- 剑指offer 面试题62 序列化和反序列化二叉树
- window.setTimeout() 和window.setInterval() 的区别
- 跨平台C语言长连接之quene数据结构
- HTML5+PLUS移动APP开发入门
- linux使用jstack来找出死循环的java代码
- 455. Assign Cookies
- Geometry.Parse方法