Java7-on-Android alternatives and similar packages
Based on the "Tools" category.
Alternatively, view Java7-on-Android alternatives based on common mentions on social networks and blogs.
AndResGuard9.6 0.0 L2 Java7-on-Android VS AndResGuardproguard resource for Android by wechat team
Freeline9.2 0.0 L4 Java7-on-Android VS FreelineA super fast build tool for Android, an alternative to Instant Run
dex-method-counts8.4 0.0 L4 Java7-on-Android VS dex-method-countsCommand-line tool to count per-package methods in Android .dex files
scalpel8.4 0.0 L2 Java7-on-Android VS scalpelA surgical debugging tool to uncover the layers under your app.
ViewInspector8.0 0.0 L5 Java7-on-Android VS ViewInspectorView Inspection Toolbar for Android Development
vectalign7.9 0.0 L1 Java7-on-Android VS vectalignTool for create complex morphing animations using VectorDrawables (allows morphing between any pair of SVG images)
maven-android-sdk-deployerA tool to install components of the Android SDK into a Maven repository or repository manager to use with the Android Maven Plugin, Gradle and other tools.
AdaptiveTableLayoutLibrary that makes it possible to read, edit and write CSV files
Uber Apk Signer7.2 0.0 L2 Java7-on-Android VS Uber Apk SignerA cli tool that helps signing and zip aligning single or multiple Android application packages (APKs) with either debug or provided release certificates. It supports v1, v2 and v3 Android signing scheme has an embedded debug keystore and auto verifies after signing.
android-resource-remover7.2 0.0 L5 Java7-on-Android VS android-resource-removerA simple utility to remove unused resources in your Android app to lower the size of the APK. It's based on the Android lint tool output.
swiftp6.7 1.3 L2 Java7-on-Android VS swiftpFTP server for your android device.
AndroidLocalizationer6.3 0.0 L4 Java7-on-Android VS AndroidLocalizationerThis is a Android Studio/ IntelliJ IDEA plugin to localize your Android app, translate your string resources automactically.
Debug Bottle6.2 0.0 Java7-on-Android VS Debug Bottle🍼Debug Bottle is an Android runtime debug / develop tools written using kotlin language.
osmtracker-android6.1 0.0 L3 Java7-on-Android VS osmtracker-androidGPS tracking tool for OpenStreetMap
scrollscreenshot6.1 0.0 L2 Java7-on-Android VS scrollscreenshotMake Android screenshots of scrollable screen content
probe5.3 0.0 Java7-on-Android VS probeDissect layout traversals on Android
alfi5.2 0.0 Java7-on-Android VS alfiAndroid Library Finder
Let5.0 0.0 L4 Java7-on-Android VS LetAnnotation based simple API flavored with AOP to handle new Android runtime permission model
android-gradle-template4.8 0.0 L4 Java7-on-Android VS android-gradle-templateCombines tools for fast android app devlopment
ProMosaic4.6 0.0 L4 Java7-on-Android VS ProMosaicMake mosaic effect on android
PDFCreatorAndroidSimple library to generate and view PDF in Android
density-converter3.9 0.0 L2 Java7-on-Android VS density-converterA multi platform image density converting tool converting single or batches of images to Android, iOS, Windows or CSS specific formats and density versions given the source scale factor or width/height in dp. It has a graphical and command line interface and supports many image types (svg, psd, 9-patch, etc.) aswell as some lossless compressors like pngcrush.
USB-Device-Info3.8 0.0 L5 Java7-on-Android VS USB-Device-InfoThis application will provide information about almost all currently plugged-in USB devices.
enroscar3.7 0.0 L4 Java7-on-Android VS enroscarA set of Android tools that facilitate apps development
TaggerString3.6 0.0 Java7-on-Android VS TaggerStringTaggerString is very light library which allows to build dynamic string resource in much more readable way.
release-android-libraryRemote script to create a maven compatible release of an android library (aar)
Layout-to-ImageAndroid Layout (Relative Layout, Linear Layout etc) to Image
AndroidGradleStarterAndroid Gradle Starter
NotificationLog3.1 0.0 L5 Java7-on-Android VS NotificationLogUse an expanded notification as a makeshift Android log output console
Uber Adb Tools for AndroidA tool that enables advanced features through adb installing and uninstalling apps like wildcards and multi device support. Useful if you want to clean your test device from all company apks or install a lot of apks in one go. Written in Java so it should run on your platform.
PackageHunter3.1 0.0 L3 Java7-on-Android VS PackageHunter:inbox_tray: [Android Library] Hunt down all package information
Prefs3.0 0.0 Java7-on-Android VS PrefsSimple Android SharedPreferences wrapper.
Shutdown2.1 0.0 Java7-on-Android VS ShutdownAn android library that handles the closing of your app interactively.
Android-Intent-LibraryA library which will save you a lot of time from writing the same intent creation code. it consist of many intent creation codes like Share, Contacts, Email and etc, which you can easily use.
AnUitor1.7 0.0 L3 Java7-on-Android VS AnUitorAnUitor is a result of my rebranding experiences of one android app.
IntroApp1.3 0.0 Java7-on-Android VS IntroAppThis Android app adds splash screen slides to make a great intro for an app.
Kandy1.1 0.0 Java7-on-Android VS KandySweet Android libraries written in Kotlin
open-weather-retriever-zA wrapper that gets weather information from OpenWeatherMap
change-scene0.5 0.0 Java7-on-Android VS change-sceneSwitch between different layouts for different states, easily.
gplay.wscreate a badge to promote your own Android application in a single step
Appwrite - The Open Source Firebase alternative introduces iOS support
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of Java7-on-Android or a related project?
Using Java 7 & 8 Features on Android
Feeling like you're stuck in 2006 while developing apps and libraries for Android?
Don't worry, you're not alone. However, there's a solution!
To help bring Android Java development into the modern era, I've tested and compiled a list of Java 7 and 8 features that will work on Android. Some of them, I discovered through a bit of testing and modding, while others depend on libraries maintained by others independently. Without further BS, here's a list of everything that can be used without issues on at least Android 2.2+.
Google Now Officially Supports Java 7 on Android
Starting with Android 4.4, Google has declared officially that you can use Java 7 features with build-tools version 19. Directions for how to set it up with Gradle can be found on tools.android.com.
Possible (Working) Features
- Try with resources (auto closing file handlers)
- String switches
- Multiple exceptions caught in one catch block
- Integer (and binary) literals for readability
- Type inference on collections (a.k.a. "diamonds")
- Java 8 lambdas thanks to Orfjackal (instructions coming soon)
- Java 7 fork-join via JSR-166 (instructions coming soon)
Things that don't Work
- Java 7 file API (java.nio.*) because some native code needs ported
- File change notifications (watch/notify file api stuff)
- Invoke Dynamic and features that rely on it (would require modifying Dalvik to support it)
Setting up on Intellij IDEA 13 (and probably Android Studio)
The new Intellij finally has a built in option to override core libraries of Android, making much of the above far easier. The instructions below take advantage of this and allow us to override the core libraries with a jar within Intellij IDEA normal build process. If using Intellij IDEA 12, you'll have to use the old fallback instructions as the directions for Intellij IDEA 13 will not work.
- Clone this project or grab core.jar from the libs directory.
- Enable overriding the Android core libraries by going to File → Settings → Compiler → Android Compilers [alt text](imgs/core-libs.png "Enable overriding Android core libraries")
- Ensure core.jar is in your project library directory like below: [alt text](imgs/corejar.png "Put core.jar in the libs directory")
- Go to the File dropdown menu → Project Structure → Libraries and create a new library with core.jar: [alt text](imgs/addaslib.png "Add core.jar as a library")
- While still in the project setup area from above, go to "Modules" and add the newly created library as a project dependency. Ensure that it is placed above the Android SDK so that it overrides the Android SDK when necessary. [alt text](imgs/add-depend.png "Add core.jar as a project dependency.")
- Under the SDKs settings in the Platform Settings area, ensure you have an Android SDK set up to use at least Java 7 (Java 8 if you wish to use lambdas). Java 8 and Android are a bit quirky together in Intellij, so you may experience issues getting the Java 8 SDK to stick. [alt text](imgs/sdk-settings.png "Ensure an Android SDK is using Java 7 or Java 8")
- The final setting to change under the project settings area is under "Project." Change the project language level to 7.0 (8.0 if you are going to use lambdas). [alt text](imgs/lang-level.png "Add core.jar as a library")
- Run this project's Android TestActivity to ensure everything is set up properly. If it does not run or you see syntax errors in Intellij, then ensure you settings looks similar to my screen shots.
Does this really work on stock, unrooted/unmodified Android?
Yup, because it's either using syntactic sugar features (which does not modify the bytecode) or it overrides the existing Android libraries.
I'm having a problem unrelated to setting up the above configuration or running the provided example code.
If you're having an issue related to either, feel free to file an issue and I will try to help you out when I have a few moments. If you are having an issue pertaining to lambdas or fork-join involving possible bugs in those libraries, please contact the maintainers of each project respectfully.
Can I use Gradle with this?
I still have to test it, but it'll probably work as long as you add the jar as a dependency in Gradle instead of under Intellij's build system. Don't forget to [enable the core library](imgs/core-libs.png) setting though. Gradle is also the recommended way to use Java 8 lambdas via Evant's Gradle plugin until I find a method to do it without Gradle.
Can I use Ant?
If you need to use Ant, I have a guide for that.
Won't this affect the entire Android System and not just my app?
Since every Android app is sandboxed, only your code is affected.
Do you have example code showing things working?
Yes, please see the TestActivity included in this project.
Will this work for other resource classes (like ObjectInputStream)?
I'm sure it will, I just didn't include them in the jar. See the implemented InputStreams source as a template in the jar. I had to wrap them versus extending due to IDE complaints I was getting (in IDEA 12). Moving them to a separate module might solve that though or IDEA 13 may no longer require that (need to test it).
Why doesn't Google implement these features themselves if they work?
I don't work for Google and cannot answer that any better than any other non-employee. Perhaps eventually they will add them, but it's probably more likely they will add official support for a language alternative to Java first.
Will this work on Eclipse/Netbeans/etc?
Probably, but I don't really know how Android works on Eclipse/Netbeans, so you're on your own for that. If someone wishes to document the setup process for either, let me know and I will add it here when you're done. Aside from that, Ant works outside of Intellij, but requires some modifying of the build.xml to override some of the compilation time stuff.