Я пытаюсь добавить новую функцию в существующую собственную библиотеку реагирования, которая называется response-native-system-setting , для моего приложения мне нужно иметь возможность имитировать ключевые события для воспроизведения, приостановки и пропуска песен. на различных медиаплеерах, как описано здесь , поэтому я добавил функцию "MediaControl" в response-native-system-setting library:
public SystemSetting(ReactApplicationContext reactContext) {
super(reactContext);
mContext = reactContext;
reactContext.addLifecycleEventListener(this);
am = (AudioManager) mContext.getApplicationContext().getSystemService(Context.AUDIO_SERVICE);
wm = (WifiManager) mContext.getApplicationContext().getSystemService(Context.WIFI_SERVICE);
lm = (LocationManager) mContext.getApplicationContext().getSystemService(Context.LOCATION_SERVICE);
listenVolume(reactContext);
}
@ReactMethod
public void MediaControl(String Command ) {
long eventtime = SystemClock.uptimeMillis();
switch (Command) {
case "next":
KeyEvent downEvent = new KeyEvent(eventtime, eventtime, KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_MEDIA_NEXT, 0);
am.dispatchMediaKeyEvent(downEvent);
KeyEvent upEvent = new KeyEvent(eventtime, eventtime, KeyEvent.ACTION_UP, KeyEvent.KEYCODE_MEDIA_NEXT, 0);
am.dispatchMediaKeyEvent(upEvent);
case "previous":
KeyEvent downEvent = new KeyEvent(eventtime, eventtime, KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_MEDIA_PREVIOUS, 0);
am.dispatchMediaKeyEvent(downEvent);
KeyEvent upEvent = new KeyEvent(eventtime, eventtime, KeyEvent.ACTION_UP, KeyEvent.KEYCODE_MEDIA_PREVIOUS, 0);
am.dispatchMediaKeyEvent(upEvent);
case "play":
KeyEvent downEvent = new KeyEvent(eventtime, eventtime, KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_MEDIA_PLAY_PAUSE, 0);
am.dispatchMediaKeyEvent(downEvent);
case "pause":
KeyEvent upEvent = new KeyEvent(eventtime, eventtime, KeyEvent.ACTION_UP, KeyEvent.KEYCODE_MEDIA_PLAY_PAUSE, 0);
am.dispatchMediaKeyEvent(upEvent);
}
}
он хорошо работает на Android Studio, но когда я пытаюсь использовать функцию, я получаю сообщение об ошибке:
undefined is not a function (evaluating '_reactNativeSystemSetting2.default.MediaControl("play")')
я что-то упустил?