小编kim*_*h.w的帖子

如何在 Android Pie 中使用 Intent.ACTION_OPEN_DOCUMENT

我正在使用 android 馅饼中的 Retrofit 制作个人资料照片更改功能。

这样我就成功地将相机拍摄的照片上传到服务器了。但我不知道如何将从图库中选择的照片传输到我的服务器。(我对 Java Kotlin 中的任何类型的代码都很满意。)

我稍后会上传视频。

我在谷歌上搜索了很多,但很难得到我想要的信息。

谷歌文档做得很好,但我不知道该怎么做。 https://developer.android.com/guide/topics/providers/document-provider

Google 文档显示了使用位图或输入流或其他内容的示例。

我需要位图或输入流才能使用 Retrofit 上传照片吗?

我实际上需要一个有效的 uri。

public void performFileSearch() {
        Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
        intent.addCategory(Intent.CATEGORY_OPENABLE);
        intent.setType("image/*");
        startActivityForResult(intent, PICTURES_DIR_ACCESS_REQUEST_CODE);
}


@Override
public void onActivityResult(int requestCode, int resultCode,Intent resultData) {
    if (requestCode == READ_REQUEST_CODE && resultCode ==Activity.RESULT_OK) {
        Uri uri = null;
        if (resultData != null) {
            uri = resultData.getData();
            Log.i(TAG, "Uri: " + uri.toString());
            showImage(uri);
        }
    }
}


public void Edit_Profile (String Image_Uri) {
    File file …
Run Code Online (Sandbox Code Playgroud)

java retrofit2 android-9.0-pie androidx android-10.0

8
推荐指数
1
解决办法
2万
查看次数