image adjustment

初期

color balanceでgreenの要素を強める。

六本木1丁目のようですね。

「色相」とは
赤、青、緑といった色みの違いを表す言葉です。「色相」のつまみを動かすと、下記のように変わります。

「彩度」とは
色の鮮やかさの違いを表している言葉です。「彩度」のつまみを動かすと、下記のように変わります。

「明度」とは
明るさの違いを表している言葉です。

EC2を作成する

Amazon Linux AMI 2018.03.0 (HVM), SSD Volume Type
Amazon Linux AMI は、AWS がサポートする EBS-backed イメージ。デフォルトのイメージには、AWS コマンドラインツール、Python、Ruby、Perl、および Java が含まれます。レポジトリには、Docker、PHP、MySQL、PostgreSQL、およびその他のパッケージが含まれます。

VPCを作成する

AWSを構築していきます。まず、VPC

CIDR blockとは?
CIDRはClassless Inter-Domain Routingの略。
クラスを使わないIPアドレスの割り当てと、経路情報の集成を行う技術
クラスとは、IPアドレスのネットワーク部とホスト部を決められたブロック単位で区切る方法で、簡単ですがアドレス空間の利用に無駄が生じてしまう。これに対しクラスを使わないCIDRでは、任意のブロック単位で区切ることができるため、IPアドレス空間を効率的に利用することができる。

CIDRブロックをさらに小さく分割したCIDRブロックを、サブネットと呼ぶ。「10.0.0.0/16」で作成したCIDRブロックを「/24」の大きさで今度は256分割する、などが一般的。

「10.0.0.0/16」
10.0.0.0/8 = 10(ネットワーク部)+ 0.0.0(ホスト部)
大きいネットワークを作る場合(最大16,777,216個のアドレス配布が可能)
/16はネットワーク部の長さを示す値で、IPアドレスを2進数表記にした場合の先頭から桁数
ネットワーク部はこの数字の羅列の先頭から「16」桁まで
このようなプライベートIPを「クラスフル」と呼ぶ

NIFCloud-mbaasをx-codeに入れよう

githubを開きます。
https://github.com/NIFCloud-mbaas/ncmb_ios/releases

最新版のv2.4.3をダウンロードします。
プロジェクトフォルダのxxx.xcodeprojと同じ階層にダウンロードしたフォルダncmb_ios-2.4.3を置きます。

x-codeを立ち上げて、xxxx.xcodeprojから、Build Phasesを開く。

Link Binary With LibrariesでNCMBを開く。

続いて、AppDelegate.swiftと同じディレクトリにxxx-Bridging-Header.hを作成する。

あ、NBCM.frameworkでないとダメのようですね。

はあ?エラーが消えた!!!
なにこれ?

APNs(Apple Push Notification Service)

1.ユーザーがpush通知許可
2.APNsがユーザーにデバイストークンを発行
3.ユーザーがサーバーにデバイストークン登録
4.サーバーがAPNsにプッシュ通知
5.APNsがユーザーにpush通知

サーバーはニフティクラウド mobile backendを使うらしい。
http://mb.cloud.nifty.com/
mBaaSというらしい。

とりあえず、登録してましょう。

ああ、これかー、application keyとclient key

macキーチェーンアクセスでCSR(Certificate Signing Request)を取得する

まず、キーチェーンアクセスって何処にある?ジャッキーチェーン?

最初に、Utilitiesを開きます。

utilitiesから、Keychain Accessを開きます。
なんだ、簡単。

次に、Keychain Accessから、Certificate Assistant -> Request a Certificate From a Certificate Authority… を開きます。

Certificate Informationのformが開くので、User Email Addressにmacのdeveloperで登録しているメールアドレス、CA Email Addressは空欄、Request is:は、saved to disk と Let me specifiy key pair informationをチェックします。

そうすると、保存場所を聞かれるので、適当にDesktopにでも保存します。

key pair informationはそのまま、RSA 2048bitでcontinueします。

できました。OK

push通知を実装する

AppDelegate.swift で、UserNotifications, NCMBをimportする。

import UIKit
import UserNotifications
import NCMB

あれ、NCMBがインポートできない。
あれ、証明書が必要なの?

>証明書の取得
>参考1(GitHub):プッシュ通知の受信に必要な証明書の作り方(開発用)
>参考2(Qiita):プッシュ通知に必要な証明書の作り方2016
>ニフクラ mobile backend の無料登録(アカウント取得)
なに、事前準備がこんなにあるのか。。

そもそもCSRファイルとは?
>CSR には「公開鍵」とその所有者情報、及び申請者が対応する秘密鍵を持っていることを
>示すために申請者の署名が記載されています。 認証局は証明書にその所有者情報を
>署名することで、所有者の存在を証明しています。
>SSL 通信ではサーバが公開鍵を提示し、これを用いて暗号化通信を開始します。
公開鍵、所有者情報、秘密鍵を持っていることの証明か。

そもそも、CSRってなんの略? まさか企業の社会的責任じゃないよね? Corporate Social Responsibility?

Certificate Signing Request ですと。よかったー、安心♪