gpt4 book ai didi

android - GET_CONTENT Intent 在调试中有效,但在发布版本中无效

转载 作者:行者123 更新时间:2023-11-30 03:06:41 25 4
gpt4 key购买 nike

我在 Android 应用程序中运行的 Intent 有问题。它在我的应用程序的调试版本中完美运行,但在我的发布版本中却不行。我错过了什么吗?

这是 Intent 代码和 Activity 结果回调。

protected void onActivityResult(int requestCode, int resultCode, Intent intent) {
if (requestCode != FILECHOOSER_RESULTCODE) return;
if (null == mUploadMessage) return;
mUploadMessage.onReceiveValue(intent.getData());
mUploadMessage = null;
}

private void pickFile() {
Intent chooserIntent = new Intent(Intent.ACTION_GET_CONTENT);
chooserIntent.setType("image/*");
startActivityForResult(chooserIntent, FILECHOOSER_RESULTCODE);
}

这里我调用了pickFile函数

    echoView.setWebChromeClient(new WebChromeClient() {

@SuppressWarnings("unused")
public void openFileChooser(ValueCallback<Uri> uploadMsg, String AcceptType, String capture) {
this.openFileChooser(uploadMsg);
}

@SuppressWarnings("unused")
public void openFileChooser(ValueCallback<Uri> uploadMsg, String AcceptType) {
this.openFileChooser(uploadMsg);
}

public void openFileChooser(ValueCallback<Uri> uploadMsg) {
mUploadMessage = uploadMsg;
pickFile();
}
}

最佳答案

我发现有两个问题。一个与有关调试/发布构建的问题特别相关,另一个与 Android 4.4 相关。

调试/发布构建

Proguard 已为发布版本启用,并且似乎剥离了 JavaScript 接口(interface),这出于某种原因干扰了对 openFileChooser 的回调。

安卓 4.4

在 KitKit 中,Android 团队移除了当用户点击 input[type=file] 元素时对 openFileChooser 的私有(private) API 调用。我还没有找到解决方法。在那之前,在 4.4 上通过 WebView 上传文件似乎是不可能的。

关于android - GET_CONTENT Intent 在调试中有效,但在发布版本中无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21698923/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com