![]() ![]() Perhaps we’ll leave that as a challenge for the really enthusiastic readers! In fact, if you really wanted to, you could even try using Scala and Groovy as well provided there is Gradle integration. This means we can support all JVM languages that are compatible with Dalvik and ART. Sten Suitsev: To be honest, it wasn’t a hard decision as we mostly operate at a bytecode level. InfoQ: JRebel for Android supports Kotlin, can you tell us about what lead you to this decision? Have you considered supporting other languages? We have had a few requests by Maven users but for the moment we are not looking into expanding to other build systems beyond Gradle. InfoQ: On the other hand, some Android Studio users still choose Maven as their build tool, will they still be able to benefit from JRebel for Android? It’s a possibility for the future though. InfoQ: If the logic is moved to the Gradle plugin, does that mean developers will be able to use JRebel for Android from the command line? We are decoupling our logic from the Android Studio plugin and pushing it into our Gradle plugin which will allow us to provide IntelliJ IDEA support as well. In fact, IntelliJ IDEA support has already been requested by many users. ![]() Our intention to go beyond Android Studio support for JRebel for Android is similar. Sten Suitsev: Our core JRebel product has full support for a wide range of IDEs. ![]() InfoQ: JRebel for Android is currently available for Android Studio, are you planning to support other IDEs in the near future? As a result this would be a much larger undertaking to support. However both would require developing the JRebel core from scratch rather than reusing large parts of our existing codebase as we've done with JRebel for Android. In the long term, we are considering bringing the idea of faster redeployments to other platforms like. So, in short, they might even work already! We’d love to hear user feedback about it, if users have given it a go. Jevgeni Kabanov: Having said that, and even though Android TV, Wear and Auto are not officially supported by JRebel for Android, they do share much of the same technology stack as phone and tablet applications. JRebel for Java is concerned chiefly with improving the integrations with the Java ecosystem and bettering the support for Docker, virtual machines and cloud. Most of the JRebel for Android product work is concerned with Android-specific features, like incremental builds and fast device sync. Although there’s some additional code reuse outside the aforementioned core, the objectives that we are pursuing with each of product are different. Jevgeni Kabanov: It’s important to mention here that JRebel and JRebel for Android are different products, each with their own roadmaps. InfoQ: After Android, what's next for JRebel? Are you planning to support any other Android flavours like Android TV, Android Wear or Android Auto? On the other side, we wanted big projects to update as fast as small ones, which created the need to apply changes incrementally Android tooling was never built to support incremental updates or installs, so a few areas of pain included incremental java compilation and Android resource packaging. On one side this meant being able to apply changes without having to go through the entire repackage and redeploy cycle, which we fixed with the JRebel for Android Agent. Sten Suitsev: We came across technical challenges on a daily basis, although one of the most substantial ones was making our “Apply changes” or runtime updates scalable over differently sized projects. ![]() InfoQ: What was the hardest technical challenge to develop JRebel for Android? Needless to say, there was a lot of work that was specific to dealing with Android technology, but the fact that we didn't need to start completely from scratch made a big difference when approaching the project. We realised that the JRebel Legacy core, the solution for reloading Java classes that we have been using for 9 years, could be reused when creating JRebel for Android. In this case the decisive factors were that there was a big and well understood problem in the market and that we could reuse our existing and unique technology to solve that problem. Jevgeni Kabanov: We weigh opportunities and alternatives carefully for every large investment at ZeroTurnaround. InfoQ: Why did you decide to create JRebel for Android? After announcing the first stable release of JRebel for Android, InfoQ reached out to Jevgeni Kabanov, founder and CEO of ZeroTurnaround, and Sten Suitsev, Product Manager of JRebel for Android, to find out more about what lead to the creation of this product and what might be coming next in their pipeline. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |