uni-app新创建项目,添加onShareAppMessage和onShareTimeline后,分享至朋友圈功能在iOS上正常,但安卓点击分享后闪退

uni-app新创建项目,添加onShareAppMessage和onShareTimeline后,分享至朋友圈功能在iOS上正常,但安卓点击分享后闪退

示例代码:

onShareAppMessage() {  
  return {  
    title: '云富链bababa',  
    path: `/pages/index/index`  
  }  
},  
// 分享到朋友圈  
onShareTimeline() {  
  return {  
    title: '云富链lallaa',  
    query: {  
      id: 123  
    },  
    imageUrl: 'https://qiniutest.erafuture.com/10028/10028-376175329590378496/7f2e814b8edffd975727aaf6cee817ba?imageMogr2/thumbnail/800x& e=1652260868&token=vNUcwNixthGsa-yJxtmy2rWaEuRZH6OkbDAZW5C2:1Z_U9YOx9Bc8DWrJfbaK4J_GZfs='  
  }  
}

操作步骤:

新建任意uniapp项目,在pages/index/index里面加入分享代码,用安卓手机到朋友圈查看点击分享的内容

预期结果:

正常显示分享页面

实际结果:

打开瞬间闪退

bug描述:

用hbuilderx新建的项目,分享到朋友圈则会出现安卓手机打不开,但是ios能打开的情况,用原生小程序新建的项目去分享则不会


更多关于uni-app新创建项目,添加onShareAppMessage和onShareTimeline后,分享至朋友圈功能在iOS上正常,但安卓点击分享后闪退的实战教程也可以访问 https://www.itying.com/category-93-b0.html

4 回复

提供一个完整的demo 和复现视频。你描述的不是太容易理解

更多关于uni-app新创建项目,添加onShareAppMessage和onShareTimeline后,分享至朋友圈功能在iOS上正常,但安卓点击分享后闪退的实战教程也可以访问 https://www.itying.com/category-93-b0.html


你好,我录了一个复现视频。至于代码,只是新建了个uniapp项目,加上微信小程序分享的代码而已,其他没什么改变。

复现视频

uni-app 中,如果你在项目中添加了 onShareAppMessageonShareTimeline 方法,并且在 iOS 上分享功能正常,但在 Android 上点击分享后闪退,可能是由于以下几个原因导致的:

1. Android 分享配置问题

  • 检查 manifest.json 配置:确保在 manifest.json 文件中正确配置了微信小程序的分享功能。在 mp-weixin 节点下,确保 appidappsecret 配置正确。
"mp-weixin": {
    "appid": "your-appid",
    "appsecret": "your-appsecret",
    "onShareAppMessage": true,
    "onShareTimeline": true
}

2. 分享内容格式问题

  • 检查分享内容:确保 onShareAppMessageonShareTimeline 方法返回的对象格式正确。分享内容中的字段如 titlepathimageUrl 等必须符合微信小程序的要求。
onShareAppMessage() {
    return {
        title: '分享标题',
        path: '/pages/index/index',
        imageUrl: 'https://example.com/image.png'
    };
},
onShareTimeline() {
    return {
        title: '分享到朋友圈',
        query: 'from=timeline',
        imageUrl: 'https://example.com/image.png'
    };
}

3. Android 权限问题

  • 检查权限:确保在 AndroidManifest.xml 文件中正确配置了必要的权限。例如,网络权限、存储权限等。
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

4. Android 版本兼容性问题

  • 检查 Android 版本:某些 Android 版本可能存在兼容性问题,确保你的应用在目标 Android 版本上进行了充分测试。

5. 日志调试

  • 查看日志:通过 adb logcat 或 Android Studio 的 Logcat 查看应用崩溃时的日志信息,找到具体的错误原因。

6. uni-app 版本问题

  • 检查 uni-app 版本:确保你使用的 uni-app 版本是最新的,或者至少是一个稳定的版本。有时旧版本可能存在一些已知的 bug。

7. 微信 SDK 版本问题

  • 检查微信 SDK 版本:确保你使用的微信 SDK 是最新的,或者至少是一个稳定的版本。

8. 代码逻辑问题

  • 检查代码逻辑:确保在 onShareAppMessageonShareTimeline 方法中没有执行可能导致崩溃的逻辑,例如空指针异常、数组越界等。

9. 重新编译和打包

  • 清除缓存并重新编译:有时缓存可能会导致一些奇怪的问题,尝试清除项目缓存并重新编译。
npm run clean
npm run build
回到顶部