cordova配置app开机自启动---测试通过于Android10.1.2

方法适用于Android PDA开发,通常Android PDA支持开放所用权限给使用者,因此PDA不会限制App开机自动运行。

  1. 修改config.xml,添加监听开机启动的权限

<platform name="android">
    <config-file target="AndroidManifest.xml" parent="/*">
        <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
    </config-file>
</platform>

2.修改platforms/android/app/src/main/AndroidManifest.xml,添加广播接收器

<application ...
    ...
    <receiver android:enabled="true" android:name="BootUpReceiver" android:permission="android.permission.RECEIVE_BOOT_COMPLETED">
        <intent-filter>
            <action android:name="android.intent.action.BOOT_COMPLETED" />
            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
    </receiver>
</application>

3.新建platforms/android/app/src/main/java/io/cordova/hellocordova/BootUpReceiver.java文件,处理开机响应事件

其中红色部分根据不同app的包名而不同,要求与包名一致。BootUpReceiver.java的内容如下,同理只需要修改包名,其余的理论上都不需要修改

package io.cordova.hellocordova;

import android.content.broadcastReceiver;
import android.content.Context;
import android.content.Intent;
import org.apache.cordova.*;

public class BootUpReceiver extends broadcastReceiver{
    @Override
    public void onReceive(Context context, Intent intent) {
        Intent i = new Intent(context, MainActivity.class);
        i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        context.startActivity(i);
    }
}

注意,务必修改包名(io.cordova.hellocordova)为你自己的包名,否则会提示编译不通过。

4.最后直接编译即可

cordova build android --release

 

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...