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

com.virjar.ratel.api.rposed.callbacks.RC_LoadPackage 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.rposed.callbacks;

import android.content.pm.ApplicationInfo;

import com.virjar.ratel.api.hint.RatelEngineHistory;
import com.virjar.ratel.api.hint.RatelEngineVersion;
import com.virjar.ratel.api.rposed.IRposedHookLoadPackage;
import com.virjar.ratel.api.rposed.RposedBridge;


/**
 * This class is only used for internal purposes, except for the {@link LoadPackageParam}
 * subclass.
 */
public abstract class RC_LoadPackage extends RCallback implements IRposedHookLoadPackage {
	/**
	 * Creates a new callback with default priority.
	 * @hide
	 */
	@SuppressWarnings("deprecation")
	public RC_LoadPackage() {
		super();
	}

	/**
	 * Creates a new callback with a specific priority.
	 *
	 * @param priority See {@link RCallback#priority}.
	 * @hide
	 */
	public RC_LoadPackage(int priority) {
		super(priority);
	}

	/**
	 * Wraps information about the app being loaded.
	 */
	public static final class LoadPackageParam extends Param {
		/** @hide */
		public LoadPackageParam(RposedBridge.CopyOnWriteSortedSet callbacks) {
			super(callbacks);
		}

		/** The name of the package being loaded. */
		public String packageName;

		/** The process in which the package is executed. */
		public String processName;

		/** The ClassLoader used for this package. */
		public ClassLoader classLoader;

		/** More information about the application being loaded. */
		public ApplicationInfo appInfo;

		/** Set to {@code true} if this is the first (and main) application for this process. */
		public boolean isFirstApplication;

        /**
         * The path to the module's APK. ratel增加,请注意需要在引擎版本高于 1.3.8之后才可以使用
         */
        @RatelEngineVersion(RatelEngineHistory.V_1_3_8)
        public String modulePath;
	}

	/** @hide */
	@Override
	protected void call(Param param) throws Throwable {
		if (param instanceof LoadPackageParam)
			handleLoadPackage((LoadPackageParam) param);
	}
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy