FlixOlé v4.4.0版本的 MD5 值为:50e7f767ca3e8715936523e9ef089581

以下内容为反编译后的 b.java 源代码,内容仅作参考


package o.a.a.i;

import android.content.Context;
import android.database.DatabaseErrorHandler;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
public abstract class b extends SQLiteOpenHelper {
    private final Context context;
    private a encryptedHelper;
    private boolean loadSQLCipherNativeLibs;
    private final String name;
    private final int version;

    public interface a {
        o.a.a.i.a a(String str);

        o.a.a.i.a b(String str);

        o.a.a.i.a c(char[] cArr);

        o.a.a.i.a d(char[] cArr);
    }

    public b(Context context, String str, int i2) {
        this(context, str, null, i2);
    }

    public b(Context context, String str, SQLiteDatabase.CursorFactory cursorFactory, int i2) {
        super(context, str, cursorFactory, i2);
        this.loadSQLCipherNativeLibs = true;
        this.context = context;
        this.name = str;
        this.version = i2;
    }

    public b(Context context, String str, SQLiteDatabase.CursorFactory cursorFactory, int i2, DatabaseErrorHandler databaseErrorHandler) {
        super(context, str, cursorFactory, i2, databaseErrorHandler);
        this.loadSQLCipherNativeLibs = true;
        this.context = context;
        this.name = str;
        this.version = i2;
    }

    private a checkEncryptedHelper() {
        if (this.encryptedHelper == null) {
            try {
                Class.forName("net.sqlcipher.database.SQLiteOpenHelper");
                try {
                    this.encryptedHelper = (a) Class.forName("o.a.a.i.f").getConstructor(b.class, Context.class, String.class, Integer.TYPE, Boolean.TYPE).newInstance(this, this.context, this.name, Integer.valueOf(this.version), Boolean.valueOf(this.loadSQLCipherNativeLibs));
                } catch (Exception e) {
                    throw new o.a.a.d(e);
                }
            } catch (ClassNotFoundException unused) {
                throw new o.a.a.d("Using an encrypted database requires SQLCipher, make sure to add it to dependencies: https://greenrobot.org/greendao/documentation/database-encryption/");
            }
        }
        return this.encryptedHelper;
    }

    public o.a.a.i.a getEncryptedReadableDb(String str) {
        return checkEncryptedHelper().a(str);
    }

    public o.a.a.i.a getEncryptedReadableDb(char[] cArr) {
        return checkEncryptedHelper().c(cArr);
    }

    public o.a.a.i.a getEncryptedWritableDb(String str) {
        return checkEncryptedHelper().b(str);
    }

    public o.a.a.i.a getEncryptedWritableDb(char[] cArr) {
        return checkEncryptedHelper().d(cArr);
    }

    public o.a.a.i.a getReadableDb() {
        return wrap(getReadableDatabase());
    }

    public o.a.a.i.a getWritableDb() {
        return wrap(getWritableDatabase());
    }

    @Override
    public void onCreate(SQLiteDatabase sQLiteDatabase) {
        onCreate(wrap(sQLiteDatabase));
    }

    public void onCreate(o.a.a.i.a aVar) {
    }

    @Override
    public void onOpen(SQLiteDatabase sQLiteDatabase) {
        onOpen(wrap(sQLiteDatabase));
    }

    public void onOpen(o.a.a.i.a aVar) {
    }

    @Override
    public void onUpgrade(SQLiteDatabase sQLiteDatabase, int i2, int i3) {
        onUpgrade(wrap(sQLiteDatabase), i2, i3);
    }

    public void onUpgrade(o.a.a.i.a aVar, int i2, int i3) {
    }

    public void setLoadSQLCipherNativeLibs(boolean z) {
        this.loadSQLCipherNativeLibs = z;
    }

    public o.a.a.i.a wrap(SQLiteDatabase sQLiteDatabase) {
        return new g(sQLiteDatabase);
    }
}