在写Anrdoid Cordova的时候没有过多的去了解Cordova,以为和源生Android差不多,自然而然就遇到了一些奇怪的问题
这篇文章是关于CordovaPlugin中 使用startActivityForResult后在OnActivityResult中没有反应的问题
解决方法:
不是使用cordova.getActivity().startActivityForResult();这样调试跟踪后会发现被主Activity的OnActivityResult给拦截了。
解决方法使用 cordova.StartActivityForResult(cordovaplugin,Intent,int)
如下代码
cordova.setActivityResultCallback(this);
cordova.setActivityForResult(this,intent,RESULT);
原因是:plugin会通过CordovaInterface中的startActivityForResult(cordovaPlugin,intent,int)方法启动该Activity。
当 Activity 结束后,系统将调用回调函数 onActivityResult(int requestCode, int resultCode, Intent intent)
通过这件事情发现还是先好好了解一样东西在去写,不然出了奇怪问题很头疼。