Play House Simulation v3.0版本的 MD5 值为:4dbd745af43e6bcde3a0dca90b9e5934
以下内容为反编译后的 OooO.java 源代码,内容仅作参考
package OooO.OooO00o.OooO00o.OooOO0o;
import android.annotation.SuppressLint;
import android.content.Context;
import android.database.DatabaseErrorHandler;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
public abstract class OooO extends SQLiteOpenHelper {
private final Context context;
private OooO00o encryptedHelper;
private boolean loadSQLCipherNativeLibs;
private final String name;
private final int version;
public interface OooO00o {
OooO0o OooO00o(String str);
OooO0o OooO0O0(String str);
OooO0o OooO0OO(char[] cArr);
OooO0o OooO0Oo(char[] cArr);
}
public OooO(Context context, String str, int i) {
this(context, str, null, i);
}
private OooO00o checkEncryptedHelper() {
if (this.encryptedHelper == null) {
try {
Class.forName("net.sqlcipher.database.SQLiteOpenHelper");
try {
this.encryptedHelper = (OooO00o) Class.forName("OooO.OooO00o.OooO00o.OooOO0o.OooOOO").getConstructor(OooO.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 OooO.OooO00o.OooO00o.OooO0o(e);
}
} catch (ClassNotFoundException unused) {
throw new OooO.OooO00o.OooO00o.OooO0o("Using an encrypted database requires SQLCipher, make sure to add it to dependencies: https://greenrobot.org/greendao/documentation/database-encryption/");
}
}
return this.encryptedHelper;
}
public OooO0o getEncryptedReadableDb(String str) {
return checkEncryptedHelper().OooO0O0(str);
}
public OooO0o getEncryptedWritableDb(String str) {
return checkEncryptedHelper().OooO00o(str);
}
public OooO0o getReadableDb() {
return wrap(getReadableDatabase());
}
public OooO0o getWritableDb() {
return wrap(getWritableDatabase());
}
public void onCreate(OooO0o oooO0o) {
}
@Override
public void onCreate(SQLiteDatabase sQLiteDatabase) {
onCreate(wrap(sQLiteDatabase));
}
public void onOpen(OooO0o oooO0o) {
}
@Override
public void onOpen(SQLiteDatabase sQLiteDatabase) {
onOpen(wrap(sQLiteDatabase));
}
public void onUpgrade(OooO0o oooO0o, int i, int i2) {
}
@Override
public void onUpgrade(SQLiteDatabase sQLiteDatabase, int i, int i2) {
onUpgrade(wrap(sQLiteDatabase), i, i2);
}
public void setLoadSQLCipherNativeLibs(boolean z) {
this.loadSQLCipherNativeLibs = z;
}
public OooO0o wrap(SQLiteDatabase sQLiteDatabase) {
return new OooOOOO(sQLiteDatabase);
}
public OooO(Context context, String str, SQLiteDatabase.CursorFactory cursorFactory, int i) {
super(context, str, cursorFactory, i);
this.loadSQLCipherNativeLibs = true;
this.context = context;
this.name = str;
this.version = i;
}
public OooO0o getEncryptedReadableDb(char[] cArr) {
return checkEncryptedHelper().OooO0OO(cArr);
}
public OooO0o getEncryptedWritableDb(char[] cArr) {
return checkEncryptedHelper().OooO0Oo(cArr);
}
@SuppressLint({"NewApi"})
public OooO(Context context, String str, SQLiteDatabase.CursorFactory cursorFactory, int i, DatabaseErrorHandler databaseErrorHandler) {
super(context, str, cursorFactory, i, databaseErrorHandler);
this.loadSQLCipherNativeLibs = true;
this.context = context;
this.name = str;
this.version = i;
}
}