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

找到 manifest.json

进入:源码视图

代码

javascript 复制代码
{
    "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"
                }
            }
        }
    }
}

关键代码

javascript 复制代码
 "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端发布配置

属性 类型 默认值 描述
minSdkVersion integer 21 应用兼容的最低Android版本(API等级);参考文档
targetSdkVersion integer 30 应用适配的目标Android版本(API等级),部分应用市场要求设置较高的targetSdkVersion才能提交审核;参考文档
abiFilters Array<'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 指定的值相等。该值用于通知系统,您已针对目标版本进行了测试,并且系统不应通过启用任何兼容性行为,以保持您的应用与目标版本的向前兼容性。
  • minSdkVersiontargetSdkVersion 设置的值是 API 级别(API Level),完整API级别信息请参考Android API级别说明

Android版本列表

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

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

IOS配置

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

示例

javascript 复制代码
{
    "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,确保在模拟器正常运行
相关推荐
一枚小小程序员哈1 小时前
基于Android的随身小管家APP的设计与实现/基于SSM框架的财务管理系统/android Studio/java/原生开发
android·ide·android studio
喂完待续2 小时前
【Tech Arch】Spark为何成为大数据引擎之王
大数据·hadoop·python·数据分析·spark·apache·mapreduce
stevenzqzq2 小时前
android data 文件夹作用
android
2501_915918412 小时前
iOS 应用上架全流程实践,从开发内测到正式发布的多工具组合方案
android·ios·小程序·https·uni-app·iphone·webview
auxor6 小时前
Android 开机动画音频播放优化方案
android
whysqwhw6 小时前
安卓实现屏幕共享
android
深盾科技7 小时前
Kotlin Data Classes 快速上手
android·开发语言·kotlin
一条上岸小咸鱼7 小时前
Kotlin 基本数据类型(五):Array
android·前端·kotlin
Koma_zhe7 小时前
【本地部署问答软件Apache Answer】Answer开源平台搭建:cpolar内网穿透服务助力全球用户社区构建
开源·apache