kandi background
Explore Kits

dex2jar | Tools to work with android .dex and java .class files | Plugin library

 by   pxb1988 Java Version: v2.1 License: Apache-2.0

 by   pxb1988 Java Version: v2.1 License: Apache-2.0

Download this library from

kandi X-RAY | dex2jar Summary

dex2jar is a Java library typically used in Plugin, Gradle applications. dex2jar has no bugs, it has no vulnerabilities, it has build file available, it has a Permissive License and it has high support. You can download it from GitHub.
Tools to work with android .dex and java .class files.
Support
Support
Quality
Quality
Security
Security
License
License
Reuse
Reuse

kandi-support Support

  • dex2jar has a highly active ecosystem.
  • It has 9043 star(s) with 1720 fork(s). There are 429 watchers for this library.
  • There were 1 major release(s) in the last 12 months.
  • There are 400 open issues and 86 have been closed. On average issues are closed in 63 days. There are 4 open pull requests and 0 closed requests.
  • It has a negative sentiment in the developer community.
  • The latest version of dex2jar is v2.1
dex2jar Support
Best in #Plugin
Average in #Plugin
dex2jar Support
Best in #Plugin
Average in #Plugin

quality kandi Quality

  • dex2jar has 0 bugs and 0 code smells.
dex2jar Quality
Best in #Plugin
Average in #Plugin
dex2jar Quality
Best in #Plugin
Average in #Plugin

securitySecurity

  • dex2jar has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
  • dex2jar code analysis shows 0 unresolved vulnerabilities.
  • There are 0 security hotspots that need review.
dex2jar Security
Best in #Plugin
Average in #Plugin
dex2jar Security
Best in #Plugin
Average in #Plugin

license License

  • dex2jar is licensed under the Apache-2.0 License. This license is Permissive.
  • Permissive licenses have the least restrictions, and you can use them in most projects.
dex2jar License
Best in #Plugin
Average in #Plugin
dex2jar License
Best in #Plugin
Average in #Plugin

buildReuse

  • dex2jar releases are available to install and integrate.
  • Build file is available. You can build the component from source.
  • dex2jar saves you 18435 person hours of effort in developing the same functionality from scratch.
  • It has 36026 lines of code, 2248 functions and 329 files.
  • It has high code complexity. Code complexity directly impacts maintainability of the code.
dex2jar Reuse
Best in #Plugin
Average in #Plugin
dex2jar Reuse
Best in #Plugin
Average in #Plugin
Top functions reviewed by kandi - BETA

kandi has reviewed dex2jar and discovered the below as its top functions. This is intended to give you an instant insight into dex2jar implemented functionality, and help decide if they suit your requirements.

  • Build the interpreter .
  • or if there are no bad ops
  • Rebuild instructions for LDC .
  • Execute a given instruction .
  • Generate the class visitor .
  • Wrap a class visitor .
  • Make a reference to a local variable .
  • Makes sure all arrays have been assigned to all arrays .
  • Collect class information .
  • Builds an IRMethod object from the MethodNode .

dex2jar Key Features

dex-reader/writer: Read/write the Dalvik Executable (.dex) file. It has a light weight API similar with ASM.

d2j-dex2jar: Convert .dex file to .class files (zipped as jar)

smali/baksmali: disassemble dex to smali files and assemble dex from smali files. different implementation to smali/baksmali, same syntax, but we support escape in type desc "Lcom/dex2jar\t\u1234;"

other tools: d2j-decrypt-string

Using R8 and proguard to remove logging, but turn off everything else

copy iconCopydownload iconDownload
-assumenosideeffects class android.util.Log {
    public static boolean isLoggable(java.lang.String, int);
    public static *** v(...);
    public static *** d(...);
    public static *** i(...);
    public static *** w(...);
    public static *** e(...);
}

Frida: Replace string literal in class method

copy iconCopydownload iconDownload
Java.perform(function() {
  var ObfuscatedClass = Java.use('o.bdq$if');
  ObfuscatedClass.ॱ.implementation = function(string, stringArray) { // replace original implementation
    var modifiedStringArray = ...; // do your stuff with the stringArray that contains your hash
    return this.ॱ(string, modifiedStringArray); // call original method with modified string array containing new hash
  }
});

Community Discussions

Trending Discussions on dex2jar
  • Using R8 and proguard to remove logging, but turn off everything else
  • Proguard method optimization
  • Can't find native libraries used by apk on my phone
  • unkowen classes after decompile using jdax/dex2jar
  • Frida: Replace string literal in class method
Trending Discussions on dex2jar

QUESTION

Using R8 and proguard to remove logging, but turn off everything else

Asked 2022-Mar-22 at 14:44

I am trying to use R8 and proguard to remove logging from the release build. The catch is that I need to this be minimally invasive at the moment, so I would like to enable R8/proguard to remove logs, but turn off everything else. IE minifcation, obfuscation, etc.

build.gradle:

release {
    minifyEnabled true
    proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}

proguard-rules.pro:

-dontobfuscate
-dontoptimize
-dontshrink

-assumenosideeffects class android.util.Log {
    public static boolean isLoggable(java.lang.String, int);
    public static int v(...);
    public static int w(...);
    public static int e(...);
    public static int d(...);
    public static int i(...);
}

However when building and deploying a release build the logs are not removed. I imagine that this is because assumenosideeffects runs as part of one of the options that I turned off.

I have also tried this:

-keep class ** { *; }

-assumenosideeffects class android.util.Log {
    public static boolean isLoggable(java.lang.String, int);
    public static int v(...);
    public static int w(...);
    public static int e(...);
    public static int d(...);
    public static int i(...);
}

However that also still leaves logging.

Without moving to a different logging library or modifying code, is is possible to to remove logging with R8/proguard and not run anything else?

EDIT:

I an effort to figure out why proguard/r8 is not removing logs I created a brand new project. I added one line of logging with the following config:

release {
    debuggable true
    minifyEnabled true
    proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}

However when I build the release version and install the APK I am still seeing logging, which means my log statement was not removed.

EDIT:

debuggable true 

Does skip r8 optimization. So this is not a good way to verify logs have been removed by proguard. Using a dex to jar application to verify is the way to go. dex2jar worked for me.

ANSWER

Answered 2022-Mar-22 at 14:44

Please remove debuggable true line from release block that's why you are seeing logs in build.

Source https://stackoverflow.com/questions/71443326

Community Discussions, Code Snippets contain sources that include Stack Exchange Network

Vulnerabilities

No vulnerabilities reported

Install dex2jar

You can download it from GitHub.
You can use dex2jar like any standard Java library. Please include the the jar files in your classpath. You can also use any IDE and you can run and debug the dex2jar component as you would do with any other Java program. Best practice is to use a build tool that supports dependency management such as Maven or Gradle. For Maven installation, please refer maven.apache.org. For Gradle installation, please refer gradle.org .

Support

For any new features, suggestions and bugs create an issue on GitHub. If you have any questions check and ask questions on community page Stack Overflow .

DOWNLOAD this Library from

Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from
over 430 million Knowledge Items
Find more libraries
Reuse Solution Kits and Libraries Curated by Popular Use Cases

Save this library and start creating your kit

Explore Related Topics

Share this Page

share link
Try Top Libraries by pxb1988
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from
over 430 million Knowledge Items
Find more libraries
Reuse Solution Kits and Libraries Curated by Popular Use Cases

Save this library and start creating your kit

  • © 2022 Open Weaver Inc.