实现点击app不显示界面,开机自启动后直接启动服务(适用于只启动服务不想显示界面)

1.开机自启动后启动服务

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

       
        <receiver android:name=".BootBroadcastReceiver">
            <intent-filter>
         
    <action android: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>


2.点击app不显示界面

在主界面添加以下主题就可以了


<activity Android:name="com.learns.LocationManager" android:theme="@android:style/Theme.NoDisplay" ></activity>


  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值