如何将导出的WhatsApp文档共享到React-Native App

时间:2019-12-12 16:00:08

标签: android react-native react-native-android

我是React native的新手,我想导出我的whatsapp聊天并将其共享到我的react native应用。

有两个软件包可以提供帮助:

https://www.npmjs.com/package/react-native-file-share-intent
https://github.com/meedan/react-native-share-menu

我尝试了第二个软件包,因为如果我们使用react-navigation,则第一个软件包将无法正常工作,因此我安装了第二个软件包,它工作得很好,但是在我遇到两个问题之后:

  1. 如果我使用此软件包,则不会创建主屏幕图标,我不知道为什么未在主屏幕中创建该图标,而是将其放置在共享缩进中
  2. 当我尝试从文件管理器共享文本文档时,react本机应用程序图标被放置在共享缩进中,并且运行良好。但是我在whats应用程序中尝试过的同一件事意味着它不起作用。我想当我从WhatsApp导出时,最初将其创建为临时文件。这就是为什么我的应用程序不显示在该共享缩进中的原因。

我在GitHub仓库中推送了我的代码,该仓库的链接是: https://github.com/BalaRajendran/sharemenu-reactnative

App.js-https://github.com/BalaRajendran/sharemenu-reactnative/blob/master/App.js

 export default class App extends Component {
      constructor(props) {
        super(props);
        this.state = {
          fileUrl: null,
        };
      }

      componentDidMount() {
        if (RNFileShareIntent) {
          RNFileShareIntent.getFilepath((url) => {
            this.setState({ fileUrl: url });
          })
        }
      }

AndroidManifest.xml

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
  package="com.sharemenu">
    <uses-permission android:name="android.permission.INTERNET" />
    <application
      android:name=".MainApplication"
      android:label="@string/app_name"
      android:icon="@mipmap/ic_launcher"
      android:roundIcon="@mipmap/ic_launcher_round"
      android:allowBackup="false"
      android:theme="@style/AppTheme">
      <activity
        android:name=".MainActivity"
        android:label="@string/app_name"
      android:configChanges="keyboard|keyboardHidden|orientation|screenSize"
        android:windowSoftInputMode="adjustResize"  
        >
        <intent-filter>
            ///changed code according to react-native-share-menu
            <action android:name="android.intent.action.PICK"/>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
            <action android:name="android.intent.action.SEND" />
            <category android:name="android.intent.category.DEFAULT" />
            <data android:mimeType="text/*" />
            <data android:mimeType="image/*" /> 
            <data android:mimeType="file/*" /> 
            <data android:mimeType="application/*" />
             //
        </intent-filter>
      </activity>
      <activity android:name="com.facebook.react.devsupport.DevSettingsActivity" />
    </application>

</manifest>

所以你能帮我解决我的问题吗,

0 个答案:

没有答案