Qt for Android之开机自启动

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

转载请标明原创地址哟。

PS:Android4.0以上的版本应该要开一次后才能自启动 不过自启动要等Android系统大致初始化完毕即出现桌面后要等几十秒才自启动

原理:当Android启动时,会发出一个系统广播,内容为ACTION_BOOT_COMPLETED,它的字 符串常量表示为 android.intent.action.BOOT_COMPLETED。 只要在程序中“捕捉”到这个消息,再启动程序入口之即可。 我们要做的是做好接收这个消息的准备,而实现的手段就是实现一个BroadcastReceiver类

package org.qtproject.example;
import android.content.BroadcastReceiver; 
import android.content.Context; 
import android.content.Intent; 
public class BootBroadcastReceiver extends BroadcastReceiver { 
	static final String action_boot="android.intent.action.BOOT_COMPLETED"; 
	@Override 
	public void onReceive(Context context, Intent intent) { 
		if (intent.getAction().equals(action_boot)){ 
            Intent StartIntent=new Intent(context,org.qtproject.qt5.android.bindings.QtActivity.class); //接收到广播后,跳转到MainActivity
			StartIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
			context.startActivity(StartIntent); 
		}
	}
}

org.qtproject.qt5.android.bindings.QtActivity.class QtActivity是Qt on Android程序的入口所以就启动他,这个文件应该是保存在Qt里面的,当你编译Android项目时它就会拷贝到指定文件夹中在编译后产生的文件夹中可以找到 Qt for Android之开机自启动_第1张图片

Qt for Android之开机自启动_第2张图片 AndroidMainfest.xml设置

Qt for Android之开机自启动_第3张图片

Qt for Android之开机自启动_第4张图片 接下来修改xml文档 添加如下代码


        
        
        
        
    

在结束标签之后在结束标签之前

完整xml文档



    
        
            
                
                
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
        
              
               
                
                 
                
    
    
    
    
    
    
    
    


转载于:https://my.oschina.net/LiangJYue/blog/666784

你可能感兴趣的:(Qt for Android之开机自启动)