All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.virjar.ratel.api.RatelToolKit Maven / Gradle / Ivy

Go to download

ratel api,used for developer on ratel system,an extension for xposed framewrok,ratel api compatable with original xposed framework

There is a newer version: 1.3.6
Show newest version
package com.virjar.ratel.api;

import android.annotation.SuppressLint;
import android.content.Context;

import java.util.Set;
import java.util.concurrent.CopyOnWriteArraySet;

public class RatelToolKit {
    /**
     * 1。 以下对象,是暴露给调用方的额外API,可以通过他们操作ratel提供的额外功能(除开xposed本身功能之外)
     */
    //全局的一个context,context是调用Android系统功能的重要对象。有这个对象之后,无需手动通过拦截attach的方式获取context
    @SuppressLint("StaticFieldLeak")
    public static Context sContext = null;

    /**
     * 宿主apk的classLoader,可以替代llparma
     */
    public static ClassLoader hostClassLoader = null;
    /**
     * ratel框架的配置信息,代表了ratel编码、打包、运行过程产生的一些特定flag
     */
    public static RatelConfig ratelConfig = null;

    /**
     * ratel支持对文件进行重定向
     */
    public static IORelocator ioRelocator = null;

    /**
     * 当前进程名称
     */
    public static String processName = null;

    /**
     * 当成packageName
     */
    public static String packageName = null;


    public static String ratelVersionName = null;

    public static int ratelVersionCode = 0;

    /**
     * 虚拟化环境功能支持
     */
    public static VirtualEnv virtualEnv = null;

    /**
     * 指纹fake接口
     */
    public static FingerPrintModel fingerPrintModel = null;

    /**
     * 虚拟化环境下,sdcard将会被隔离,导致无法往sdcard写入数据。但是如果ratel模块期望通过sdcard和其他app交换数据,那么需要通过一个sdcard白名单进行放行
* 该路径规则为: /sdcard/ratel_white_dir/packageName/
* 如: /sdcard/ratel_white_dir/com.kanxue.container.demoapp
* 比如一般来说,通过文件实现多账户身份切换,指定文件为: /sdcard/ratel_white_dir/com.kanxue.container.demoapp/userId.txt */ public static String whiteSdcardDirPath = null; /** * @hidden */ public static Set ratalStartUpCallbackSet = new CopyOnWriteArraySet<>(); public static Set ratelEngineUpgradeEventSet = new CopyOnWriteArraySet<>(); @Deprecated public static void setOnRatelStartUpCallback(RatalStartUpCallback ratelStartUpCallback) { addOnRatelStartUpCallback(ratelStartUpCallback); } public static void addOnRatelStartUpCallback(RatalStartUpCallback ratalStartUpCallback) { ratalStartUpCallbackSet.add(ratalStartUpCallback); } public static void addOnEngineUpgradeListener(RatelEngineUpgradeEvent ratelEngineUpgradeEvent) { ratelEngineUpgradeEventSet.add(ratelEngineUpgradeEvent); } public static ProcessUtils processUtils = null; /** * 2。 以下以下对象,是用户层不需要关心的。我也不会做解释 */ public static HookProvider usedHookProvider; public static String TAG = null; }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy