uni-app 在ios端开发的app进行微信分享时,却打开了另一个uni-app开发的app
uni-app 在ios端开发的app进行微信分享时,却打开了另一个uni-app开发的app
问题只会出现在iOS手机上,安卓一切正常。
分享配置如下:
"share" : {
"weixin" : {
"appid" : "wx72968a71f0242abc",
"UniversalLinks" : "https://applink.younicai.com/uni-universallinks/__UNI__8055565/"
}
}
uniclound 前端网页托管上的 .well-known/apple-app-site-association
配置如下:
{
"applinks" : {
"apps" : [],
"details" : [
{
"appID" : "42BT8G26VS.uni.UNI8055565",
"paths" : [ "/uni-universallinks/__UNI__8055565/*", "*" ]
},
{
"appID" : "42BT8G26VS.uni.UNI16FA070",
"paths" : [ "/uni-universallinks/__UNI__16FA070/*", "*" ]
}
]
}
}
然后我是再这个uni.UNI8055565 app上使用分享到微信或者app跳转小程序的功能后会跳转到微信,紧接着又打开了这个uni.UNI16FA070 app。正常结果应该是返回uni.UNI8055565。
使用uni.UNI16FA070 app 分享到微信流程是正常的。
在Safari浏览器访问 Universal Link: https://applink.younicai.com/uni-universallinks/__UNI__8055565
出现的也还是uni.UNI16FA070。。。
很头疼,谁知道是什么问题吗? 以前好像是正常的
有人知道吗?
你们的apple-app-site-association文件的配置是怎样的
.well-known/apple-app-site-association 配置更新后,app 需要卸载重新安装才好读取到最新的
回复 DCloud_uniCloud_JSON: 那我的这个配置文件是正确的吗
回复 DCloud_uniCloud_JSON: 今天有台手机上又出现了这个问题。很奇怪
回复 DCloud_uniCloud_JSON: 你们是不是有更新这个逻辑?怎么其中一个应用打包后,另一个应用配置又被覆盖了。不会同时保留2份
目前解决方法是不用 uniapp的自动生成通用链接。最近一直有问题.
apple-app-site-association文件放在自己的服务器下面就行了
怎么解决啊
看我上面评论说的解决方法啊
回复 涛tao: 文件迁走,这个wgt不会生效吧,得让客户重安才会生效新的是吧
在 uni-app 开发的应用中,如果遇到在 iOS 端微信分享时错误地打开了另一个 uni-app 应用的情况,这通常是由于微信分享链接被系统识别为另一个应用的 URL Scheme。为了解决这个问题,你需要确保分享链接的唯一性和正确性,同时配置好应用的 URL Scheme 和 Universal Links(或 Android 的 App Links)。
以下是一些可能的解决方案和代码示例,帮助你更好地管理微信分享链接:
-
确保分享链接的唯一性: 确保你分享的链接是唯一的,并且不被其他应用所占用。例如,你可以在链接中包含应用的唯一标识符或者用户信息。
-
配置 URL Scheme: 在
manifest.json
中配置你的应用的 URL Scheme,确保它与其他应用不冲突。"mp-weixin": { "appid": "YOUR_WECHAT_APPID", "setting": { "urlCheck": false } }, "plus": { "distribute": { "apple": { "urlScheme": "yourappuniquescheme" } } }
-
使用 Universal Links 或 App Links: 对于 iOS,你可以配置 Universal Links;对于 Android,你可以配置 App Links。这有助于确保链接在正确的应用中打开。
-
编写微信分享代码: 在 uni-app 中,使用
uni.share
API 进行微信分享。确保分享的链接是正确的,并且没有被系统误识别为其他应用的链接。uni.share({ provider: 'weixin', scene: 1, // 发送给朋友 type: 'link', webpageUrl: 'https://yourapp.com/share?unique_id=12345', // 确保这是你的应用的链接 title: '分享标题', summary: '分享描述', thumbUrl: '/path/to/thumbnail.jpg' }).then(res => { console.log('分享成功', res); }).catch(err => { console.error('分享失败', err); });
-
调试和测试: 在开发过程中,使用微信开发者工具进行调试,确保分享链接能够正确打开你的应用,而不是其他应用。同时,在真机上进行测试,以验证分享功能在不同设备和网络环境下的表现。
-
检查微信开放平台配置: 确保你的微信开放平台账号和应用配置正确,包括应用的签名、包名等信息。这些信息必须与你在
manifest.json
中配置的信息一致。
通过上述步骤,你应该能够解决在 iOS 端微信分享时错误打开另一个 uni-app 应用的问题。如果问题仍然存在,请检查微信开放平台的官方文档和社区论坛,以获取更多帮助。