React Native - 打开“设置”应用时,原生iOS模块崩溃

时间:2017-06-05 16:53:56

标签: react-native react-native-ios

我正在尝试创建一个简单的React Native模块,它允许我从React Native应用程序中打开iOS设置应用程序。

我的实施:

#import <UIKit/UIKit.h>
#import "RNOpenAppSettings.h"

@implementation RNOpenAppSettings

- (dispatch_queue_t)methodQueue
{
    return dispatch_queue_create("com.krazylabs.RNOpenAppSettings", DISPATCH_QUEUE_SERIAL);
}

RCT_EXPORT_MODULE(OpenAppSettings)

RCT_EXPORT_METHOD(open){
  [[UIApplication sharedApplication] openURL:[NSURL URLWithString:UIApplicationOpenSettingsURLString]];
}

@end

以上实际上确实打开了iOS设置应用程序,但几乎立即崩溃。我的第一个假设是,操作可能花费的时间太长并阻塞了React Native队列;这就是为什么我要创建一个单独的队列。这没有用。

有没有人碰到这个?

1 个答案:

答案 0 :(得分:1)

我能够通过使用GCD异步调用openURL来解决这个问题。希望这有助于其他人。

#myslider{
    --paper-slider-input: {
        position:absolute;
        top: 50px;
        width: 100px;
        --paper-input-container-input: {
            font-size: 20px;
            color: red;
        }
    }
}