Home  >  Article  >  Web Front-end  >  uniapp settings app startup

uniapp settings app startup

王林
王林Original
2023-05-22 12:46:373269browse

With the popularity of mobile Internet, more and more people are paying attention to the experience and convenience of mobile applications. Against this background, the startup function is gradually being valued by more and more app developers. If your application also wants to be able to start automatically after the user boots up, then you need to know how to set up uniapp.

Uniapp is a multi-platform application development framework that can compile a set of codes into applications for multiple different platforms, such as WeChat mini-programs, Alipay mini-programs, Android and iOS applications, etc. If you choose to use uniapp to develop an application, setting up the application to start at startup is very simple.

On the Android platform, in order to set the application to start at startup, you need to do the following:

  1. Add permissions

Add in the AndroidManifest.xml file The following permissions:

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

This permission is used to receive the broadcast of boot completion.

  1. Define Broadcast Receiver

Define a broadcast receiver inherited from BroadcastReceiver in the code to monitor the broadcast after startup. The code is as follows:

export default {
  created() {
    // 监听开机完成广播
    const that = this;
    that.receiver = plus.android.implements('io.dcloud.android.content.BroadcastReceiver', {
      onReceive: function (context, intent) {       
        that.startApp();
      }
    });
    const IntentFilter = plus.android.importClass('android.content.IntentFilter');
    const filter = new IntentFilter();
    filter.addAction('android.intent.action.BOOT_COMPLETED');
    plus.android.runtime.registerReceiver(that.receiver, filter);
  },
  destroyed() {
    // 取消注册广播
    const that = this;
    if (that.receiver) {
      plus.android.runtime.unregisterReceiver(that.receiver);
      that.receiver = null;
    }
  },
  methods: {
    // 启动应用
    startApp() {
      plus.runtime.launchApplication({
        pname: '你的应用包名',
        redirect: false
      });
    }
  }
}

The startApp method here is used to start the application. After the broadcast receiver receives the boot completion broadcast, it will automatically call this method to start your application.

  1. Register the broadcast receiver

Register the broadcast receiver in the entry file main.js of uniapp. The code is as follows:

import receiver from '@/common/receiver.js';

// 注册广播接收器
Vue.mixin(receiver)

The common/receiver.js here represents the file path where the broadcast receiver code we defined in the previous step is located.

On the iOS platform, the method of setting up the application to start is relatively simple. You only need to make the following settings in Xcode:

  1. Add permissions

Add the following permissions in the Info.plist file:

<key>UIBackgroundModes</key>
<array>
    <string>fetch</string>
    <string>remote-notification</string>
    <string>voip</string>
    <string>newsstand-content</string>
    <string>external-accessory</string>
    <string>bluetooth-central</string>
    <string>bluetooth-peripheral</string>
</array>

This permission is used to ensure that the application can keep running in the background.

  1. Set startup mode

Add the following startup parameters in the Info.plist file:

<key>UIApplicationExitsOnSuspend</key>
<true/>

This parameter indicates when the application When entering the background, exit the app immediately instead of entering the background.

uniapp is a highly efficient multi-platform application development framework that supports developers to quickly and efficiently develop excellent cross-platform applications. Adding an application startup function can greatly improve the convenience and user experience of the application. I hope this article can be helpful to uniapp developers.

The above is the detailed content of uniapp settings app startup. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn