您的位置:首页 > 移动开发 > Android开发

android开机启动无界面后台程序 (安卓开机会发送一个系统广播)

2015-01-30 10:15 471 查看
今天写了一个安卓小程序,这个程序没有界面,也不会在桌面创建应用程序图标(安卓开机会发送一个系统广播)

当然,在“设置”中的应用程序管理是可以看到的,也可以把这个应用程序删除

简单的说,这是一个没有界面的后台运行的应用程序

而且,还有一功能:开机自启动,启动运行一个服务

程序结构非常简单,两个类,一个是service的扩展类,一个是BroadcastReceiver扩展类
import android.app.Service;  
import android.content.Intent;  
import android.os.IBinder;  
import android.util.Log;  
import android.widget.Toast;  
  
public class TestService extends Service{     
  
    public void onCreate(){     
        super.onCreate();   
        Log.d("AAAAAAAAAAAAAAAAAAA", "AAAAAAAAAAAAAAAAAAAAAAA");  
        Toast.makeText(getApplicationContext(), "默认Toast样式",  
              Toast.LENGTH_LONG).show();  
    }     
         
    public IBinder onBind(Intent intent){     
     Log.d("BBBBBBBBBBBBBBBBBBB", "BBBBBBBBBBBBBBBBBBBBBBB");   
     Toast.makeText(getApplicationContext(), "不默认Toast样式",  
             Toast.LENGTH_LONG).show();  
        return null;     
    }     
}   
BroadcastReceiver扩展类:

import android.content.BroadcastReceiver;  
import android.content.Context;  
import android.content.Intent;  
import android.util.Log;  
  
public class BootReceiver extends BroadcastReceiver {  
  
 @Override  
 public void onReceive(Context arg0, Intent arg1) {  
  // TODO Auto-generated method stub  
  
  Log.d("WWWWWWWWWWWWWWWWWWWWW", "WWWWWWWWWWWWWWWWWWWWWWWW");  
  Intent mBootIntent = new Intent(arg0, TestService.class);  
  arg0.startService(mBootIntent);  
  Log.d("CCCCCCCCCCCCCCCCCCCCC", "CCCCCCCCCCCCCCCCCCCCCCCC");  
 }  
}  
配置文件:

<?xml version="1.0" encoding="utf-8"?>

< manifest xmlns:android="http://schemas.android.com/apk/res/android"

package="com.tyq"

android:versionCode="1"

android:versionName="1.0" >

<application

android:icon="@drawable/ic_launcher"

android:label="@string/app_name" >

< service android:name=".TestService"></service> 

< receiver android:name=".BootReceiver">

< intent-filter>

< action android:name="android.intent.action.BOOT_COMPLETED" />

< /intent-filter>

< /receiver>

< /application>

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

< uses-sdk android:minSdkVersion="10" />

< /manifest>
 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: