uni-app APP打包时,IOS下调用打开小程序接口导致APP黑屏崩溃

uni-app APP打包时,IOS下调用打开小程序接口导致APP黑屏崩溃

开发环境 版本号 项目创建方式
Mac macOS Catalina 10.15.7 HBuilderX
产品分类:uniapp/App

PC开发环境操作系统:Mac

PC开发环境操作系统版本号:macOS Catalina 10.15.7

HBuilderX类型:Alpha

HBuilderX版本号:3.2.1

手机系统:iOS

手机系统版本号:IOS 14

手机厂商:苹果

手机机型:xs max

页面类型:vue

打包方式:云端

### 示例代码:

```javascript
uni.showModal({
title: '提示',
content: '将为您跳转至“' + wechat_new_url.name + '”小程序',
success(res) {
if(res.confirm){
plus.share.getServices(function(s){
for(var i=0; i<s.length; i++){
var t=s[i];
if(t.id =='weixin'){
t.launchMiniProgram({
id: wechat_new_url.id,
path : wechat_new_url.page,
type : 0
})
}
}
}, function(e){
console.log(e);
});
}
}
})

操作步骤:

plus.share.getServices(function(s){
for(var i=0; i<s.length; i++){
var t=s[i];
if(t.id =='weixin'){
t.launchMiniProgram({
id: wechat_new_url.id,
path : wechat_new_url.page,
type : 0
})
}
}
}, function(e){
console.log(e);
});

预期结果:

跳转至微信小程序

实际结果:

APP黑屏崩溃



bug描述:

IOS下调用打开小程序接口,APP会崩溃


更多关于uni-app APP打包时,IOS下调用打开小程序接口导致APP黑屏崩溃的实战教程也可以访问 https://www.itying.com/category-93-b0.html

1 回复

更多关于uni-app APP打包时,IOS下调用打开小程序接口导致APP黑屏崩溃的实战教程也可以访问 https://www.itying.com/category-93-b0.html


这个问题通常是由于iOS平台对plus.share接口的调用时机或权限配置不当导致的。以下是几个关键排查点:

  1. 权限配置检查
    manifest.jsonApp模块配置 中,确保已勾选 Share(分享) 模块,并在 iOS设置 中正确配置微信分享所需的 URL Schemes(格式为 weixinweixinULAPI)。

  2. 调用时机问题
    iOS平台要求部分原生接口必须在 plusready 事件后调用。请将代码包裹在 plusready 回调中:

    document.addEventListener('plusready', function() {
        // 调用 plus.share 相关代码
    });
    
  3. 异步处理优化
    plus.share.getServices 本身为异步操作,建议增加异常捕获和状态判断:

    if (window.plus && plus.share) {
        plus.share.getServices(...);
    } else {
        console.error('Share模块未就绪');
    }
回到顶部