Friday, November 25, 2011

Create android application with no application Icon

AIM: To create an app with no icon and run in background without any activity required.

Solution:

When you want to track the usage of the mobile or gather some data without user knowledge,this might help you.

Step1: Create an application with No icon.
 Normally,an activity is declared as follows in manifest.
   <activity
            android:label="@string/app_name"
            android:name="org.security.tracker.Tracker-activity" >
            <intent-filter >
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
Remove the Category TAG ,you wont get app icon anymore.
Now,you don't need activity anymore. so remove this segment.
BUt you might think,how the app will run without any trigger or what is the starting point of the application.
This is the solution.

<!-- Start the Service if applicable on boot -->
        <receiver android:name="org.security.tracker.ServiceStarter" >
            <intent-filter >
                <action android:name="android.intent.action.BOOT_COMPLETED" />
            </intent-filter>
        </receiver>

THis triggers your code that written in Receiver there by you can run service to implement your thoughts.


  <service android:name="org.security.tracker.serviceCode" />

You need to add this permission,

    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />

Your code runs when the phone reboots only.

Step 2. Write your code

On Reboot,the recevier will fire ,there you can start your service.

class ServiceStarter extends BroadcastReceiver {

    @Override
    public void onReceive(Context _context, Intent _intent) {
       
        Intent i = new Intent("com.prac.test.MyPersistingService");
        i.setClass(_context, ServiceCode.class);
        _context.startService(i);
    }

}

Thats it.

THis enables the app runs in background and it wont have any app icon.the service always does its function..

8 comments:

  1. This is one of the best post.Your blog has very good talent.Thanks for providing the Information Android.This is one of the popular mobile application.
    Android app developers

    ReplyDelete
  2. This does not seem to work on at least Android 4.0.3. The Broadcast receiver does not seem to get triggered unless have the action and category in the intent filter of the activity.

    ReplyDelete
  3. Have u built this type of app.....???
    nd what if system somehoe kills our service...???

    ReplyDelete
  4. Thank you .... Your code very helpfull to me

    ReplyDelete
  5. This solution does not work on Android version 3.0 and above. You can find more info there - https://devmaze.wordpress.com/2011/12/05/activating-applications/

    ReplyDelete
  6. Yοuг curгеnt report ρroviԁes vегifieԁ nесessary to us.
    It’ѕ very еԁuсational аnd you're simply clearly very experienced in this region. You have exposed my eye to be able to varying views on this particular subject matter along with interesting and sound content.
    Also visit my web page - mondoy.net

    ReplyDelete
  7. I may gеt arounԁ tο dοіng something sіmilar myself at some pοint, shоuld I find thе
    finance.

    mу ωеbѕite ... bad credit personal loans

    ReplyDelete
  8. ComponentName componentToDisable2 =
    new ComponentName("lol.lol", "lol.lol.MainActivity");
    getPackageManager().setComponentEnabledSetting(
    componentToDisable2,
    PackageManager.COMPONENT_ENABLED_STATE_DISABLED,
    PackageManager.DONT_KILL_APP);

    ReplyDelete

Android Developers Blog

Ram's shared items