标签: react-native-modules

将 onPictureInPictureModeChanged 结果传递到反应本机模块

我正在尝试使用反应本机做一些画中画模式。我写了一个反应模块

我需要生成与此类似的内容,但在反应本机模块内

public class MainActivity extends AppCompatActivity {
    private PlayerView playerView;
    private Player player;
    private boolean playerShouldPause = true;

...

    @Override
    public void onPictureInPictureModeChanged(boolean isInPictureInPictureMode, Configuration newConfig) {
        super.onPictureInPictureModeChanged(isInPictureInPictureMode, newConfig);

        // Hiding the ActionBar
        if (isInPictureInPictureMode) {
            getSupportActionBar().hide();
        } else {
            getSupportActionBar().show();
        }
        playerView.onPictureInPictureModeChanged(isInPictureInPictureMode, newConfig);
    }
...
}

Run Code Online (Sandbox Code Playgroud)

有一些方法可以以相同的方式做到这一点,但在 ReactContextBaseJavaModule 内部

public class ReactNativeBitmovinPlayerModule extends ReactContextBaseJavaModule {

...
 @Override
    public void onPictureInPictureModeChanged(boolean isInPictureInPictureMode, Configuration newConfig) {
        super.onPictureInPictureModeChanged(isInPictureInPictureMode, newConfig);

        // Hiding the ActionBar
        if (isInPictureInPictureMode) {
            getSupportActionBar().hide();
        } else {
            getSupportActionBar().show(); …
Run Code Online (Sandbox Code Playgroud)

android native react-native bitmovin-player react-native-modules

3
推荐指数
1
解决办法
1903
查看次数

Swift 中的 RN 模块无法获取参数

我正在实现我自己的模块,并且在快速将参数传递到函数中时遇到问题。该函数应该返回 Promise。它总是因这个错误而崩溃

Exception 'getPassesOf: is not a recognized Objective-C method.' was thrown while invoking getPassesOf on target RNAppleWallet with params ( DDDDtest, 5026, 5027 )

我的OC桥:

#import "React/RCTBridgeModule.h"

@interface RCT_EXTERN_MODULE(RNAppleWallet, NSObject)

RCT_EXTERN_METHOD(openWallet:(NSDictionary*)config callback:(RCTResponseSenderBlock))

...

RCT_EXTERN_METHOD(getPasses: (RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject)

RCT_EXTERN_METHOD(getPassesOf: (NSString *)test (RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject)

//RCT_EXTERN_METHOD(getPassesOf:(NSString*)passType (RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject)
//RCT_EXTERN_METHOD(getPassesOf:(NSString *)passType resolve:(RCTPromiseResolveBlock *)resolve reject:(RCTPromiseRejectBlock *)reject)


...


@end
Run Code Online (Sandbox Code Playgroud)

重要功能 getRemoteSecureElementPassesgetRemotePaymentPasses并且getPasses工作正常。但他们没有额外的参数和功能getPassesOf,普拉特测试崩溃

RCT_EXTERN_METHOD(getPassesOf: (NSString *)test (RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject)

这是 swift 函数中的一个实现,getPsses工作正常,但getPassesOf该参数有问题

...
  @objc
  func getPasses(_ resolve: @escaping …
Run Code Online (Sandbox Code Playgroud)

objective-c swift react-native react-native-modules

2
推荐指数
1
解决办法
2497
查看次数