当前位置:首页 > uni-app

uniapp 安卓桌面

2026-03-05 11:59:51uni-app

uniapp 安卓桌面快捷方式创建

使用HBuilderX提供的原生插件ShortcutBadger或自定义原生插件实现桌面快捷方式创建。需在manifest.json中配置插件权限,并在页面调用相关API。

uniapp 安卓桌面

// 示例代码(需配合原生插件)
uni.requireNativePlugin('ShortcutBadger');
const shortcut = uni.requireNativePlugin('ShortcutBadger');
shortcut.createShortcut({
    id: 'home',
    label: '应用首页',
    icon: '/static/logo.png',
    intent: 'pages/index/index'
});

配置manifest.json

在项目配置文件中声明安卓权限并添加插件依赖:

uniapp 安卓桌面

{
    "app-plus": {
        "android": {
            "permissions": [
                "com.android.launcher.permission.INSTALL_SHORTCUT"
            ],
            "plugins": {
                "ShortcutBadger": {
                    "version": "1.0.0",
                    "provider": "uniapp官方插件"
                }
            }
        }
    }
}

动态创建桌面图标

通过原生安卓开发扩展能力,使用Intent方式创建快捷方式。需编写原生代码并封装为uni-app可调用的模块:

// 原生安卓代码示例
Intent shortcutIntent = new Intent();
shortcutIntent.setClassName("包名", "启动Activity");
shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

Intent addIntent = new Intent();
addIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);
addIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME, "应用名称");
addIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, Intent.ShortcutIconResource.fromContext(context, R.drawable.icon));
addIntent.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
context.sendBroadcast(addIntent);

注意事项

  • 需真机测试,部分安卓版本可能限制快捷方式创建
  • 华为等厂商系统可能需单独适配
  • 图标建议使用48x48px或72x72px的PNG格式
  • 从Android 8.0开始需动态申请权限

替代方案

考虑使用PWA技术生成桌面图标:

  1. 配置manifest.json的PWA设置
  2. 添加service-worker.js实现离线缓存
  3. 用户访问H5页面时可选择"添加到主屏幕"

标签: 桌面uniapp
分享给朋友:

相关文章

uniapp图文

uniapp图文

图文混排实现方式 在uniapp中实现图文混排通常采用<rich-text>组件或自定义样式布局。<rich-text>支持解析HTML字符串,适合动态内容渲染。 <te…

uniapp 头条

uniapp 头条

uniapp 适配今日头条(字节跳动小程序)的方法 环境配置 确保HBuilderX版本在2.7.0以上,manifest.json中勾选"字节跳动小程序"平台。在开发者工具中配置正确的AppID和项…

uniapp市场库

uniapp市场库

uniapp市场库概述 uniapp市场库通常指与uniapp开发框架相关的插件、模板、组件等资源的集合。这些资源可以帮助开发者快速构建跨平台应用,包括小程序、H5、App等。市场库中的内容由社区开发…

elementui uniapp

elementui uniapp

使用 Element UI 与 UniApp 结合的方法 Element UI 是一个基于 Vue.js 的桌面端组件库,而 UniApp 是一个跨平台开发框架。两者结合需要特殊处理,因为 Eleme…

uniapp下拉换图

uniapp下拉换图

uniapp下拉换图实现方法 监听页面滚动事件 在页面中监听onPageScroll事件,获取滚动位置。当滚动到特定位置时触发换图逻辑。 onPageScroll(e) { if(e.sc…

uniapp 滑动条

uniapp 滑动条

uniapp 滑动条实现方法 在uniapp中实现滑动条可以通过内置组件或第三方插件完成。以下是几种常见方法: 使用slider组件 uniapp内置了slider组件,可直接实现基础滑动条…