タグ

ブックマーク / qiita.com/mono0926 (5)

  • ローディング時のズルい進捗表示

    今開発中のPlayer!のログイン・登録画面で、こんな進捗表示をしていますが、これ実はフェイクだったりします( ´・‿・`) (Qiitaの画像サイズ制限が厳しくて粗いです。キレイなものは実際にアプリダウンロードしてご覧下さい。) 経緯 元々、この画面はこういう進捗表示では無く、単にインジケーターがクルクルするだけで、進捗状態が分からないものでした。 特にネットワークが悪いところだと、バグって固まってしまったのでは?とユーザーを不安にさせるようで、たまにそういう声を聞くことがありました。 登録フローは大事なところなので、そういうところでこれが原因で離脱してしまうと残念なので、改善が必要でした。 そこで、ネットワーク処理にもたつきつつもちゃんと正常に処理をしているということを示すために、進捗を表示することにしました。 ただ、例えば大きな画像などメディアファイルダウンロードなどならともかく、こ

    ローディング時のズルい進捗表示
    yk5656
    yk5656 2015/09/19
  • iOSのPUSH通知(APNS)の特徴・ノウハウまとめ(iOS 9まで対応) - Qiita

    今開発しているPlayer!で、チャット系のリアルタイム更新処理が必要となったので、色々調べながらまとめています。 分量が多いので、とりあえずまずは小出しにAppleのPUSH通知の特徴・ノウハウについてまとめたものを公開します。 → 「リアルタイム更新処理」全体にフォーカスした記事も書きましたヽ(・ω・`) iOS - チャットなどリアルタイム更新が必要なスマフォアプリの構成について考えてみた - Qiita アプリが終了状態になっていてもサーバーから通知出来る唯一の手段 まず当たり前のことからですが、最大の特長だと思います。 この理由によって、双方向通信などを併用するにしてもPUSH通知対応は必須です。 (サーバー経由でなければ、位置情報トリガーなど他にもいくつか終了状態から起こす方法は存在します。) ユーザーにPUSH通知を不許可にされたら届かない さらに、初回の確認で不許可にされた

    iOSのPUSH通知(APNS)の特徴・ノウハウまとめ(iOS 9まで対応) - Qiita
    yk5656
    yk5656 2015/07/22
  • Swift実行ファイルを逆アセンブルして、最適化具合を正確に把握する方法 - Qiita

    SwiftはOptimization Levelによって顕著にパフォーマンスに差が出ます。 参考: Apples to apples, Part II · Jesse Squires また、Dynamic Dispatchでの呼び出しもオーバーヘッドになります。 参考: Swiftのfinal・private・Whole Module Optimizationを理解しDynamic Dispatchを減らして、パフォーマンスを向上する - Qiita ドキュメントなど読み解けば「どういう記述をすればどうコンパイルされるか」は大体予測付きますが、やはり実際にその予測通りになっているかは確認しておきたい時があります。 特にロガーなどグローバルに呼び出されるものの場合、そういう確認大事だと思っています。 (この記事もロガーの検証が元々の目的で、そのために調べてまとめています。ロガーについても記事

    Swift実行ファイルを逆アセンブルして、最適化具合を正確に把握する方法 - Qiita
    yk5656
    yk5656 2015/07/20
  • iOS9-day-by-dayという定番サンプル集が公開されました - Qiita

    iOSの新機能サンプルとして評判のシリーズのiOS 9版、iOS9-day-by-dayが10日前に公開されたようです。 これ系、国内だと秋の正式リリースのタイミングで公開される、堤さんのiOS8-Samplerなどのシリーズが有名だと思いますが、そちらは今年もiOS 9正式リリースのタイミングで公開予定とのことです。 iOSx-day-by-dayについてかるく説明 多分iOS 7から続くシリーズで、去年のiOS8-day-by-dayも、2,060スターの人気レポジトリです。 去年の場合、連日〜数日起き程度の更新頻度で、次々とiOS 8の新機能サンプルと説明があがってきてて、かなりありがたかったです。 Swiftで書かれています。 Shinobicontrolsの社員が書いている模様です。 年によって担当が違い、今年はChris Grantさんという方がメインで担当しているようです。

    iOS9-day-by-dayという定番サンプル集が公開されました - Qiita
    yk5656
    yk5656 2015/07/16
  • Swiftのfinal・private・Whole Module Optimizationを理解しDynamic Dispatchを減らして、パフォーマンスを向上する - Qiita

    Swiftのfinal・private・Whole Module Optimizationを理解しDynamic Dispatchを減らして、パフォーマンスを向上するiOS最適化Swiftパフォーマンス 追記(2016/10/23) SE-0117: Allow distinguishing between public access and public overridabilityでpublicの意味が少し変わって、openも登場した関係で、記事中のコードはSwift 3では少し変更必要そうです。 finalがデフォルトになったので指定不要になった オーバーライド可能にするにはopenを明示が必要になった(これまではデフォルトopen状態だった) デフォルトでDynamic Dispatchが発生しにくくなった感じです。 表面上の書き方は少し変わりましたが、質は変わりません。 少し

    Swiftのfinal・private・Whole Module Optimizationを理解しDynamic Dispatchを減らして、パフォーマンスを向上する - Qiita
    yk5656
    yk5656 2015/07/04
  • 1