uniapp开发APP通过H5页面打开

66 阅读2分钟

直接再uniapp的 manifest.json 中配置即可

应用场景 当需要在网页端打开手机app的需求时,比如

  • 从微信小程序打开网页,通过网页中转再打开APP时
  • 从网页直接需要打开APP时

关键代码

安卓端配置
"schemes": "app字母名称,app字母其他名称"

ios端配置
"urltypes": "app字母名称,app字母其他名称"

完整代码

{
	"name": "app的名称",
	"appid": "__UNI__xxxxxx",
	"description": "app的描述信息",
	"versionName": "1.4.8",
	"versionCode": 148,
	"transformPx": false,
	/* 5+App特有相关 */
	"app-plus": {
		"compatible": {
			"ignoreVersion": true //true表示忽略版本检查提示框,HBuilderX1.9.0及以上版本支持
		},
		"usingComponents": true,
		"webviewEnable": true,
		"nvueStyleCompiler": "uni-app",
		"compilerVersion": 3,
		"splashscreen": {
			"alwaysShowBeforeRender": true,
			"waiting": false,
			"autoclose": true,
			"delay": 0
		},
		/* 模块配置 */
		"modules": {
			"Camera": {},
			"Barcode": {},
			"Contacts": {},
			"VideoPlayer": {},
			"Payment": {},
			"Push": {},
			"Record": {},
			"Share": {}
		},
		/* 应用发布信息 */
		"distribute": {
			/* android打包配置 */
			"android": {
				"permissions": [
					"<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",
					"<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>",
					"<uses-permission android:name=\"android.permission.VIBRATE\"/>",
					"<uses-permission android:name=\"android.permission.READ_LOGS\"/>",
					"<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>",
					"<uses-feature android:name=\"android.hardware.camera.autofocus\"/>",
					"<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>",
					"<uses-permission android:name=\"android.permission.MODIFY_AUDIO_SETTINGS\"/>",
					"<uses-permission android:name=\"android.permission.CAMERA\"/>",
					"<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>",
					"<uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>",
					"<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>",
					"<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>",
					"<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>",
					"<uses-feature android:name=\"android.hardware.camera\"/>",
					"<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>",
					"<uses-permission android:name=\"android.permission.WRITE_EXTERNAL_STORAGE\" />",
					"<uses-permission android:name=\"android.permission.READ_EXTERNAL_STORAGE\" />"
				],
				"abiFilters": ["armeabi-v7a", "arm64-v8a", "x86"],
				"targetSdkVersion": 30,
				"minSdkVersion": 21,
				"schemes": "app字母名称,app字母其他名称"
			},
			/* ios打包配置 */
			"ios": {
				"dSYMs": false,
				"privacyDescription": {
					"NSPhotoLibraryUsageDescription": "我们需要访问您的照片库,以便您选择并上传头像、身份证、作品或证书,用于完善资料和展示。",
					"NSPhotoLibraryAddUsageDescription": "我们需要保存图片或视频到您的相册,以便您留存头像、作品或证书等文件。",
					"NSCameraUsageDescription": "我们需要使用您的相机,以便您拍摄头像、身份证、书画作品或证书照片,用于实名认证和展示。",
					"NSLocationAlwaysAndWhenInUseUsageDescription": "我们需要访问您的位置信息,以便为您推荐附近的活动、展览或提供精准定位服务。",
					"NSLocationWhenInUseUsageDescription": "我们需要访问您的位置信息,以便在您使用应用时提供附近活动推荐和定位服务。",
					"NSLocationAlwaysUsageDescription": "我们需要持续访问您的位置信息,以便在后台为您提供基于位置的提醒和服务。",
					"NSUserTrackingUsageDescription": "我们会请求您的许可,以便提供个性化推荐、推送通知及优化应用功能。"
				},
				"urltypes": "app字母名称,app字母其他名称"
			},
	
	
}