导航菜单

页面标题

页面副标题

BAM Crawford v6.14.1 - MediaArtworkContentProvider.java 源代码

正在查看: BAM Crawford v6.14.1 应用的 MediaArtworkContentProvider.java JAVA 源代码文件

本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。


package org.birkir.carplay.media;

import android.content.ContentProvider;
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.net.Uri;
import android.os.ParcelFileDescriptor;
import com.bumptech.glide.c;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.net.URLEncoder;
import java.nio.channels.FileChannel;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.concurrent.TimeUnit;
import kotlin.jvm.internal.DefaultConstructorMarker;
import kotlin.jvm.internal.k;
import ok.j;

public final class MediaArtworkContentProvider extends ContentProvider {
    public static final a p = new a(null);
    private static final Map q = new LinkedHashMap();

    public static final class a {
        private a() {
        }

        public a(DefaultConstructorMarker defaultConstructorMarker) {
            this();
        }

        public final String b(Uri uri) {
            try {
                String uri2 = uri.toString();
                k.d(uri2, "uri.toString()");
                String encode = URLEncoder.encode(uri2, "UTF-8");
                k.d(encode, "encode(url, \"UTF-8\")");
                return new j("[/:.?&=]").e(encode, "_");
            } catch (Exception unused) {
                return null;
            }
        }

        public final Uri c(Context context, Uri uri) {
            k.e(context, "context");
            k.e(uri, "uri");
            String b = b(uri);
            if (b == null) {
                Uri EMPTY = Uri.EMPTY;
                k.d(EMPTY, "EMPTY");
                return EMPTY;
            }
            Uri contentUri = new Uri.Builder().scheme("content").authority(context.getPackageName() + ".MediaArtworkContentProvider").path(b).build();
            Map map = MediaArtworkContentProvider.q;
            k.d(contentUri, "contentUri");
            map.put(contentUri, uri);
            return contentUri;
        }
    }

    private final void b(FileInputStream fileInputStream, FileOutputStream fileOutputStream) {
        FileChannel fileChannel;
        FileChannel fileChannel2 = null;
        try {
            FileChannel channel = fileInputStream.getChannel();
            try {
                fileChannel2 = fileOutputStream.getChannel();
                channel.transferTo(0L, channel.size(), fileChannel2);
                try {
                    channel.close();
                } finally {
                    if (fileChannel2 != null) {
                        fileChannel2.close();
                    }
                }
            } catch (Throwable th2) {
                th = th2;
                FileChannel fileChannel3 = fileChannel2;
                fileChannel2 = channel;
                fileChannel = fileChannel3;
                if (fileChannel2 != null) {
                    try {
                        fileChannel2.close();
                    } finally {
                        if (fileChannel != null) {
                            fileChannel.close();
                        }
                    }
                }
                throw th;
            }
        } catch (Throwable th3) {
            th = th3;
            fileChannel = null;
        }
    }

    @Override
    public int delete(Uri uri, String str, String[] strArr) {
        k.e(uri, "uri");
        return 0;
    }

    @Override
    public String getType(Uri uri) {
        k.e(uri, "uri");
        return null;
    }

    @Override
    public Uri insert(Uri uri, ContentValues contentValues) {
        k.e(uri, "uri");
        return null;
    }

    @Override
    public boolean onCreate() {
        return true;
    }

    @Override
    public ParcelFileDescriptor openFile(Uri uri, String mode) {
        k.e(uri, "uri");
        k.e(mode, "mode");
        Context context = getContext();
        if (context == null) {
            return null;
        }
        Uri uri2 = (Uri) q.get(uri);
        if (uri2 == null) {
            throw new FileNotFoundException(uri.getPath());
        }
        File file = new File(context.getCacheDir(), p.b(uri));
        if (!file.exists()) {
            try {
                File downloadedFile = (File) c.v(context).n().E0(uri2).K0().get(30L, TimeUnit.SECONDS);
                k.d(downloadedFile, "downloadedFile");
                b(new FileInputStream(downloadedFile), new FileOutputStream(file));
            } catch (Exception unused) {
                return null;
            }
        }
        return ParcelFileDescriptor.open(file, 268435456);
    }

    @Override
    public Cursor query(Uri uri, String[] strArr, String str, String[] strArr2, String str2) {
        k.e(uri, "uri");
        return null;
    }

    @Override
    public int update(Uri uri, ContentValues contentValues, String str, String[] strArr) {
        k.e(uri, "uri");
        return 0;
    }
}