viernes, 4 de junio de 2010

Prueba

Prueba


Spotify mobile demo for Google Android

Posted: 04 Jun 2010 09:23 PM PDT


Spotify Android demo presented at Google IO 2009. Mobile Spotify is available for paying subscribers. More info at www.spotify.com/mobile

What is an Android phone?

Posted: 04 Jun 2010 06:14 PM PDT


What is Android, and what is an Android phone? Check out Wirefly’s brief Android overview, operating system of the Motorola CLIQ with MOTOBLUR as featured in the superbowl ad.

Android 207

Posted: 04 Jun 2010 05:07 PM PDT


An android is trapped in a maze. Available on DVD at Amazon: www.amazon.com

Android – Apps without borders

Posted: 04 Jun 2010 04:20 PM PDT


Watch Android engineers demonstrate that applications on Android exist without borders. Apps on Android can access core mobile device functionality through standard APIs. Through intents, apps can announce their capabilities for other apps to use.

Mobistealth Android Spy Software — How Does MobiStealth Android Spy Work?

Posted: 04 Jun 2010 03:36 PM PDT

MobiStealth Android spy phone software is an cell monitoring application which is used to spy on Android OS based mobile phones. MobiStealth Android spyware can be installed on any Android mobile that has an data connection. Once installed, MobiStealth starts to monitor certain cell activities.

The way MobiStealth works, is that a person must download MobiStealth’s spy software right into the Android mobile. This is accomplished through the Android’s net browser. After MobiStealth’s spy software is downloaded and installed, the software becomes undetectable and right away starts to silently record a range of info (call logs, SMS messages, GPS locations), browser & web bookmark history, and then anonymously uploads all the information to an internet web account.

The person that installed MobiStealth can now log into their account, and view all the events recorded on the Android mobile.

Here is a list of mobile events that are recorded by this application.

