CodenameOne IntentResultListener 未被调用

CodenameOne IntentResultListener not being called

我一直在尝试调用 oAuth evernote 库,但没有成功。身份验证有效,但我的 Codename One 应用程序未通过 startActivityForResult() 机制得到通知。我已经尽可能多地剔除因素。我目前已使用联系人应用程序将其缩减为 startActivityForResult()。

我现在有一个 Codename One 本机 class,代码如下。 (这是来自 https://developer.android.com/guide/components/intents-common.html 的示例)。

private void selectContact() {

    debugOut ("selectContact: Entry");

    Intent intent = new Intent(Intent.ACTION_PICK);
    intent.setType(ContactsContract.Contacts.CONTENT_TYPE);

    AndroidNativeUtil.startActivityForResult(intent, new IntentResultListener() {
        public void onActivityResult (int requestCode, int resultCode, Intent data) {
            debugOut ("onActivityResult: Entry");
        }
    });

    debugOut ("selectContact: Exit");
}

调用 selectContact() 启动联系人应用程序。当我选择联系人时,联系人应用程序关闭。系统控制台显示两条消息:"selectContact: Entry" 和 "selectContact: Exit".

IntentResultListener.onActivityResult()中的代码没有被调用(即“"onActivityResult: Entry"没有输出”)

我试图在 GitHub (CodenameOneActivity.java) 上查看 Codename One 来源,特别是这个:

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    //is this a payment result
    if (mHelper != null && mHelper.handleActivityResult(requestCode, resultCode, data)) {
        return;
    }
    IntentResult response = new IntentResult(requestCode, resultCode, data);
    intentResult.add(response);
}

我可能找错了地方,但如果它不感兴趣,这似乎不会转发收到的 Intent。 (我假设云构建使用 CodenameOneActivity 来构建 Android 应用程序)。

我想this effectively broke that functionality. I've filed an issue跟踪这个。