当前位置: 首页 > article >正文

uni-app x生成的安卓包,安装时,提示不兼容。解决方案

找到 manifest.json

进入:源码视图

代码

{
    "name" : "xxx康养",
    "appid" : "__xxx6",
    "description" : "xxx康养",
    "versionName" : "1.0.12",
    "versionCode" : 100012,
    "uni-app-x" : {},
    /* 快应用特有相关 */
    "quickapp" : {},
    /* 小程序特有相关 */
    "mp-weixin" : {
        "appid" : "",
        "setting" : {
            "urlCheck" : false
        },
        "usingComponents" : true
    },
    "mp-alipay" : {
        "usingComponents" : true
    },
    "mp-baidu" : {
        "usingComponents" : true
    },
    "mp-toutiao" : {
        "usingComponents" : true
    },
    "uniStatistics" : {
        "enable" : false
    },
    "vueVersion" : "3",
    "app" : {
        "distribute" : {
            "android" : {
                "packagename" : "xxxxxTVX",
                "abiFilters" : [ "armeabi-v7a", "arm64-v8a", "x86" ],
                "minSdkVersion" : "21",
                "targetSdkVersion" : "32"
            },
            "icons" : {
                "android" : {
                    "hdpi" : "static/qxky_APP_Icon/72x72.png",
                    "xhdpi" : "static/qxky_APP_Icon/96x96.png",
                    "xxhdpi" : "static/qxky_APP_Icon/144x144.png",
                    "xxxhdpi" : "static/qxky_APP_Icon/192x192.png"
                }
            }
        }
    }
}

关键代码

 "android" : {
                "packagename" : "xxxxxTVX",
                "abiFilters" : [ "armeabi-v7a", "arm64-v8a", "x86" ],
                "minSdkVersion" : "21",
                "targetSdkVersion" : "32"
            },

packagename:包名;最好是和你“发行”(打包)时的包名一致。

abiFilters:需要兼容CPU的类型

minSdkVersion:应用兼容的最低Android版本(API等级)

targetSdkVersion:应用适配的目标Android版本(API等级)

 

android配置

官方说明:manifest.json | uni-app官网

App-Android端发布配置

属性类型默认值描述
minSdkVersioninteger21应用兼容的最低Android版本(API等级);参考文档
targetSdkVersioninteger30应用适配的目标Android版本(API等级),部分应用市场要求设置较高的targetSdkVersion才能提交审核;参考文档
abiFiltersArray<'armeabi-v7a' | 'arm64-v8a' | 'x86' | 'x86_64'>["arm64-v8a"]参考文档

注意

  • abiFilters 用于指定应用需要支持的CPU类型,字符串数组类型,字符串可取值"armeabi-v7a"、"arm64-v8a"、"x86"、"x86_64",默认值为["arm64-v8a"]。
  • minSdkVersion 用于指定应用运行所需最低 API 级别的整数。如果系统的 API 级别低于该属性中指定的值,Android 系统将阻止用户安装应用。
  • targetSdkVersion 一个用于指定应用的目标 API 级别的整数。如果未设置,其默认值与为 minSdkVersion 指定的值相等。该值用于通知系统,您已针对目标版本进行了测试,并且系统不应通过启用任何兼容性行为,以保持您的应用与目标版本的向前兼容性。
  • minSdkVersion 和 targetSdkVersion 设置的值是 API 级别(API Level),完整API级别信息请参考Android API级别说明

Android版本列表

API等级与Android版本对应列表如下:

API等级Android版本号Android版本名称
19Android4.4Kitkat
20Android4.4WKitkat Watch
21Android5.0Lollipop
22Android5.1Lollipop
23Android6.0Marshmallow
24Android7.0Nougat
25Android7.1Nougat
26Android8.0Oreo
27Android8.1Oreo
28Android9.0Pie
29Android10.0Android Q
30Android11.0Android R
31Android12.0Android S

 

IOS配置

属性类型默认值描述
appidstring-iOS Bundle ID

示例

{
    "name" : "uni-app x",
    "appid" : "__UNI__XXXXXXX",
    "description" : "描述信息",
    "versionName" : "1.0.0",
    "versionCode" : "100",
    "uni-app-x":{
      "flex-direction": "column"
    },
    "vueVersion" : "3",
	"app": {
		"distribute": {
			"syncDebug": true,
			"android": {
				"packagename": "Android包名",
				"abiFilters": [
					"armeabi-v7a","arm64-v8a"
				],
				"minSdkVersion": "21",
				"targetSdkVersion": "32"
			},
			"ios": {
				"appid": "iOS Bundle ID"
			}
		}
	}
}

CPU类型

HBulderX已适配支持以下主流CPU类型:

  • armeabi-v7a 第7代及以上的ARM处理器(ARM32位),市面上大多数手机使用此CPU类型。
  • arm64-v8a 第8代、64位ARM处理器(ARM64位),最近两年新发的设备使用此CPU类型,可以兼容使用armeabi-v7a的so库。
  • x86 少部分平板使用x86,AS模拟器中选了intel x86时使用x86处理器,以及其它常用三方模拟器通常使用x86

注意:不勾选x86在模拟器上可能无法正常运行,以下是常见模拟器是否需要包含x86的情况

  • 雷电模拟器: 3.x必须包含x86,否则无法正常运行;4.x无需包含x86。
  • 夜神模拟器: 必须包含x86,否则无法正常运行
  • MuMu模拟器: 无需包含x86
  • 逍遥模拟器: 无需包含x86
  • BlueStacks(蓝叠模拟器): 无需包含x86
  • 腾讯模拟器(手游助手): 必须包含x86,否则无法正常运行
  • 其它模拟器: 未测试验证,建议包含x86,确保在模拟器正常运行

http://www.kler.cn/a/154563.html

相关文章:

  • GoogleCloud服务器的SSH连接配置
  • 跟我学C++中级篇——RAII
  • 【SpringBoot】公共字段自动填充
  • AI大模型(一):Prompt AI编程
  • C++ 的发展
  • 向潜在安全信息和事件管理 SIEM 提供商提出的六个问题
  • JTag 提取NXP固件脚本示例
  • 使用wininet下载一个网页
  • 进程间通信 管道
  • 用两个队列实现栈
  • QT 中 QProgressDialog 进度条窗口 备查
  • mazing是什么软件?为什么选择iMazing
  • 【Redis】Redis的内部设计与实现
  • vue中中的动画组件使用及如何在vue中使用animate.css
  • go学习之goroutine和channel
  • 微信小程序获取定位显示在百度地图上位置出现偏差
  • vcomp140.dll是什么意思?vcomp140.dll缺失怎么修复的五个方法
  • WT2003H MP3语音芯片方案:强大、灵活且易于集成的音频解决方案
  • 给定一组经纬度如何判断某点是否在这组经纬度的范围之内(电子围栏实现代码)
  • 关于Maxscript你了解多少?
  • ChatGpt回答人工智能发展利大于弊的辩证论述
  • 同步加载、异步加载、延迟加载、预加载的区别
  • Java数据结构之《希尔排序》题目
  • 代码随想录算法训练营第39天| 62.不同路径 63. 不同路径 II
  • 吉他初学者学习网站搭建系列(4)——如何查询和弦图
  • NacosSync 用户手册