* Secretly Record Calls – Available only on GSM networks, this MobiStealth Android spy app feature enables you to secretly record all calls made from/to specific numbers on the Android phone. The {recorded calls are then uploaded to your online|each MobiStealth account.

* On Demand Remote Monitoring – This cool MobiStealth Android spy app feature will enable you to remotely record all conversations and sounds within a certain proximity of the Android cell phone. To use this feature, you simply send a secret text message to the target’s cell phone that you have installed MobiStealth, which will then trigger the recording to start. Once complete, the recording will be uploaded to your online account.

* Secretly View Pictures & Videos – By far, my most favorite feature of MobiStealth. This Android spyware feature (only offered by MobiStealth), will enable you to secretly grab and view all the images and videos that are on your target’s Android phone.

* Stealth GPS Tracking – With GPS tracking, you can secretly track the GPS coordinates of an Android user’s device. Coordinates are recorded and uploaded in predefined intervals, giving you a clear picture where the person you are tracking is.

* Recover & Read deleted text messages – All text messages that are received or sent from the Android device are recorded. This means even if the text messages are deleted immediately after being read, the Android app will continue to be transmit a copy of each message, and give you the ability to read the entire contents of every SMS text message.

* View Call History Logs – This MobiStealth spy phone software feature will permit you to read all of the inbound and outgoing call history logs of the mobile. In addition to recording inbound and outbound call info, the name stored in the mobile’s contact list that is associated to the number in the call logs (and texts messages) will be displayed.

Why would someone decide to use a product like MobiStealth? There are a variety of reasons why somebody would want to use Android cell phone spy softare, they include any of the following :

* Monitor & Track Cheating Spouses: Potentially one of the largest reasons why somebody purchases this kind of software is to spy on their spouse or partner. Maybe they are worried that their partner is not where they exclaimed they are or they would like to see what messages are being sent late at night when suddently “the boss calls” or similar sort of situation. With Android spy apps, a troubled partner can instantly see whether their partner is indeed being faithful. PC spy software has been around for a long while, but now that communication is being shifted away from PCs, and towards mobile phones, there has not been a method to secretly and quietly spy on your spouse’s cell phone, until now.

* Monitor Teenager Cell Use: For parents who stress about their teen’s cell use, or want a way to track their children in case they suddently cannot be found, cell spy phone software is a perfect choice. Maybe they are worried about their teen is involved in a taboo activity or parents want a way to track their children to ensure their teen is where they are meant to be, with Android spy software, all this is possible.

* Employee Monitoring: Android spy software could also be used to observe cell phone use on company provided devices. In certain industries, more buyer communiction is occuring on cell phones via texts. Without knowing what is being said and / or not having the ability to have a record of the communication may be in violation of compliance rules and rules. Also, in the event of a potential legal action, not having past records of specific client communication may put the company in peril. With this kind of software installed on company provided mobile phones, bosses can keep records of such activity.

* Personal Back Up : With increased functionality of mobile phones, data storage is rapidly becoming a concern. During the past, there was not any easy way to backup your call logs or text messages. Using this kind of software can do all of these things without requiring you to recollect to perform a “back up” of your info. Android spy phone software will back up all your SMS messages & call logs, so you never need to worry about not having an important SMS text message or look for a n important number that was accidently removed.

To summarize, MobiStealth Android spy software is a monitoring application that’s used for a variety of reasons to spy on an Android cell phone user. Though a few of them might not be seen as “appropriate” in everybody’s eyes, it’s up to the individual that purchases the software to decide the best use of the spy software based the situation that best fits them.

I’m a tech geek and author of numerous spy phone blogs and publications. Been researching, testing, & writing about spy phone software for several years..

GOOGLES ANDROID: The Innovative Breakthrough with Google and Open Handset Alliance

Posted: 04 Jun 2010 01:29 PM PDT

Wikipedia notes that the Google Android is a mobile operating system that makes use of a modified version of the Linux kernel.  It was originally developed by Android Inc., a firm and later purchased by Google and the Open Handset Alliance.  The Google Android will allow developers to create managed code in Java language in order to manage the device via Google-developed Java libraries.

Initially, the Google Android was  developed by Andorid Inc.  Android Inc., was then purchased by the Open Handset Alliance and Google.  Google-developed Java libraries allows developers to write managed code in Java language.
In November of 2007 the Google Android was first released by the Open Handset Alliance.  The “Alliance” is basically made up of 47 hardware, software and telecom companies dedicated to the Android platform..  This alliance is committed to advancing the open standards for mobile devices..  Most of the Android code has been said to be debude under the Apache license.  As stated earlier, the Google Android is equally open source and free.  A very unique and strategic move on Google’s part.  

Mobile phones incorporating the Google platform can look forward to a comprehensive set of software which comes with an operating system, middleware and key mobile applications that can be tweaked to suit the end user.

The Googles Androids was constructed from the ground floor.  This process makes it possible for designers to produce those mobile functions that  take full advantage of everything a mobile device can offer.  Creating the Google Droid from the bottom up is said to be pure open source. Any  device incorporating this application can make use of any of the phone’s principal functionalities.  These functions incorporate yet aren’t restricted to making calls, sending text messages or utilizing a camera.  In short, the open source makes it possible for developers to design a richer and more cohesive experiences for end users.   

Now if that is not sufficient, the Google Android utilizes a custom virtual mechanism that  was designed to optimize both memory and hardware resources in a mobile environment.  As the Google Android is open source; it will possibly be generously extended to integrate new innovative technologies as they emerge. This Android platform will continue to get better as the developer community innovates fresh ways of utilizing mobile devices.

THE GOOGLE ANDROID:  All devices are alleged to be created alike in  terms of the Google Android.

The Google Android platform  creates no distinction involving the phone’s fundamental features and third-party applications.  In fact, they could all be designed to share evenly in the phone’s capabilities.  This characteristic permits users to make use of a broad spectrum of services and devices. Getting phones developed upon the Android platform, consumers possess the capability to tailor their phone to fulfill their special requirements. Altering the phone’s home screen as an illustration from Google to Opera or Yahoo.  The shape of the dialer can also be changed to any of the devices. End users can even target their phones to utilize their favorite photo viewing application to handle the viewing of all photographs.

A great number of cellular phone fans argue that the Google Androids is tearing down conventional application boundaries.  Breaking down these boundaries contributes to novel and modern phones.   A developer, for example, can blend information from the web on to an individual’s mobile phone with precise information.  This data can be shaped in terms of a user’s contacts, weather, stocks, calender and even their geographic location.  In the long run, the ability to tailor and end user’s skill make using this device more significant to each individual.  Visualize being able to create an application that will let you know when your child arrives in school, when they head for home and their eta.  Picture in addition if you would like to keep in touch regarding a client who is traveling to your city or workplace.  You’ll in fact watch their movement with your Google Android based device phone.

In terms of the development of applications for the Google Android, the platform is designed to be fully accessible.    For example, Google’s Android provides immediate access to a host of libraries and tools that can be exploited in terms of building rich applications. Only time will tell how many, how varied and how innovative these applications will be.

Ned Robins is a freelance writer.He usually writes during his free time. And writing makes him feel relax. He usually writes for any topic that you might think of but he prefer writing articles for electronics, gadgets and software reviews like Googles Android which is the recent one. He also loves to travel and inclined with extreme type of sports.

How to watch DVDs on popular Android phone: HTC Hero/Dream/Magic/Droid Eris?

Posted: 04 Jun 2010 12:42 PM PDT

It’s been a year since Google released Android OS, a completely open-source smartphone operating system widely perceived as the killer of Apple’s iPhone in the long run. Over the past year, Android handset, from HTC Dream (T-Mobile G1), the first Android phone, to Motorola Droid, the hottest smartphone in the United States at the moment, is gaining.

Whether you are already Android handset owners, or you are Android handset enthusiasts, willing be of the next Android phone holder, the following tip will be your Android phone assistant to help you get more fun to watch DVD movies on your Android handset, such as HTC Hero/Dream/Magic/Droid Eris.

Part 1: Can I watch DVD movies on Android phone?

A lot of Android fans have such doubt about whether it is possible to watch DVD movies on Android phone’s big screen. That’s absolutely possible. But first, we should be clear about the video format supported by Android phone.

As we know that Android phone only supports playing certain kinds of videos such as MP4 videos, therefore you need to convert DVD movies to Android MP4 videos. Usually, DVDs has some protections like CSS or region code protection, so you need an additional DVD ripping tool to convert DVDs to Android MP4 video. Here below I will introduce you an easy-to-use DVD to Android phone Converter to convert DVD to Android phone with only 3 steps.

Part 2: How to watch DVD movies on Android phone?

The tool we are going to use is Wondershare DVD Ripper Platinum which can  convert DVD to Android phone. Now let ’s check how to make it.

Step 1:


Click “File” in menu list or “Add” button, you can load DVDs from DVD Rom/Folder(data DVD)/IFO/ISO  files respectively.

Step 2:

You can select MP4 format from the categorized output formats list in “Profile” drop-down list and specify the output directory to save your converted files in “Output” drop-down list. This DVD to Android Phone Converter support a lot of Android phones, such as HTC Hero, HTC Magic, HTC Droid Eris, Motorola Droid/ CLIQ, and Samsung phone etc. So you can select the corresponding format according to your Android phone.

Step 3:


The last step will be conversion. Click “Start” button, and all the tasks will be done quickly.

OK, now you can transfer your favorite DVD movies to your Android phone through cable and you can watch DVD movies freely to keep you from getting bored on a long flight or enjoy more fun. Whether you aren’t sure about switching to an Android phone in the near future, it is believed that Android phone will witness big growth in the smart phone market, and you can find more fun with Android phone.

 

Android Spy App – How Android Spy Apps Can Catch A Cheating Spouse

Posted: 04 Jun 2010 11:04 AM PDT

Android spy app is a mobile monitoring, tracking, and spying software application which is utilized to spy on Android cell phones using the Android OS, such as the Motrola Droid, Nexus One phones. 

The way Android spy apps work, is that a individual should download the Android spy app directly into the Android device. This can be accomplished via the cell phone’s internet browser. 

Immediately after the Android spy app is downloaded and set up, the Android app becomes undetectable and straight away starts to secretly records a range of information (call logs, SMS messages, GPS locations), and then anonymously uploads all the info to an world-wide-web account. All of this happens in the background, while the person is using their phone. 

The individual that installed the software, can now log into their account, and view all the activity recorded on the Android cell phonephone. 

The following is a list of the most typical capabilities found on Android spy apps

Listen To Calls - Using an Android spy app, you can secretly listen to calls made from the Android phone you are monitoring.
Remote Monitoring – Some Android spy apps also enable you to secretly listen in on the surroundings of the Android phone.
Stealth GPS Tracking – With Stealth GPS tracking, it is possible to secretly monitor the GPS coordinates of the person you are spying on. Areas are captured and uploaded in fifteen minute intervals, giving you a obvious image exactly where the Android user is. Locations are then shown using Google Maps.
View Photos – This Android spy app feature enables you to secretly view photos stored on the Android device.
Secretly Read Text Messages – All SMS messages which are received or sent from the Android cell are secretly recorded. Full contents of each message are recorded along with the time and date sent.
View Call History Logs – This Android spy app feature will enable you to secretly read all incoming/outgoing call details of the cellular cellphone. In addition to the call information, the name stored in the phone’s contact list / address book that is assocated to the number in the call logs will be shown. This will give you some insight into the name they are assigning that number.

What are the reasons why someone would want to use Android spy phone apps? Here are a some of the most well known reasons.

* Catch A Suspected Cheating Spouse: The most common reason why somebody purchases Android spy apps, is to spy on their spouse or partner. With Android Spy phone software, a concerned spouse can easily find out the truth and determine if their partner is indeed being faithful. The great thing about Android spy apps is it enables a suspicious spouse to not only track their cheating spouse, but also listen to their calls, surroundings, and read their text messages.  If their spouse is indeed having an affair, an Android spy app will uncover the truth.  It’s not “if” they will get caught, it’s “when” it will happen.  There is no way a cheating spouse can escape the powerful spy features found on an Android spy app.

Other features include….

* Monitor Children Cell Use: For parents who are concerned about their teen’s cellular use, or need a way to monitor their children, an Android spy app is a perfect choice. Maybe they are worried their teen is involved in a prohibited activity or they want to make sure that their teen is where they are supposed to be, with Android spy phone software, all of this is possible. 

* Worker Monitoring: Android spy apps could also be used to watch cell use on company provided telephones. In certain industries, more buyer communiction is occuring on cell telephones through texts. Without knowing what is being said and / or not being able to have a record of the communication might be in violation of compliance rules and  laws. Also, in the event of a potential suit, not having records of particular customer communication may put the company in peril. With this type of software installed on company provided cell phones, bosses can keep records of such activity. 

Final Thoughts

In summary, Android spy phone software is really a cell phone monitoring & tracking application that’s used for a range of reasons to observe a person using an Android cellphone. Even though not everyone will agree with some of the reasons for wanting to spy on an Android cell phone, it’s up to the individual who purchases the software program to choose the best use. 

It really doesn’t matter what your reason is, Android spy phone software do work, and is the only way to secretly spy on and monitor on a Android cellphone.

If you want more information, check out www.androidspy.com

For more information on Android spy phone software, check out the #1 spy phone software resource & discussion site. Also be sure to check out the most trusted spy phone news & review site on the net.

Aldiko eBook Reader Android App Review – RK2808 Android Tablet

Posted: 04 Jun 2010 10:02 AM PDT


Today we’ll be looking at the Aldiko e-book reader app for Android on our generic 7-inch, Android 1.5, RK2808 MID. Let’s get reading. The Skinny Aldiko is an e-book reader app for Android, its default package coming preloaded with two books: Sun Tzu’s Art of War and HG Wells’ The Invisible Man, arguably two classics and both classics for entirely different reasons. But to refrain from delving into my thoughts on the two preloaded books, we’ll look at Aldiko’s ability to download books from databases such as Feedbooks where there are thousands upon thousands of public domain as well as free self-published e-books, so quality will wildly vary. Read the rest of the review here: mp4nation.net Discuss this on our forums www.mp4nation.net Get more media player news from our blog: www.mp4nation.net

Development and remote installation of Java service for the Android Devices

Posted: 04 Jun 2010 09:15 AM PDT

Written by:
Igor Darkov, Software Developer of Device Team, Apriorit Inc.

In this article I’ve described:

How to develop simple Java service for the Android Devices; How to communicate with a service from the other processes and a remote PC; How to install and start the service remotely from the PC. 1. Java Service Development for the Android Devices

Services are long running background processes provided by Android. They could be used for background tasks execution. Tasks can be different: background calculations, backup procedures, internet communications, etc. Services can be started on the system requests and they can communicate with other processes using the Android IPC channels technology. The Android system can control the service lifecycle depending on the client requests, memory and CPU usage. Note that the service has lower priority than any process which is visible for the user.

Let’s develop the simple example service. It will show scheduled and requested notifications to user. Service should be managed using the service request, communicated from the simple Android Activity and from the PC.

First we need to install and prepare environment:

Download and install latest Android SDK from the official web site (http://developer.android.com); Download and install Eclipse IDE (http://www.eclipse.org/downloads/); Also we’ll need to install Android Development Tools (ADT) plug-in for Eclipse.

After the environment is prepared we can create Eclipse Android project. It will include sources, resources, generated files and the Android manifest.

1.1 Service class development

First of all we need to implement service class. It should be inherited from the android.app.Service (http://developer.android.com/reference/android/app/Service.html) base class. Each service class must have the corresponding <service> declaration in its package’s manifest. Manifest declaration will be described later. Services, like the other application objects, run in the main thread of their hosting process. If you need to do some intensive work, you should do it in another thread.

In the service class we should implement abstract method onBind. Also we override some other methods:

onCreate(). It is called by the system when the service is created at the first time. Usually this method is used to initialize service resources. In our case the binder, task and timer objects are created. Also notification is send to the user and to the system log: public void onCreate() { super.onCreate(); Log.d(LOG_TAG, “Creating service”); showNotification(“Creating NotifyService”); binder = new NotifyServiceBinder(handler, notificator); task = new NotifyTask(handler, notificator); timer = new Timer(); } onStart(Intent intent, int startId). It is called by the system every time a client explicitly starts the service by calling startService(Intent), providing the arguments it requires and the unique integer token representing the start request. We can launch background threads, schedule tasks and perform other startup operations. public void onStart(Intent intent, int startId) { super.onStart(intent, startId); Log.d(LOG_TAG, “Starting service”); showNotification(“Starting NotifyService”); timer.scheduleAtFixedRate(task, Calendar.getInstance().getTime(), 30000); } onDestroy(). It is called by the system to notify a Service that it is no longer used and is being removed. Here we should perform all operations before service is stopped. In our case we will stop all scheduled timer tasks. public void onDestroy() { super.onDestroy(); Log.d(LOG_TAG, “Stopping service”); showNotification(“Stopping NotifyService”); timer.cancel(); } onBind(Intent intent). It will return the communication channel to the service. IBinder is the special base interface for a remotable object, the core part of a lightweight remote procedure call mechanism. This mechanism is designed for the high performance of in-process and cross-process calls. This interface describes the abstract protocol for interacting with a remotable object. The IBinder implementation will be described below. public IBinder onBind(Intent intent) { Log.d(LOG_TAG, “Binding service”); return binder; }

To send system log output we can use static methods of the android.util.Log class (http://developer.android.com/reference/android/util/Log.html). To browse system logs on PC you can use ADB utility command: adb logcat.

The notification feature is implemented in our service as the special runnable object. It could be used from the other threads and processes. The service class has method showNotification, which can display message to user using the Toast.makeText call. The runnable object also uses it:

public class NotificationRunnable implements Runnable { private String message = null; public void run() { if (null != message) { showNotification(message); } } public void setMessage(String message) { this.message = message; } }

Code will be executed in the service thread. To execute runnable method we can use the special object android.os.Handler. There are two main uses for the Handler: to schedule messages and runnables to be executed as some point in the future; and to place an action to be performed on a different thread than your own. Each Handler instance is associated with a single thread and that thread’s message queue. To show notification we should set message and call post() method of the Handler’s object.

1.2 IPC Service

Each application runs in its own process. Sometimes you need to pass objects between processes and call some service methods. These operations can be performed using IPC. On the Android platform, one process can not normally access the memory of another process. So they have to decompose their objects into primitives that can be understood by the operating system , and “marshall” the object across that boundary for developer.

The AIDL IPC mechanism is used in Android devices. It is interface-based, similar to COM or Corba, but is lighter . It uses a proxy class to pass values between the client and the implementation.

AIDL (Android Interface Definition Language) is an IDL language used to generate code that enables two processes on an Android-powered device to communicate using IPC. If you have the code in one process (for example, in Activity) that needs to call methods of the object in another process (for example, Service), you can use AIDL to generate code to marshall the parameters.

Service interface example showed below supports only one sendNotification call:

interface INotifyService { void sendNotification(String message); }

The IBinder interface for a remotable object is used by clients to perform IPC. Client can communicate with the service by calling Context’s bindService(). The IBinder implementation could be retrieved from the onBind method. The INotifyService interface implementation is based on the android.os.Binder class (http://developer.android.com/reference/android/os/Binder.html):

public class NotifyServiceBinder extends Binder implements INotifyService { private Handler handler = null; private NotificationRunnable notificator = null; public NotifyServiceBinder(Handler handler, NotificationRunnable notificator) { this.handler = handler; this.notificator = notificator; } public void sendNotification(String message) { if (null != notificator) { notificator.setMessage(message); handler.post(notificator); } } public IBinder asBinder() { return this; } }

As it was described above, the notifications could be send using the Handler object’s post() method call. The NotificaionRunnable object is passed as the method’s parameter.

On the client side we can request IBinder object and work with it as with the INotifyService interface.  To connect to the service the android.content.ServiceConnection interface implementation can be used. Two methods should be defined: onServiceConnected, onServiceDisconnected:

ServiceConnection conn = null; … conn = new ServiceConnection() { public void onServiceConnected(ComponentName name, IBinder service) { Log.d(“NotifyTest”, “onServiceConnected”); INotifyService s = (INotifyService) service; try { s.sendNotification(“Hello”); } catch (RemoteException ex) { Log.d(“NotifyTest”, “Cannot send notification”, ex); } } public void onServiceDisconnected(ComponentName name) { } };

The bindService method can be called from the client Activity context to connect to the service:

Context.bindService(new Intent(this, NotifyService.class), conn, Context.BIND_AUTO_CREATE);

The unbindService method can be called from the client Activity context to disconnect from the service:

Context.unbindService(conn); 1.3 Remote service control

Broadcasts are the way applications and system components can communicate. Also we can use broadcasts to control service from the PC. The messages are sent as Intents, and the system handles dispatching them, including starting receivers.

Intents can be broadcasted to BroadcastReceivers, allowing messaging between applications. By registering a BroadcastReceiver in application’s AndroidManifest.xml (using <receiver> tag) you can have your application’s receiver class started and called whenever someone sends you a broadcast. Activity Manager uses the IntentFilters, applications register to figure out which program should be used for a given broadcast.

Let’s develop the receiver that will start and stop notify service on request. The base class android.content.BroadcastReceiver should be used for these purposes (http://developer.android.com/reference/android/content/BroadcastReceiver.html):

public class ServiceBroadcastReceiver extends BroadcastReceiver { … private static String START_ACTION = “NotifyServiceStart”; private static String STOP_ACTION = “NotifyServiceStop”; … public void onReceive(Context context, Intent intent) { … String action = intent.getAction(); if (START_ACTION.equalsIgnoreCase(action)) { context.startService(new Intent(context, NotifyService.class)); } else if (STOP_ACTION.equalsIgnoreCase(action)) { context.stopService(new Intent(context, NotifyService.class)); } } }

To send broadcast from the client application we use the Context.sendBroadcast call. I will describe how to use receiver and send broadcasts from the PC in chapter 2.

1.4 Android Manifest

Every application must have an AndroidManifest.xml file in its root directory. The manifest contains essential information about the application to the Android system, the system must have this information before it can run any of the application’s code. The core components of an application (its activities, services, and broadcast receivers) are activated by intents. An intent is a bundle of information (an Intent object) describing a desired action â€" including the data to be acted upon, the category of component that should perform the action, and other pertinent instructions. Android locates an appropriate component to respond to the intent, starts the new instance of the component if one is needed, and passes it to the Intent object.

We should describe 2 components for our service:

NotifyService class is described in the <service> tag. It will not start on intent. So the intent filtering is not needed. ServiceBroadcastReceived class is described in the <receiver> tag. For the broadcast receiver the intent filter is used to select system events: <application android:icon=”@drawable/icon” android:label=”@string/app_name”> … <service android:enabled=”true” android:name=”.NotifyService” android:exported=”true”> </service> <receiver android:name=”ServiceBroadcastReceiver”> <intent-filter> <action android:name=”NotifyServiceStart”></action> <action android:name=”NotifyServiceStop”></action> </intent-filter> </receiver> … 2. Java service remote installation and start 2.1 Service installation

Services like the other applications for the Android platform can be installed from the special package with the .apk extension. Android package contains all required binary files and the manifest.

Before installing the service from the PC we should enable the USB Debugging option in the device Settings-Applications-Development menu and then connect device to PC via the USB.

On the PC side we will use the ADB utility which is available in the Android SDK tools directory. The ADB utility supports several optional command-line arguments that provide powerful features, such as copying files to and from the device. The shell command-line argument lets you connect to the phone itself and issue rudimentary shell commands.

We will use several commands:

Remote shell command execution: adb shell <command> <arguments> File send operation: adb push <local path> <remote path> Package installation operation: adb install <package>.apk

I’ll describe the package installation process in details. It consists of several steps which are performed by the ADB utility install command:

First of all the .apk package file should be copied to the device. The ADB utility connects to the device and has limited “shell” user privileges. So almost all file system directories are write-protected for it. The /data/local/tmp directory is used as the temporary storage for package files. To copy package to the device use the command: adb push NotifyService.apk /data/local/tmp Package installation. ADB utility uses special shell command to perform this operation. The “pm” (Package Manager?) utility is present on the Android devices. It supports several command line parameters which are described in the Appendix I. To install the package by yourself execute the remote shell command: adb shell pm install /data/local/tmp/NotifyService.apk Cleanup. After the package is installed, ADB removes the temporary file stored in /data/local/tmp folder using the “rm” utility: adb shell rm /data/local/tmp/NotifyService.apk. To uninstall package use the “pm” utility: adb shell pm uninstall <package> 2.2 Remote service control

To be able to start and stop the NotifyService from the PC we can use the “am” (Activity Manager?) utility which is present on the Android device. The command line parameters are described in the Appendix II. The “am” utility can send system broadcast intents. Our service has the broadcast receiver which will be launched by the system request.

To start NotifyService we can execute remote shell command:

adb shell am broadcast â€"a NotifyServiceStart

To stop the NotifyService we can execute remote shell command:

adb shell am broadcast â€"a NotifyServiceStop

Note, that the NotifyServiceStart and NotifyServiceStop intents were described in the manifest file inside the <receiver> … <intent-filter> tag. Other requests will not start the receiver.

Appendix I. PM Usage (from Android console) pm [list|path|install|uninstall] pm list packages [-f] pm list permission-groups pm list permissions [-g] [-f] [-d] [-u] [GROUP] pm path PACKAGE pm install [-l] [-r] PATH pm uninstall [-k] PACKAGE The list packages command prints all packages. Use the -f option to see their associated file. The list permission-groups command prints all known permission groups. The list permissions command prints all known permissions, optionally only those in GROUP. Use the -g option to organize by group. Use the -f option to print all information. Use the -s option for a short summary. Use the -d option to only list dangerous permissions. Use the -u option to list only the permissions users will see. The path command prints the path to the .apk of a package. The install command installs a package to the system. Use the -l option to install the package with FORWARD_LOCK. Use the -r option to reinstall an exisiting app, keeping its data. The uninstall command removes a package from the system. Use the -k option to keep the data and cache directories around after the package removal. Appendix II. AM Usage (from Android console) am [start|broadcast|instrument] am start -D INTENT am broadcast INTENT am instrument [-r] [-e <ARG_NAME> <ARG_VALUE>] [-p <PROF_FILE>] [-w] <COMPONENT> INTENT is described with: [-a <ACTION>] [-d <DATA_URI>] [-t <MIME_TYPE>] [-c <CATEGORY> [-c <CATEGORY>] …] [-e|--es <EXTRA_KEY> <EXTRA_STRING_VALUE> ...] [--ez <EXTRA_KEY> <EXTRA_BOOLEAN_VALUE> ...] [-e|--ei <EXTRA_KEY> <EXTRA_INT_VALUE> ...] [-n <COMPONENT>] [-f <FLAGS>] [<URI>] Resources used: Android Installation Guide.

http://developer.android.com/sdk/1.5_r2/installing.html

Android Developer reference.

http://developer.android.com/reference/classes.html

Jesse Burns. Developing Secure Mobile Applications for Android.

https://www.isecpartners.com/files/iSEC_Securing_Android_Apps.pdf

Designing a Remote Interface Using AIDL

http://developer.android.com/guide/developing/tools/aidl.html

Apriorit is an Ukrainian software development company.

Apriorit develops its own products as well as provide offshore development and QA services in the areas of advanced system programming, driver development, software for devices.

One of the key values of Apriorit’s specialists is knowledge generation and sharing of experience.

Learn more about Apriorit and its experience at Apriorit Official site