Cómo usar Android para ocultar clases y métodos ocultos
Coloque el archivo clases.jar en una carpeta y luego descomprímalo. Podemos obtener una carpeta de Android y una carpeta META_INF.
En el directorio de la versión SDK, a menudo usamos Buscar Android. jar, por ejemplo: sdk\platforms\android-19\android.jar Coloque 19android.jar en una carpeta y descomprímalo. Después de descomprimir, obtendrá muchas carpetas, incluidas: android, java, com, javax, org, META_INF y otras carpetas y el archivo resources.arsc.
Copie todos los archivos de la carpeta de Android extraída de Classes.jar a la carpeta de Android extraída de Android.jar y sobrescriba los archivos y carpetas con los mismos nombres de archivo. De hecho, encontrará que el contenido de las dos carpetas de Android anteriores es más o menos el mismo.
El paso más crítico es empaquetar las clases en la carpeta existente en un archivo java. Primero, abra la ventana de comando cmd en el directorio raíz de android.jar descomprimido e ingrese el comando jar cvfm android .jar META. -INF/MANIFEST.MF . / Si no se puede encontrar el jar, primero configure las variables de entorno. Luego verá la salida detallada del paquete en la consola. Para obtener parámetros de comando detallados de jar, consulte el comando jar aquí
Si todo va bien, puede obtener un archivo android.jar y luego descomprimir el archivo jar obtenido para ver si tiene la misma estructura que el original. Y no empaquete archivos con más de un nivel de directorio, de lo contrario no se utilizará. Si es correcto, reemplazará el archivo android.jar en nuestro SDK. Por ejemplo, reemplácelo con: archivo sdk\platforms\android-19\android.jar.
Luego pruebe, abra eclipse, ingrese aleatoriamente SurfaceControl en el archivo java de un proyecto de Android y vea si el sistema nos solicita que importemos el paquete SurfaceControl. Tenga en cuenta que es SurfaceControl 4.3 o superior. ¡Luego vea qué paso de detección se muestra arriba! De lo contrario, verifique qué paso anterior verificar.
Resumen de puntos de error:
El primer paso es garantizar que el archivo clases.jar se genere correctamente. En algunos sistemas, el archivo clases.odex predeterminado está empaquetado en clases.odex. Si básicamente no hay ningún problema con la carpeta de Android descomprimida.
Si se debe utilizar el archivo Classes.jar extraído de la carpeta de Android para sobrescribir completamente el contenido debajo del archivo Android.jar extraído de la carpeta de Android. Porque todos los métodos ocultos están en la carpeta de Android extraída por clases.jar.
Al empaquetar el comando, debido a errores de carpeta y directorio, el jar empaquetado tiene una carpeta más o una capa menos (faltan otras carpetas. El tamaño de android.jar es de aproximadamente 20 M).
El parámetro del comando jar es incorrecto; consulte el uso y el significado del parámetro del método jar.
Los parámetros del comando jar son incorrectos. Consulte el uso y el significado de los parámetros del método jar.