uni-app实现h5跳转app(ios和andiro)指定页面, h5实现功能的完整代码
时间: 2023-12-06 13:02:59 浏览: 396
以下是一个完整的示例代码,包括H5页面中的代码和APP中的代码:
H5页面中的代码:
```
<template>
<div>
<button @click="jumpToApp">跳转到APP</button>
</div>
</template>
<script>
export default {
methods: {
jumpToApp() {
var schemeUrl = "myapp://page?id=123"; // 这里的URL需要根据实际情况进行修改
window.location.href = schemeUrl;
}
}
}
</script>
```
APP中的代码:
```
// iOS
// 在Info.plist文件中添加以下代码
<key>LSApplicationQueriesSchemes</key>
<array>
<string>myapp</string> // 这里的myapp需要和H5中的schemeUrl保持一致
</array>
// 在AppDelegate.m中添加以下代码
- (BOOL)application:(UIApplication *)application
openURL:(NSURL *)url
options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options {
NSString *scheme = [url scheme];
if ([scheme isEqualToString:@"myapp"]) {
NSString *host = [url host];
NSString *path = [url path];
if ([host isEqualToString:@"page"] && [path isEqualToString:@"/"]) {
NSString *query = [url query];
// 根据query参数来获取ID并跳转到对应页面
...
return YES;
}
}
return NO;
}
// Android
// 在AndroidManifest.xml中添加以下代码
<activity
android:name=".MainActivity"
android:launchMode="singleTask"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data android:scheme="myapp"/> // 这里的myapp需要和H5中的schemeUrl保持一致
</intent-filter>
</activity>
// 在MainActivity中添加以下代码
@Override
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);
String scheme = intent.getScheme();
if ("myapp".equals(scheme)) {
String host = intent.getData().getHost();
String path = intent.getData().getPath();
if ("page".equals(host) && "/".equals(path)) {
String query = intent.getData().getQuery();
// 根据query参数来获取ID并跳转到对应页面
...
}
}
}
```
以上代码仅仅是一个示例,具体的实现需要根据实际情况进行调整。
阅读全文