Giter Site home page Giter Site logo

ios-cocoapods-keys-demo's Introduction

cocoaPods-keys

プロジェクトから環境に関する設定値を切り出して管理するCocoaPodsのプラグイン

概要

センシティブな情報(API Key等)を外部に切り離すサンプル

1. インストール

gem install cocoapods-keys

補足

ここで 3. PodFile のPodFileを追加すればcocoapods-keysが使える状態となる。
その場合は切り出した設定値はKeychainに保存される。
チームではなく一人で開発するのであれば、それでもOK。

2. .env ファイルを作成する

  • .env ファイルをプロジェクトのルートに配置する。
  • 追加したい keyvalue を記載する。
Secretkey="secretValue"
PrivateKey="privateValue"

注意

  • .env.gitignore に追加する
    • 誤ってGit管理に追加してしまう等、センシティブな情報を公開してしまうリスクがあるため
# cocoapods-keys
.env

3. PodFile

  • :project => にはプロジェクト名を記載する。
  • :keys => .env と同じ key を記載する。
plugin 'cocoapods-keys', {
  :project => "ios-cocoapods-keys-demo",
  :keys => [
    "Secretkey",
    "PrivateKey"
]}

注意

  • .env がプロジェクトのルートにない状態で pod install しない
    • Keychainに値を保存しようとしてしまうため

4. pod install する

pod install

5. 確認する

// 登録したkeyの一覧を表示する(Valueは非表示)
pod keys

ワークスペース内の Pods/Development Pods/Keys/ にKeys関連のディレクトリ・ファイルが生成されるので、そちらを確認してもOK。

6. チームメンバーに .env を共有する

  • 別途 .env を共有して、各自プロジェクトのルートに配置してもらう。
  • その他手順は上記と同様。

7. import する

import Keys

8. 使い方(Usage)

// Keysインスタンス生成
let keys = Keys()

// 設定値を取得する
let secretValue = keys.secretkey
let privateValue = keys.privateKey

ios-cocoapods-keys-demo's People

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.