unitをpixelにする。
gridを10pixel
layerをauto selected
always save
トリミング
切り抜く
なるほど!
随机应变 ABCD: Always Be Coding and … : хороший
unitをpixelにする。
gridを10pixel
layerをauto selected
always save
トリミング
切り抜く
なるほど!
1.ユーザーがpush通知許可
2.APNsがユーザーにデバイストークンを発行
3.ユーザーがサーバーにデバイストークン登録
4.サーバーがAPNsにプッシュ通知
5.APNsがユーザーにpush通知
サーバーはニフティクラウド mobile backendを使うらしい。
http://mb.cloud.nifty.com/
mBaaSというらしい。
とりあえず、登録してましょう。
ああ、これかー、application keyとclient key
まず、キーチェーンアクセスって何処にある?ジャッキーチェーン?
最初に、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
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 ですと。よかったー、安心♪
photoshopを開き、image -> adjustment -> brightnessで修正する。
通常
明るさ補正
明るく成りましたね。
というか、クオリティ上げて行くには、photoshopもやらないといかんのか。。
なんてことだ。
info.plistに追加します。
<key>NSAppTransportSecurity</key> <dict> <key>NSAllowsArbitraryLoads</key> <true/> <key>NSExceptionDomains</key> <dict> <key>http://hpscript.com/</key> <dict> <key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key> <false/> </dict> </dict> </dict>
php
$response = array(); if($_SERVER['REQUEST_METHOD'] == 'POST'){ $teamName = $_POST['name']; $member = $_POST['old']; $response['api'] = "succeeded"; $response['member'] = $member . " years old!"; echo json_encode($response); }
xcode console
っキタキタキタ!!!!!!!!!!!!!!!!!!!!!!!!
今回、php側はjsonで返してますが、mysqlへのinsert, fetchResultもできますね。iOSの光が見えてきた。
import UIKit class ViewController: UIViewController { let URL_SAVE_BOY = "http://hpscript.com/swift/index.php" @IBOutlet weak var NameFeild: UITextField! @IBOutlet weak var oldFeild: UITextField! @IBAction func saveBtn(_ sender: Any) { let requestURL = NSURL(string: URL_SAVE_BOY) let request = NSMutableURLRequest(url: requestURL! as URL) request.httpMethod = "POST" let teamName = NameFeild.text let memberOld = oldFeild.text let postParameters = "name="+teamName!+"&old="+memberOld!; request.httpBody = postParameters.data(using: String.Encoding.utf8) let task = URLSession.shared.dataTask(with: request as URLRequest){ data, response, error in if error != nil { print("error is \(error)") return; } do { let myJSON = try JSONSerialization.jsonObject(with: data!, options: .mutableContainers) as? NSDictionary if let parseJSON = myJSON { var msg : String! msg = parseJSON["message"] as! String? print(msg) } } catch { print(error) } } task.resume() } override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } }
@media printで指定します。
<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <title>The HTML5 Herald</title> <meta name="description" content="The HTML5 Herald"> <link rel="stylesheet" href=""> <style> #content1 { color:blue; } @media print{ #content1{ color:green; font-size:24px; } } </style> </head> <body> <input type="button" value="印刷する" onclick="window.print();" /> <div id="content1"> <p>サッカーW杯ロシア大会には、総額約120億ドル(約1兆6000億円)の選手たちが集結する。3人のトップ選手、ネイマール、メッシ、C・ロナウドの価値は、ランキング下位のチームの市場価値を上回った。</p> </div> </body> </html>
font-size, font-colorが変わりました。
<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <title>The HTML5 Herald</title> <meta name="description" content="The HTML5 Herald"> <link rel="stylesheet" href=""> </head> <body> <input type="button" value="印刷する" onclick="window.print();" /> <div id="content1"> <p>サッカーW杯ロシア大会には、総額約120億ドル(約1兆6000億円)の選手たちが集結する。3人のトップ選手、ネイマール、メッシ、C・ロナウドの価値は、ランキング下位のチームの市場価値を上回った。</p> </div> </body> </html>
印刷ボタンを押すと、、
なるほど