在使用第三方zxing扫描时,部分手机(好像都是4.4及以下版本的手机)扫描后不调用onActivityResult()返回结果。
调试发现zxing的扫描界面CaptureActivity 在注册时使用了singleTask方式,去掉就可以了。
如果还有其他的原因产生的话可以参考一下解决方式:
1.你的Activity被finish()掉了,看看你的Activity有没有在哪里finish()掉。
2.startActivityForResult(intent, -1)函数,第二个参数小于0,应该要大于0
3.启动模式为Android:launchMode=”singleTask”和android:launchMode=”singleInstance”都会导致无效,修改为默认的android:launchMode=”standard”
4.TabHost的子Activity中startActivityForResult调用其他Activity时候遭遇到onActivityResult方法不响应的问题.直接看下面的链接
http://www.cnblogs.com/relinson/archive/2012/03/25/startActivityForResult.html
5.Fragment里面调用startActivityForResult的时候,参考下面链接
http://blog.csdn.net/xiaoyuan511/article/details/38870939
参考:http://blog.csdn.net/csm_qz/article/details/47972367