android 分享到微信 使用fileProvider 无法识别的问题

时间:2025-01-26 12:53:31

加入这个Uri的方法转化为MediaStore类型

public static Uri getImageContentUri(Context context, File imageFile) {
        String filePath = ();
        Cursor cursor = ().query(.EXTERNAL_CONTENT_URI,
                new String[] { ._ID },  + "=? ",
                new String[] { filePath }, null);
        Uri uri = null;

        if (cursor != null) {
            if (()) {
                int id = ((._ID));
                Uri baseUri = (context, 包名.fileProvider",imageFile);
                uri = (baseUri, "" + id);
            }

            ();
        }

        //如果使用fileProvider获取失败,则使用此方法
        if (uri == null) {
            ContentValues values = new ContentValues();
            (, filePath);
            uri = ().insert(.EXTERNAL_CONTENT_URI, values);
        }

        return uri;
    }