WWDC2017で発表された内容です。 すでにApp Store Review Guidelinesも改定されており、用意されているAPIを使えとなっています。 変更点 iOS10までのAppStoreでは最新バージョンの評価が表示されていたが、iOS11からはバージョン別ではなく総合的な評価になる。 iOS10.3はAppStoreへのDeepLinkが用意された iOS11からはレビューはSKStoreReviewControllerクラスを使うことを推奨 レビューへ誘導するカスタムアラートは禁止 AppStoreへのDeepLink 例) https://itunes.apple.com/us/app/itunes-u/id490217893?action=write-review アプリ内の設定画面に評価をするボタンを設置する 評価するか?というAlertは出してはいけない。アラー
マンガZERO(iOS)の開発環境の紹介 マンガZERO(iOS)では環境変数をScheme毎に変えてビルドできるようにしています。 この記事では環境変数を変える理由と実際にConfigファイルを使って環境変数を切り替える手段を紹介します。 社内配布限定のアプリを作りたいなどの要望があった場合、この手法ですぐに対応できるようになるのでオススメです。 マンガZERO(iOS)のSchemeの分け方 以下の3パターンに分けてアプリを生成できるようにしています。 Debug 開発時用。開発者以外は触りません。 Adhoc 社内配布用。新機能の使い心地やユーザビリティなどを確かめる際に使われています。 社内ではFabricのBetaを使用して、配布しています。 Store 公開用。ストアに公開される状態をもつようにしています。 弊社ではiTunes ConnectのTestflightを使用して最
最近Segueをいかに安全に使って画面遷移するかということを考えていたけど、#swtwsを見ていてそもそもSegueを使わない/嫌いという人が結構いるんだなと思ったのでSegueを使わないで楽に安全に画面遷移する方法を考えてみたら意外といい感じになった。 Segueの危うい所 コード内ではSegueのidentifierを単なる文字列として扱う所 performSegue(withIdentifier: "toDetailVC", sender: nil) だからSegueの名前が変わった時に直し忘れていてもコンパイル時にチェックできない。 遷移先のViewControllerをいじるのはいわゆるprepareForSegueメソッドの中なので、複数の遷移に関する処理が一つのメソッドにまとめられてしまう所 override func prepare(for segue: UIStorybo
随分久しぶりの投稿となりましたが、個人的に使いたいiOS 9以降で使えるAPIをピックアップしました。 アニマネのiOS版は基本的に最新と一つ前のバージョンをサポートしていて、 バージョンごとに分岐するコードは極力使わない方針で開発しています。 iOS 10がリリースされたばかりですが、新OSよりiOS 8以降のサポートを切れることの方が嬉しかったりします。 というわけで今まで使わなかったけど、これから使っていきたいAPIを書いてみます。 UIStackView Androidで言うところのLinearLayoutです。 iOSのStoryBoardでは横並びのレイアウトが面倒だったのですが、UIStackViewを使うと楽になります。 さらに嬉しいのが、子Viewをhiddenにした時に間を詰めてくれます。 Androidはその辺楽なのですが、iOSの場合は確保していた領域が残るので高さ
いつもアニマネをご利用頂きありがとうございます。 夏アニメを消化しきれないまま秋クールに入っている開発者です。 本日はiOSのサポートに関するお知らせです。 表題のとおりなのですが、先日アップルからiOS 10がリリースされました。 アニマネのiOS版については最新と一つ前のOSをサポートするというポリシーで開発しています。 したがって、iOS 10のリリースに伴いiOS 8のサポートは廃止され、 iOS 9以上が今後アニマネがサポートするバージョンとなります。 次回アップデートからはiOS 9以上が更新対象となりますので、予めご了承くださいませ。 あと、本業が忙しく、ここ最近アップデートが滞っておりましたが、 現在メジャーアップデートに向けて開発しております。 AppStoreのレビュー等で要望をいくつか頂いていますが、 現在は組み込みが難しいため、次回アップデート以降のバージョンで順次
#みんな知ってる ##①Realm 最近バージョンが1.0になったらしい。 ##②Firebase MBaaS、気づいたらGoogleの仲間になってた。Parseが無くなるし代用できる。 ##③SDWebImage 画像キャッシュライブラリーの王道 #UI、デザイン ##④ParseUI ログイン画面とかのUI ##⑤FlatUIKit フラットなUIの塊。アラートとかいろいろある。 ##⑥JSQMessagesViewController いろいろ応用が利くメッセージのビューを簡単に作れる。Firebaseと組み合わせると結構いい。 ##⑦KRProgressHUD 今までのローディングも良かったけどこれはカラーとか詳細に決められて綺麗。 ##⑧DualSlideMenu 一般的なスライドメニュー。個人的には実装がめんどくさいと思っちゃう。 ##⑨SlideMenu3D https://
UITableView の見た目で様々な要素を表示しつつ、その一部として UITextView を使いたい、という需要があると思う。最も身近な例は標準のメールアプリである。 これは UIKit の API を駆使することで実現可能である。本記事ではこれを実現する方法を通して、あまり知られていないであろう UIKit の機能について紹介する。 UITextView の intrinsic content size Auto Layout において、UIView は自身が表示されるためにちょうどよいサイズを知っている。具体的には var intrinsicContentSize: CGSize である(Swift 3.0 では property で、Swift 2.3 まではメソッドである)。このサイズは他の NSLayoutConstraint と関連して、デフォルトではプライオリティ 75
R.swift をもっと簡単にする 先日、弊社の iOS エンジニアの田中が iOS アプリのリソースアクセスを簡単にするライブラリ「R.swift」を紹介いたしました。 【Swift】R.swiftが優秀すぎるので紹介してみる ここでも改めて触れますが、R.swift では以下のようなことができます。 コード補完でリソースファイルにアクセスすることができる リソースファイル取得時に型も補完してくれる 文字列指定による動的な指定をしなくてよいので静的に解析することができる(コンパイル時にエラーを出してくれる) 大変便利なライブラリですが、注意点としてこのライブラリが生成する R.generated.swift を都度生成する必要があります。Run Script に R.swift のコマンドを記述することで生成されますが、リソースファイルを編集したら一度ビルドを実行しなければ R.gene
こんぬづは、Steamのセールでゲームを買ったはいいが、家にネット回線がまだひかれておらずゲーム本体のダウンロードすらできていない田中です。 今回は先日発見したR.swiftというライブラリが、導入コストに対する効果が高そうなので紹介します。 このライブラリ、Fabric.appにも導入されている模様です。 Building Fabric.app in Swift 概要 なにができるライブラリ? R.swiftの利点は以下になります。 コード補完でリソースファイルにアクセスすることができる リソースファイル取得時に型も補完してくれる 文字列指定による動的な指定をしなくてよいので静的に解析することができる(コンパイル時にエラーを出してくれる) なにがいいの? リソースファイルにアクセスする際によく取り上げられる問題として、文字列指定によって取得しなければいけない点が挙げられます。 これはTy
おばんです、ポケモントレーナーLv.15の田中です。 近所でミニリュウが出ることが発覚して最高です。 今回自分史で初めて公開したiOSのOSSライブラリ、ScrollingFollowViewを紹介します。 ※この記事は現バージョン0.0.2における紹介です。ライブラリをアップデート次第こちらも随時更新する予定です。 ScrollingFollowViewとは PixivやFacebookのNavigationBar領域などにも使われているような、UIScrollViewのスクロールに付随して動くUIViewの拡張ライブラリです。 先日Retty Tech Cafe #6で発表したこのライブラリに関する資料はこちらです。 作ろうと思った動機、経緯についても触れたのでもし興味があればご覧ください。 基本的な使い方 導入はカンタンです。 ここではGitHubのレポジトリのDEMOでも紹介してい
ES6とReactの勉強を兼ねて、React NativeでiOSアプリとAndroidアプリを作ってみました。 アニメグッズの最安値を検索するアプリです。 アニマネ プライス - アニメグッズの最安値をチェック! Kazuhiro Minatoショッピング無料 React NativeはJavaScriptが書ければiOSアプリとAndroidアプリが作れます。 それに加えてHTML5のハイブリッドアプリとは違い、高速に動作すると謳われるプラットフォームです。 コードの共通化ができて、しかも高速というのは開発者にはとても魅力的です。 タイトルはパロディなので少々大げさな感じがしますが、実際に作って色々と分かりましたので、 React Nativeについて軽く紹介しつつ、これから導入を検討している人向けに書いてみます。 ざっくりとしたまとめ 長い記事なので、忙しい人向けのざっくりとしたまと
EC系アプリ作成の参考にするために、国内既存アプリのUIを調べてみました。 自分用のメモで、今回はiPhoneアプリのみです。 参考にしたアプリ Amazon Amazon ショッピングアプリ AMZN Mobile LLCショッピング無料 デザインはWebサイトに近い感じを意識している様子。 独自のUIコンポーネントが多く使われている。 よくも悪くもAmazonらしい印象を受けた。 Yahoo!ショッピング Yahoo!ショッピング-お得で便利なショッピング/通販アプリ Yahoo Japan Corp.ショッピング無料 カテゴリは縦型のタブレイアウトが採用されている。同じようなUIのアプリは少ないけど、カテゴリ数が多い場合は良いと思う。カテゴリ毎に画像があるのもGood。 スクロール時にナビゲーションを隠すので画面が広く使える。 iOS標準のUIを使いつつ、見やすい感じにまとめられてい
※本記事は、一般に公開されている情報を元に作成しています ※図は WWDC 2016 の Introduction to Notificationsより引用しています WWDC 2016 で User Notifications Framework が発表されましたね。 これまでは、Remote Notification と Local Notification が別々に存在していましたが、User Notifications Framework の登場により、これらを同じフレームワークでハンドリングできるようになります。 この中で個人的に注目なのは、**In-app presentation option(アプリを起動中にも画面上に通知を表示できる)**という点。詳しくは後述します。 通知が発生するトリガーとして次の4つが用意されています。 Push Time Interval Cale
Apple WWDC 2016に参加するためにサンフランシスコへ来ているid:niwatakoです。 WWDC 2016のセッション にて、App Storeに公開するアプリは今年中にATS(App Transport Security)が要求されるようになるという発表がありました。 アプリからの通信をhttps接続のみに制限するATSの有効化がApp Storeへのアプリ提出には必須になるとのことですが、はてなブックマークのようにhttpのウェブページを含む不特定多数のコンテンツの表示が必要なアプリはどこまで制限されるのでしょうか。 WWDC期間中はAppleのエンジニアに質問が出来るLabが設けられているので、ATSとiOS 10でのATS周りの仕様について質問してきました。 2016/12/22 追記 2016年末とされていたApp Transport Security必須化の延期が
アプリのユーザー認証にAmazon Cognitoを利用したのですが、 リリースするまでに色々とハマったのでここにまとめておきます。 iOS版 Amazon Cognito 公式ドキュメントに載っている実装方法と、 最新バージョンの実装方法が違うのでえらく時間が掛かりました。 詳細は下記を参考にしてください。 Android版 Amazon Cognito 同期時のエラー: Synchronize failed because it exceeded the maximum retries 同期時のリトライ上限に達したというメッセージです。 理由は複数考えられますが、僕の場合はコンフリクトの解決を行なっていないことが原因でした。 ドキュメント読むと、DefaultSyncCallbackを継承して必要なイベントだけを上書きするだけで あとはデフォルトの挙動になるのかと思いきや、そうでもない
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 下記GitHubにサンプルをアップロードしました。 https://github.com/teradonburi/CognitoUserAuthApiApproval サーバレスアーキテクチャとは サーバを運用する場合、大まかにわけて次の3つの選択肢が存在すると思います。 自社でサーバを管理するケース(オンプレミス型) クラウドサービスでサーバを管理してもらうケース(IaaSクラウド型) クラウド上でビジネスロジックのみ記述して、必要な時だけサーバを稼働させ、スケールもクラウドサービスに任せるケース(サーバレス型) クラウドに依存するほ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く