Android开机自启动service,并不启动activity

Android开机自启动service,并不启动activity


目标:写一个CrackDemo.apk,做到开机自启动service,由service在后台默默的进行一系列动作,同时包含一个界面Activity,在开机的时候,这个Activity并不启动,当点击这个Activity的时候,才显示界面
这里面一共有三个类,MainActivity用于显示界面,BootBroadcastReceiver启动ServiceCrack,代码分别如下:
(1)MainActivity就是显示一个界面,这里不给出
(2)BootBroadcastReceiver
public class BootBroadcastReceiver extends BroadcastReceiver{
 
    @override
      public voidonReceive(Context context,Intent intent){
      Intentservice = new Intent(context,ServiceCrack.class);
      context.startService(service);
      Log.d("TAG1","开机自启动服务");
    }
}
(3)ServiceCrack
public class ServiceCrack extends Service{
      @override
      publicIBinder onBind(Intent arg0){  //这是Service必须要实现的方法,目前这里面什么都没有做
//只是在onCreate()方法中打印了一个log便于测试
      returnnull;
  }
      @override
        public void onCreate(){
              super.onCreate();
              Log.d("TAG2","test service");
  }
}
(4)最重要的清单文件
在网上看了好几家版本,貌似没有能使用的,要不就是不全,要不就是错误的,针对上面的程序,对应的清单文件如下:
<?xml version="1.0"encoding="utf-8"?>
<manifestxmlns:android="http://schemas.android.com/apk/res/android"
      package="com.watchdata.crackdemo"
      android:versionCode="1"
      android:versionName="1.0" >

      <uses-sdk
              android:minSdkVersion="8"
              android:targetSdkVersion="17" />
<!--加权限-->  
 <uses-permission
       android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>


<!--application中进行配置-->

      <application
              android:icon="@drawable/ic_launcher"
              android:label="@string/app_name">
           
              <service
           android:name =".ServiceCrack">                     
       </service>

             
             <receiverandroid:name=".BootBroadcastReceiver">
           <intent-filter>
         
   <actionandroid:name="android.intent.action.BOOT_COMPLETED"/>                  
               </intent-filter>
       </receiver> 

             
                <activity
                              android:name = "com.watchdata.crackdemo.MainActivity"
                              android:icon="@drawable/ic_launcher"
                              android:label = "@string/app_name">
                            <intent-filter>
                                  <action android:name ="android.intent.action. MAIN"/>
                                  <category android:name="android.intent.category. LAUNCHER"/>                                     
                            </intent-filter>
                    </activity>
      </application>
</manifest>
现在可以跑起来了,首先安装这个CrackDemo.apk,在开机的时候,自动启动ServiceCrack,将会看到打印的两行log信息,可以看到进程PID为782,根据这个PID可以快速查看log信息
"TAG1","开机自启动服务"
"TAG2","test service"
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值