March 3, 2014 By: Will Verduzco
You may recall that back in December, we briefly talked about XDA Senior Member Beatsleigher‘s JDroidLib. This library was conceptually based on the previously covered AndroidLib .NET library by Recognized Developer regaw_leinad, but built on Java in order to be compatible with more than .NET languages.
When we previously covered JDroidLib, the project allowed users to easily install ADB and Fastboot on any every supported platform. However, we also noted that more features were in the works. Now, JDroidLib has made it into the beta stage. And as expected, it packs quite a few new features including a revamped installation to fix some errors, device detection, the ability to pull device information, reboot methods, and the ability to execute any type of command.
Those looking to build applications utilizing device to PC communication should check out the latest version of the JDroidLib project. More information can be found in the project thread.
With KitKat on the Nexus 5, the default Google Experience Launcher displays aesthetically appealing translucent status and navigation bars. This was a long-awaited feature, which was already available in several custom ROMs ever since Froyo or even earlier. Obviously, however, time runs slower for official Android. But after all these years, the launcher finally looks like it should have from the beginning.
Translucent bars look great, but Google didn’t entirely avoid errors when implementing it. One example is when using ActionBar, the car color doesn’t extend behind the status bar itself. Luckily there is an easy fix, and it comes from XDA Forum Member Takhion.
Extended ActionBar is a simple activity that fixes all these little annoyances with your translucent bars. The developer hopes to transform it into a proper library at some point, but even this hacky workaround functions as it should. The result of adding this activity to your app or theme can be seen easily, and the best examples of this can be seen in the thread.
If you are an app developer or themer and ever wondered how to make your work more beautiful, you should definitely visit the original thread and implement this activity into your project.
January 25, 2014 By: eagleeyetom
If you are an app developer, you more than likely use many external libraries created by other developers. These libraries can be used to beautify your app’s UI or simply add some new features. One of the most visible parts in many different types of applications is the progress bar, which of course can be improved, as practically everything else in the most popular mobile operating system.
Android is not Holo blue only, and can benefit from a variety of colors. And thanks to a library by XDA Forum Member Castorflex, your progress bars can be a testament to this. With SmoothProgressBar, it’s possible to completely change the look of the basic progress bar. The library changes the animation significantly, and the process is thoughtfully explained in the author’s blog entry. If you want to see the library in action, there is a sample app to check how the progress bar can look, as well as a sample video on YouTube. The project is open source, so if you have some ideas of improving it, feel free to make a pull request.
More information regarding this project can be found in the library thread.
If you are creating a new application, you may have thought about adding in Gmail connectivity. After all, if the application is a social app, it’s nice to be able to share things with friends. Even if it’s not a social app, there are dozens of other reasons why you would perhaps want to allow for Emails to be sent directly from the app.
In Android, there are various ways of accomplishing this. Most would go about this using the Share intent and then having the selected content automatically populate in a new Gmail message. While this works and is the best solution in a variety of situations, there are other times in which you’d be better off keeping your users within the confines of your own app.
Thankfully, XDA Forum Member krvoZD created a simple library that allows you to easily incorporate background Gmail sending into your app with just a few easy steps. Using krvoZD’s library, your app will be able to send Emails without having to load a separate application. And once the message has been created, you can optionally add a toast message informing your app’s user of the progress.
If you have been looking for a way to add email connectivity to your app, without forcing users to leave your app in order to send a message, this library will undoubtedly help you get started. Head over to the library thread to learn more.
December 30, 2013 By: eagleeyetom
The ViewPager class is commonly used in Android, starting from Honeycomb onwards. You can see it in action in the Google Play Store, where you can browse applications or games by category, by simply swiping left or right.
These applications are also often created to be compatible with older versions of Android such as Froyo. However, not many devices run Froyo anymore, as more than 75% of devices run Honeycomb or greater. Keeping compatibility with older versions forces the developer to make the APK bigger and possibly slower.
XDA Senior Member gade12 modified the Google Library to reduce its size by removing compatibility libs. Gade12 removed all unrelated code before API level 11. The ViewPager library after modification is much smaller, and it takes just over 120 KB. Using it in your application will reduce the amount of code, size and possibly improve the speed of the application. Of course, this breaks the compatibility with older Android devices, but you still have a choice between the original library from Google and the modified one by gade12.
If you are an app developer and want to try modified ViewPager library in one of your projects, make your way to the original thread and grab the compiled Java Archive. You can see ViewPager class in action in the following video:
Every app and game developer undoubtedly knows about importance of having a good Google Play Store rating. These little stars very often determine whether app is commercially successful. Without ratings, many great apps will remain buried in the 20th page of your search results.
Many applications display nag screens, prompting users to leave ratings in the Google Play Store. To use this method, you need a library, which must be included in your app. Thankfully, you don’t have to write such a module yourself, as XDA Forum Member mariosangiorgio has done so already and was kind enough to share it with everybody. The developer carefully explained how to use his library in his Github repository.
If you are an app developer, you should consider visiting the library thread to learn more about adding this implementation to your project. And if you use this library in your app-in-progress, make sure to leave a kind word in the thread and/or contribute to the code on Github.
December 23, 2013 By: eagleeyetom
A few days, we talked about AndroPy, a Python library meant to improve communications between your Android device and your *Nix-based PC. While ADB is easy enough to work with for most, many beginners aren’t quite familiar with this vital debugging tool.
XDA Senior Member zantekk‘s AndroPy was only compatible with Linux systems running x86-64 architecture. However, Recognized Developer cybojenix decided to use this idea to make a library that is also compatible with Windows, and so PyAdb was created.
PyAdb allows you to use the standard ADB commands within the terminal or command prompt. Pushing or pulling files is no longer a hard task. The only missing feature is shell integration, but hopefully it will be added in a coming version. The project is still in a very early development stage. But since it’s an open source tool, other developers can make contributions to help make it bug-free. The only requirements to use this tool are that you have Python vesion 2.7 installed and ADB set up.
If you are looking for a library to communicate with your phone or if you are simply curious how this library works, make your way to the development thread to give it a shot.
There is an almost infinite wealth of app development knowledge housed within Google’s Developer Pages. However, not every solution presented by Google is the most optimal, and there is still plenty of room for some improvement. A good example is the ShareActionProvider class that is responsible for the share option within apps. You’ve undoubtedly encountered this in apps like Gallery, for example.
XDA Recognized Contributor nikwen noticed that data sharing isn’t done dynamically, so it consumes more time. This is because the application need to identify the file type. Then, it creates the correct sharing activity. Nikwen decided to improve this library by creating his own open source replacement, capable of handling sharing dynamically. This saves a lot of time and removes all limits from Google’s implementation. This can be seen in practice in XDA Senior Member SimplicityApks‘s previously covered FunctionCapture application.
The developer shows that even great solutions can be improved upon, and that’s the beauty of Android. If you are interested in the project and develop your own applications, head over to the original thread to learn more about adding DynamicShareActionProvider to your work.
December 17, 2013 By: eagleeyetom
When you get a new Android device, you are undoubtedly extremely excited. More than likely, one of your buddies told you about these so-called “ROMs,” root access, and so on. But you need to start somewhere, and this is how your journey on XDA begins.
For most of you, using ADB is simple like making tea. However, some of less experienced folks may struggle with installing a fully working ADB and fastboot, especially on Linux. Android Debug Bridge is a must when you want to get a log of your device or simply to root it sometimes.
Inspired by JDroidLib, XDA Senior Member zantekk wrote a python equivalent to make the communication between your phone / tablet and Linux PC easier. This library is still in early development stage, so not many things work. However, you can install the ADB binary on 64-bit version of Linux as well as reboot your device to bootloader and recovery. It can also execute the shell commands needed to do things such as changing permissions. The only requirements are a (64-bit) Linux machine and Python 3 installed.
December 9, 2013 By: eagleeyetom
XDA is the place where many amazing projects start. We have seen the first Android builds for the HTC HD2, first root on many devices, and many other epic projects. That’s why we are calling XDA a place for developers, by developers. A few days ago we talked about about JDroidLib, which was meant to improve the communication between PC and phone. Now it’s time to highlight another amazing piece of work.
XDA Recognized Developer AChep (Artem Chepurnoy) wrote a library to replicate the effect seen in Google Music and other Google applications. In these apps, the image visible on top of the screen becomes less visible while scrolling down. Achep was kind enough to demonstrate the functionality of his library on YouTube in order to allow everyone to see the library in action. You can also download a sample app to check it on your own.
This library can be used to improve the aesthetics of Android apps. The library is available for Android 4.0+ (master branch) and 2.1+ (android-support). Now it’s up to app developers to see Header2ActionBar in action.
The library is an open source project and doesn’t contain a binary file. If you are interested in the project, go to the original thread to learn more. You can also contribute to the project by submitting a pull request.
December 3, 2013 By: eagleeyetom
Over a year ago, we talked about AndroidLib, the .NET assembly library written in C# that easily handles communication between a connected Android device and your program. It’s a great and innovative project, but it is unfortunately limited to Windows systems, as .NET works only with C#, F#, Visual C++, Visual Basic, Visual C++, and Visual C++, rather than the cross-platform Java.
Inspired by the AndroidLib idea, XDA Senior Member Beatsleigher started a project to rewrite the project in Java. The idea is simple. This project can now be used with Unix-like systems such as Linux or MacOS. So far, this projects allows users to easily install ADB on every supported platform. The same thing can be done with fastboot. It can ease the efforts for some less tech-savvy users, as installing ADB and fastboot manually isn’t exactly the easiest task. The developer plans to add tons of handy features, and we wish him good luck with the project.
The binary is not distributed, but it can be compiled from source. More information regarding project can be found in the original thread, so make your way there and give it a try.
November 9, 2013 By: Will Verduzco
If you’re creating certain types of apps in Java that are geared towards Windows users, you may run into some difficulty accessing and making changes to the Windows registry from within your app. Unlike .Net, which has provisions specifically to allow this, Java doesn’t inherently support this type of operation. This is initially what XDA Senior Member Beatsleigher discovered when porting one of his existing applications to Java, but thankfully it didn’t stop him.
When faced with the challenge of porting over one of his applications to Java, he initially found difficulty in accessing the registry. After doing research into what is needed and taking bits of code from various sources, he went ahead and created a Java Class Library intended to bring this functionality to any Java app developer easily. The library lets you view and modify the Windows registry from within your application, without manually finding and modifying the registry files directly.
If you’re a Java app developer and you wish to modify the Windows registry, Beatsleigher’s library may be a real time saver. To learn more, make your way over to the library thread.
September 5, 2013 By: Will Verduzco
Recently, we featured a guide by XDA Senior Member Dr.Alexander_Breen aimed at bringing lockscreen-like music controls to your app. However, the method was overly complicated for many users. So in order to make the process easier, Dr.Alexander_Breen has created the open source library Remote Metadata Provider. And since it’s licensed with Apache 2.0, you can use in your projects (commercial or not).
Remote Metadata Provider allows you to create your own remote media controls, which behave similarly to the lock screen music controls described in the developer’s previous guide. However, usage of the Remote Metadata Provider library is much simpler than the last. You first add the library to your development project as an external JAR. Then, you follow a clear guide with example code listed within the thread’s main post.
Currently, there is a bug on HTC Sense devices, where you lose lock screen controls after calling RemoteMetadataProvider#acquireRemoteControls(). There is also (temporarily) a bug when using Android 4.3. However, this will be fixed in a future version.
Head over to the library and tutorial thread to get started.