Skip to main content

Android Applications with Intellij IDEA - 1

This article applies to Android applications in Windows using IntelliJ IDEA development tools. Windows 7 was used in this example but the explanation will work for other recent versions of Windows.

It is quite a task learning how to use mobile application development tools. This page describes how to digitally sign your .apk file which is the Android application package file. In short, your Android program file.

Once you have created an APK file to launch it, simply copy to your device and use the Android file manager to install it. The picture below shows the digital signature keystore file, the unsigned APK file and the signed APK file.



The procedure of signing the APK file is quite straighforward but first you must ensure your Java JDK is properly installed and that the Java tools are accessible on your commandline (Windows command console - what used to be called the DOS window). Most important is that your PATH environmental variable (In Windows 7 find this at: Control Panel -> System->Advanced System Settings ->Environment Variables  ) should contain the path to the Java bin folder with an entry such as:

C:\Program Files (x86)\Java\jdk1.6.0_16\bin;

The rest of the story proceeds as follows:


1.
Create key storage folder. In my case it is shown on right
"C:\Users\DELL\Documents\A-Courses\Android\IntelliJ IDEA\ca\Keytools\keys"

2.
Change Directory to the key storage folder (created by yourself)
C:\Users\DELL>cd "C:\Users\DELL\Documents\A-Courses\Android\IntelliJ IDEA\ca\Keytools\keys"

3.
Create key with the following command (note that you can select different  keystore names – in red)
C:\Users\DELL\Documents\A-Courses\Android\IntelliJ IDEA\ca\Keytools\keys>keytool  -genkey -alias maneno.keystore -keyalg RSA -validity 20000 -keystore maneno.keystore

4.
The dialog that follows asks for several items as follows:

Note that some responses are optional. I have no idea which ones…
Passwords are not displayed when you enter them.
Enter keystore password:
Re-enter new password:
What is your first and last name?
  [Unknown]:  XXX YYYY
What is the name of your organizational unit?
  [Unknown]: VVV BBB
What is the name of your organization?
  [Unknown]:  UUU
What is the name of your City or Locality?
  [Unknown]:  Nakuru
What is the name of your State or Province?
  [Unknown]:  Nakuru
What is the two-letter country code for this unit?
  [Unknown]:  KE
Is CN= XXX YYYY, OU=Unknown, O=Unknown, L=Nakuru, ST=Nakuru, C=KE correct?
  [no]:  yes

Enter key password for
        (RETURN if same as keystore password):

5.
Sign the .apk file (called Githeko201202.apk in this example)
C:\Users\DELL\Documents\A-Courses\Android\IntelliJ IDEA\ca\Keytools\keys>jarsign er -verbose -keystore maneno.keystore -signedjar Githeko1201_signed.apk Githeko201202.apk maneno.keystore

6.
Provide the password you supplied in step 4 above.
Enter Passphrase for keystore:
   adding: META-INF/MANIFEST.MF
   adding: META-INF/MANENO_K.SF
   adding: META-INF/MANENO_K.RSA
  signing: res/layout/main.xml
  signing: AndroidManifest.xml
  signing: resources.arsc
  signing: classes.dex

7.
End of story


At this point you should have the signed APK file in your target folder. Note that the names you use for the .keystore file and the .apk files will vary.

To run this application in your Android device, copy the signed APK file onto your device (I used the USB data cable) and use the "My Files" Android application to install it as follows:

  1. Browse to the device folder that contains the APK file you just copied.
  2. Select the APK file.
  3. My Files will ask: Do you want to install this application?
  4. Answer "Install"
  5. My Files responds: Application installed.
  6. If it responds: "Application not installed" it means it is most likely unsigned.
  7. End of Story.
Next time we will look at other challenging technical tasks  w.r.t. Android and IntelliJ IDEA.  IntelliJ IDEA is available both as a free application (Community Edition) and a commercial application. Unlike Eclipse which is really a nightmare for most people trying their hand at Android app development for the first time,  IntelliJ IDEA is relatively friendly. I guarantee your app will run before you reach retirement age. I can not offer that guarantee for Eclipse or for Netbeans. Sorry Eclipse gurus - it's the truth. 

Note: Since this article was written, Google borrowed IntelliJ code and created Android Studio based on this code base. As of June 2017, Android Studio 3.0 has been released. Android Studio is now the official IDE for Android app development. 

Above everything, the Messiah is coming soon. Prepare well 

Comments

Popular posts from this blog

How to Install RIOT Plugin for GIMP

How to Install RIOT Plugin for GIMP:: Since this article was first written a stand-alone version of RIOT has been made available Download the plugin from  http://luci.criosweb.ro/riot/download/Select the download link titled "RIOT as plug-in for other applications"   Launch the Riot-plugin.exe file by double clicking.The installer installs all the files including Riot.exe, Riot.dll, and FreeImage.dll in the location where you installed GIMP  If GIMP is open, close it and re-launch it.To optimise an image, open it then save with menu File->Save for web with RIOT  You can set the target file size by selecting "Compress to size" button  on bottom right corner of optimised image pane and providing the size in kilobytes. Alternatively you can use a slider provided to allow you to change the quality while showing you a preview of the resulting image.


Enjoy.

Acer Aspire V5-471 Solution to "Operating System Not Found" After Changing From UEFI to BIOS

If you deliberately or accidentally change an Acer Aspire V5-471 (probably other Acers as well) boot setting from UEFI to BIOS, then you may be in for a shock when you try to start the laptop.

You may get the message Operating System Not Found on the top left corner of your screen or something similar.

Ideally you can press F2 during booting and get into booting settings and change them but in my case F2 does not work! Nothing works - neither a bootable DVD, bootable USB drive or whatever else you throw at it to try to get the machine to wake from coma.

You could spend a year searching various forums. You will learn very little. Some will call you dumb for messing up your BIOS settings.

The answer came from a very smart guy from Nakuru, Kenya called Weru (it means Savannah as in Savannah Institute for Business and Informatics). Open the machine's casing. Pull out the motherboard. Remove the BIOS button battery.


In the laptop motherboard above, the battery in the round whitish obj…

How to Stream Live With Your Smartphone

Using Larix Broadcaster , you can stream live video and audio from a smartphone running Android, IOS or Windows. The steps are:
Download and install Larix from the link above.Configure LarixTest with the streaming server provided by whomever is hosting your live streamWhen requested, start sending your stream.
Before giving details explanations of how to configure Larix, its important to note one of two things about the stream:
Many people may be watching worldwide and its important to test and then, during the live stream, ensure only acceptable video and audio are sent to the server. The Larix website illustrates the connection between your phone, server and the viewer devices. Clear video requires planning your shot - from which direction? is the lighting good? will bright lights interfere? Is there traffic noise or other interference.Maintain your smartphone in  landscape orientationIf more than one person are to stream to the same server, be on standby and start your stream promptly…