簡體   English   中英

如何在react-native中播放音頻文件? 主要在android中

[英]How to play audio file in react-native? Primarily in android

我正在努力從我的react-native應用程序播放音頻文件。 我正試圖使用​​這個包:

反應母語聲

但是無法讓它正常工作,我得到了這個錯誤:無法讀取未定義的屬性IsAndroid,它試圖在react-native-sound包的sound.js第4行中執行:

var RNSound = require('react-native').NativeModules.RNSound; var IsAndroid = RNSound.IsAndroid;

可能這意味着RNSound對象未正確注冊。

無論如何,似乎包裹不再被維護33個問題和8個拉取請求,最后一次提交是4個月前。

那么,你們如何為你的項目添加音頻? 我正在使用React Native 0.37順便說一句。

好的,基於Nirav Ranpara的評論和他提供的鏈接:
https://github.com/zmxv/react-native-sound/issues/36

這些是使用React Native 0.37使其在Android中運行的步驟

1.編輯android / settings.gradle以聲明項目目錄:

include ':RNSound', ':app'
project(':RNSound').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-sound/android')

2.編輯android / app / build.gradle以聲明項目依賴項:

   dependencies {
     ...
     compile project(':RNSound')
   }

3.編輯android / app / src / main / java /.../ MainApplication.java以注冊本機模塊:

注意: MainApplication.java不是MainActivity.java

...
import com.zmxv.RNSound.RNSoundPackage;
...

...
@Override
protected List<ReactPackage> getPackages() {
  return Arrays.<ReactPackage>asList(
      new MainReactPackage(), // don't forget your comma
      new RNSoundPackage() // insert this line
  );
}
...

4.在您的應用程序中導入如下:

import { default as Sound } from 'react-native-sound';

注意不要這樣做

// wrong
var Sound = require('react-native-sound');

// also wrong
import {Sound} from 'react-native-sound';

注意:步驟1和2與文檔相同,而3和4不同。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM