android-buddy VS Byte Buddy

Compare android-buddy vs Byte Buddy and see what are their differences.

android-buddy

Transform Android project classes with Byte Buddy at compile time (by LikeTheSalad)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
android-buddy Byte Buddy
1 5
43 6,012
- -
0.0 9.0
over 1 year ago 8 days ago
Kotlin Java
MIT License Apache License 2.0
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

android-buddy

Posts with mentions or reviews of android-buddy. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-03-28.
  • Byte Buddy on Android made possible
    5 projects | /r/android_devs | 28 Mar 2021
    That's what happened to me when I tried to write some bytecode transformations using Byte Buddy. I noticed that they wouldn't work for Android right away, and instead, some sort of adapter is needed in order to make the connection between these bytecode transforming tools and the Android compilation so that said transformations happen at compile time. Sadly for me, such compilation adapter didn't exist for Byte Buddy and Android, which is why I took the time to create one: Android Buddy.

Byte Buddy

Posts with mentions or reviews of Byte Buddy. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-09-21.
  • Monkey-patching in Java
    2 projects | dev.to | 21 Sep 2023
    As seen above, the API exposes the user to low-level bytecode manipulation via byte arrays. It would be unwieldy to do it directly. Hence, real-life projects rely on bytecode manipulation libraries. ASM has been the traditional library for this, but it seems that Byte Buddy has superseded it. Note that Byte Buddy uses ASM but provides a higher-level abstraction.
  • Any news on the Classfile API?
    5 projects | /r/java | 23 Dec 2022
    Just a drive-by comment: ByteBuddy is worth a look https://bytebuddy.net/. It is built on top of ASM.
  • Proposed: A new CMake scripting language usable alongside existing one
    9 projects | news.ycombinator.com | 6 Dec 2022
    > can you show an example of how you'd parse, say, a .java.in

    The canonical way to do such a thing is through the java annotation processing api [1] and using a tool like java poet [2]. Before you did that, you'd probably decide if you wanted to instead use bytecode generation with a library like bytebuddy [3]

    But, assuming for some reason, you wanted to torture yourself and actually consume a java.in file and apply a regex, then you'd probably pull out the "maven-replacer-plugin" [4] and configure that for the task at hand. (or use your favorite templating language plugin. There's a million of them).

    Though, to be fair, this really isn't something that comes up in regular java programming due to the nature of the ecosystem. Anything you'd want to codegen likely already has a library and anything you didn't would receive (legitimate) push back.

    [1] https://www.baeldung.com/java-annotation-processing-builder

    [2] https://github.com/square/javapoet

    [3] https://bytebuddy.net/

    [4] https://github.com/beiliubei/maven-replacer-plugin

  • is rust the only language to have procedural macros?
    2 projects | /r/rust | 19 Feb 2022
    Have a look at byte buddy.
  • Byte Buddy on Android made possible
    5 projects | /r/android_devs | 28 Mar 2021
    If you've ever used libraries like https://github.com/JakeWharton/hugo or https://hibernate.org/ (if you've ever done some backend development) and wondered how do they seem to add some code/logic into your app just by adding some annotation to some method, or if you ever wondered how mocking frameworks like Mockito can change a class behavior for example, then most likely you're interested in a programming technique that allows to modify existing code, usually known as Aspect oriented programming (also known in Java as Bytecode instrumentation) which, even though it might sound intimidating at first, some really cool tools such as Byte Buddy or AspectJ make it quite easy to accomplish.

What are some alternatives?

When comparing android-buddy and Byte Buddy you can also consider the following projects:

dependency-analysis-gradle-plugin - Gradle plugin for JVM projects written in Java, Kotlin, Groovy, or Scala; and Android projects written in Java or Kotlin. Provides advice for managing dependencies and other applied plugins

Javassist - Java bytecode engineering toolkit

hugo - Annotation-triggered method call logging for your debug builds.

Byteman - Byteman Project main repo

aaper - Ensure Android runtime permissions using annotations only

easydeviceinfo - :iphone: [Android Library] Get device information in a super easy way.

Hibernate - Hibernate's core Object/Relational Mapping functionality

timber - A logger with a small, extensible API which provides utility on top of Android's normal Log class.

gradle-play-publisher - GPP is Android's unofficial release automation Gradle Plugin. It can do anything from building, uploading, and then promoting your App Bundle or APK to publishing app listings and other metadata.

joda-time-android - Joda-Time library with Android specialization

StatusBarUtil - A util for setting status bar style on Android App.

OpenKeychain - OpenKeychain is an OpenPGP implementation for Android.