导航菜单

页面标题

页面副标题

哔哩哔哩 v1.6.6 - aya.java 源代码

正在查看: 哔哩哔哩 v1.6.6 应用的 aya.java JAVA 源代码文件

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


package bl;

import android.content.Context;
import android.provider.Settings;
import android.util.Log;
import java.io.BufferedWriter;
import java.io.File;
import java.io.OutputStreamWriter;
import java.lang.reflect.Field;
import java.lang.reflect.InvocationTargetException;
import java.net.Socket;
import tv.danmaku.videoplayer.core.danmaku.DanmakuConfig;

public class aya {
    public static void a(final Context context) {
        new Thread(new Runnable() {
            @Override
            public void run() {
                try {
                    aya.g(context);
                    aya.h(context);
                    aya.f(context);
                } catch (Throwable unused) {
                }
            }
        }).start();
    }

    private static boolean e(Context context) {
        if (!a(context, "android.permission.WRITE_SETTINGS")) {
            return false;
        }
        try {
            return Settings.System.putInt(context.getContentResolver(), "com.tencent.tpnsWatchdogPort", 1000);
        } catch (Throwable unused) {
            return false;
        }
    }

    public static void f(Context context) {
        try {
            int i = Settings.System.getInt(context.getContentResolver(), "com.tencent.tpnsWatchdogPort");
            if (i > 2048) {
                e(context);
                a("exit:", i);
                a("exit1:", i);
                a("exit2:", i);
            }
        } catch (Throwable unused) {
        }
    }

    public static boolean g(Context context) {
        try {
            StringBuffer stringBuffer = new StringBuffer(context.getDir("watchdog", 0).getAbsolutePath());
            stringBuffer.append(File.separator);
            stringBuffer.append("libtpnsWatchdog.so");
            String stringBuffer2 = stringBuffer.toString();
            if (!new File(stringBuffer2).exists()) {
                return true;
            }
            try {
                Log.i("XGFix", "fixsdfile exit:" + Runtime.getRuntime().exec("chmod 400 " + stringBuffer2).waitFor());
                return true;
            } catch (Throwable unused) {
                return false;
            }
        } catch (Throwable unused2) {
            return true;
        }
    }

    public static boolean h(Context context) {
        try {
            Class<?> cls = Class.forName("com.tencent.android.tpush.service.XGWatchdog");
            Object invoke = cls.getMethod("getInstance", Context.class).invoke(cls, context);
            Field declaredField = invoke.getClass().getDeclaredField("WatchdogPath");
            declaredField.setAccessible(true);
            declaredField.set(invoke, "echo");
            return true;
        } catch (InvocationTargetException unused) {
            return false;
        } catch (Exception unused2) {
            return false;
        }
    }

    private static boolean a(Context context, String str) {
        try {
            return context.getPackageManager().checkPermission(str, context.getPackageName()) == 0;
        } catch (Throwable th) {
            Log.e("XGFix", "checkPermission error", th);
            return false;
        }
    }

    private static void a(String str, int i) {
        Socket socket;
        BufferedWriter bufferedWriter;
        BufferedWriter bufferedWriter2 = null;
        try {
            try {
                socket = new Socket("127.0.0.1", i);
                try {
                    socket.setSoTimeout(DanmakuConfig.MIN_TAKE_OFF_DURATION);
                    bufferedWriter = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream()));
                    try {
                        bufferedWriter.write(str);
                        bufferedWriter.flush();
                        if (socket != null) {
                            try {
                                socket.close();
                            } catch (Exception e) {
                                Log.e("XGFix", "close socket failed " + e.getMessage());
                            }
                        }
                    } catch (Exception unused) {
                        bufferedWriter2 = bufferedWriter;
                        if (socket != null) {
                            try {
                                socket.close();
                            } catch (Exception e2) {
                                Log.e("XGFix", "close socket failed " + e2.getMessage());
                            }
                        }
                        if (bufferedWriter2 != null) {
                            bufferedWriter2.close();
                        }
                        return;
                    } catch (Throwable th) {
                        th = th;
                        bufferedWriter2 = bufferedWriter;
                        if (socket != null) {
                            try {
                                socket.close();
                            } catch (Exception e3) {
                                Log.e("XGFix", "close socket failed " + e3.getMessage());
                            }
                        }
                        if (bufferedWriter2 != null) {
                            try {
                                bufferedWriter2.close();
                                throw th;
                            } catch (Exception unused2) {
                                throw th;
                            }
                        }
                        throw th;
                    }
                } catch (Exception unused3) {
                } catch (Throwable th2) {
                    th = th2;
                }
            } catch (Exception unused4) {
                return;
            }
        } catch (Exception unused5) {
            socket = null;
        } catch (Throwable th3) {
            th = th3;
            socket = null;
        }
        if (bufferedWriter != null) {
            bufferedWriter.close();
        }
    }
}