React native 导出whatsapp消息以响应本机应用程序

React native 导出whatsapp消息以响应本机应用程序,react-native,whatsapp,React Native,Whatsapp,我正在尝试使用react native从我的设备访问whatsapp消息。直接访问它们似乎是不可能的,所以我正在研究将这些消息导出并导入我的应用程序的可能性。whatsapp共享菜单当前提供的选项缺少任何直接下载选项 有没有办法将我的应用程序添加到whatsapp共享菜单?或者有没有一种简单的方法可以导入这些消息?您可以使用此库从Whatsapp导出聊天。当您从WhatsApp导出聊天文件时,您的应用程序将显示在共享对话框中。之后,您可以从应用程序中打开该文件,如下所示 ShareMenu.

我正在尝试使用react native从我的设备访问whatsapp消息。直接访问它们似乎是不可能的,所以我正在研究将这些消息导出并导入我的应用程序的可能性。whatsapp共享菜单当前提供的选项缺少任何直接下载选项

有没有办法将我的应用程序添加到whatsapp共享菜单?或者有没有一种简单的方法可以导入这些消息?

您可以使用此库从Whatsapp导出聊天。当您从WhatsApp导出聊天文件时,您的应用程序将显示在共享对话框中。之后,您可以从应用程序中打开该文件,如下所示

  ShareMenu.getSharedText((text :string) => {
  if (text && text.length) {
    if (text.startsWith('content://media/')) {
      //this will be a media
    } else {
      content = this.readFile(text) 
    }
  }
})
然后可以使用RNFS库读取该文件的内容

readFile = async (path) => {
    try {
      const contents = await RNFS.readFile(path, "utf8");
      return("" + contents);
    } catch (e) {
      alert("" + e);
    }
  };

在获取聊天内容后,您可以解析这些聊天。

我们在构建用于分析WhatsApp聊天的应用程序时遇到了相同的问题,因为android无法将导出的聊天保存在设备上

我们的解决方案是使用监听和共享事件。 当某人现在安装PWA时,他们可以直接与应用程序共享导出。(目前,这只支持带有Chrome的Android,因为苹果强烈反对PWAs)

我们的:

if (workbox) {
    workbox.addEventListener("message", (m) => {
        // eslint-disable-next-line no-prototype-builtins
        if (_this.$route.query.hasOwnProperty("receiving-file-share")) {
            let files = m.data.file;
            // currently only the first file, but ultimately we want to pass all files
            _this.$refs.filehandler.processFileList(files, true);
        }
    });
    workbox.messageSW("SHARE_READY");
}