コンテンツにスキップ

iOSアプリ向けの設定

iOSアプリ向けの設定を行います。
ReactNativeビルドで生成されたXcodeプロジェクトに対して行います。


Xcodeプロジェクトの設定

RichFlyer SDK for iOSマニュアルを参照してXcodeの設定を実施してください。


CocoaPods

Cocoapodsのインストール

作業を実施する前に開発を行うPCにCocoaPodsがインストールされている必要があります。

Podfileの編集

生成されたXcodeプロジェクト(.xcworkspaceファイル)と同じディレクトリにあるPodfileファイルに追記します。
下記の NotificationContentNotificationService は、 Xcodeプロジェクトの設定 で作成したApp Extensionの名前に替えて反映してください。

Podfile

target 'RichflyerExample' do
    config = use_native_modules!

    # Flags change depending on the env values.
    flags = get_default_flags()

    use_react_native!(
        :path => config[:reactNativePath],
        # Hermes is now enabled by default. Disable by setting this flag to false.
        :hermes_enabled => flags[:hermes_enabled],
        :fabric_enabled => flags[:fabric_enabled],
        # Enables Flipper.
        #
        # Note that if you have use_frameworks! enabled, Flipper will not work and
        # you should disable the next line.
        :flipper_configuration => flipper_config,
        # An absolute path to your application root.
        :app_path => "#{Pod::Config.instance.installation_root}/.."
    )

    # For RichFlyer
    target 'NotificationContent' do
        inherit! :search_paths
    end

    target 'NotificationService' do
        inherit! :search_paths
    end

    # react-nativeのバージョンが0.69未満の場合のみ
    pod 'react-native-richflyer', :path => '../node_modules/react-native-richflyer'

    target 'RichflyerExampleTests' do
        inherit! :complete
        # Pods for testing
    end


    post_install do |installer|
        # https://github.com/facebook/react-native/blob/main/packages/react-native/scripts/react_native_pods.rb#L197-L202
        react_native_post_install(
        installer,
        config[:reactNativePath],
        :mac_catalyst_enabled => false
        )
        __apply_Xcode_12_5_M1_post_install_workaround(installer)
    end
end

設定反映

以下のコマンドを実行して設定を反映します。

pod install

Info

コマンド実行前にXcodeプロジェクトが開かれていたら終了させてください。