【发布时间】:2015-03-17 13:07:47
【问题描述】:
我有一个名为“签名”的活动,我从 CordovaPlugin 中调用它;
插件.java
public boolean execute(String action, JSONArray args,
CallbackContext callbackContext) throws JSONException
{
Intent i = new Intent(context, Signature.class);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
cordova.startActivityForResult(this,i,90);
}
public void onActivityResult(int requestCode, int resultCode, Intent intent) {
Log.d(TAG, "activity result in plugin: requestCode(" + requestCode + "), resultCode(" + resultCode + ")");
if(requestCode == 90) {
if (resultCode == this.cordova.getActivity().RESULT_OK) {
Bundle res = intent.getExtras();
String result = res.getString("results");
Log.d("FIRST", "result:"+result);
this.callbackContext
.success(result.toString());
} else {
this.callbackContext.error("Error");
}
}
签名.java
private void finishWithResult(String result,int status)
{
Bundle conData = new Bundle();
conData.putString("results", result);
Intent intent = new Intent();
intent.putExtras(conData);
setResult(status, intent);
finish();
}
但是,当我调用“cordova.startActivityForResult”函数时,“onActivityResult”会立即自行调用它。我无法通过 finishWithResult 从 Activity 回调。任何建议。谢谢
【问题讨论】:
标签: java android cordova callback phonegap-plugins