正在查看: 哔哩哔哩 v1.6.6 应用的 AuthProvider.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: 哔哩哔哩 v1.6.6 应用的 AuthProvider.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.bilibili.lib.account;
import android.content.ContentProvider;
import android.content.ContentValues;
import android.content.Context;
import android.content.SharedPreferences;
import android.database.Cursor;
import android.database.MatrixCursor;
import android.net.Uri;
import android.support.annotation.Keep;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import bl.kr;
import java.util.Map;
@Keep
public class AuthProvider extends ContentProvider {
public static final boolean DEBUG = false;
private static final String PREFERENCE_AUTHORITY_SUFFIX = ".provider.auth";
private static final String PREF_NAME = "bili.passport.auth";
private static final String TAG = "AuthProvider";
private SharedPreferences mPreferences;
@Override
@Nullable
public String getType(@NonNull Uri uri) {
return "vnd.android.cursor.item/vnd..provider.auth.item";
}
public static Uri getContentUri(Context context) {
return Uri.parse("content://" + context.getPackageName() + PREFERENCE_AUTHORITY_SUFFIX);
}
@Override
public boolean onCreate() {
Context context = getContext();
if (context == null) {
throw new IllegalStateException("context is null");
}
this.mPreferences = context.getSharedPreferences(PREF_NAME, 0);
return true;
}
@Override
@Nullable
public Cursor query(@NonNull Uri uri, String[] strArr, String str, String[] strArr2, String str2) {
if (strArr2 == null) {
return null;
}
String str3 = strArr2[0];
if (!this.mPreferences.contains(str3)) {
return null;
}
MatrixCursor matrixCursor = new MatrixCursor(new String[]{str3}, 1);
matrixCursor.newRow().add(this.mPreferences.getString(str3, null));
return matrixCursor;
}
@Override
@Nullable
public Uri insert(@NonNull Uri uri, ContentValues contentValues) {
SharedPreferences.Editor edit = this.mPreferences.edit();
for (Map.Entry<String, Object> entry : contentValues.valueSet()) {
Object value = entry.getValue();
String key = entry.getKey();
if (value == null) {
edit.remove(key);
} else if (value instanceof String) {
edit.putString(key, (String) value);
} else {
if (!kr.a(value.getClass())) {
return null;
}
edit.putString(key, value.toString());
}
}
edit.apply();
return uri;
}
@Override
public int delete(@NonNull Uri uri, String str, String[] strArr) {
if (strArr == null) {
this.mPreferences.edit().clear().apply();
} else {
this.mPreferences.edit().remove(strArr[0]).apply();
}
return 0;
}
@Override
public int update(@NonNull Uri uri, ContentValues contentValues, String str, String[] strArr) {
throw new UnsupportedOperationException("not implement");
}
public static void writeDirectly(Context context, String str, Object obj) {
SharedPreferences.Editor edit = context.getSharedPreferences(PREF_NAME, 0).edit();
if (obj == null) {
edit.remove(str);
} else if (obj instanceof String) {
edit.putString(str, (String) obj);
} else if (!kr.a(obj.getClass())) {
return;
} else {
edit.putString(str, obj.toString());
}
edit.apply();
}
public static String readDirectly(Context context, String str) {
return context.getSharedPreferences(PREF_NAME, 4).getString(str, null);
}
}