タグ

ブックマーク / shu223.hatenablog.com (11)

  • iOS 10の新機能のサンプルコード集「iOS-10-Sampler」を公開しました - その後のその後

    iOS 10でも大量のAPIが追加されました。が、新しいAPIはどう使うのか、実際に何がどこまでできるのか、といった具体的なところが、英語のドキュメントやWWDCのセッション動画をながめているだけだと正直あまりピンときません。やはり実際にコードを書いて動かしてみるのが一番わかりやすい・・・ということで今年もつくりました! iOS-10-Sampler 恒例の新機能のサンプルコード寄せ集めアプリです。ソースコードは GitHub に置いてあるので、ご自由にご活用いただけると幸いです。 https://github.com/shu223/iOS-10-Sampler 使い方は Xcode 8 でビルドするだけ なので、デザイナーさんやディレクターさんもぜひお近くのエンジニアにビルドしてもらってください。 iOSももうかなり成熟してしまい、話題になる革新的な新機能とか、どの開発者にとっても嬉しい

    iOS 10の新機能のサンプルコード集「iOS-10-Sampler」を公開しました - その後のその後
    thzak
    thzak 2016/09/14
  • オブジェクトが持つプロパティの型と名前のリストを取得する - その後のその後

    クラス/オブジェクトが持つプロパティ情報を取得するには、Objective-C のランタイムにある、 objc_property_t *class_copyPropertyList(Class cls, unsigned int *outCount); を使用します。 また objc_property_t 型のプロパティ情報からプロパティ名を取得するには、同じくobjcランタイム内の const char *property_getName(objc_property_t property); を使用します。 プロパティ名一覧を返すメソッドの実装例 まずランタイムのヘッダをインポート。 #import "objc/runtime.h" こんな感じでプロパティ名一覧を返すメソッドを実装できます。 - (NSArray *)propertyNames { unsigned int outCou

    オブジェクトが持つプロパティの型と名前のリストを取得する - その後のその後
    thzak
    thzak 2015/11/06
  • 【iOS9】API Diffs から見る iOS 9 の新機能 - Over&Out その後

    WWDCのチケットは外れましたが、サンフランシスコに来ております。そこで色んなミートアップに参加して世界中のiOSエンジニアと交流を図・・・ってはおらず、もくもくと Apple のドキュメントを見ています。(参考記事) 基調講演だけ見ると開発者的にでかい話は Swift 2 と watchOS 2 ぐらいかな、という感がありますが、「iOS 9.0 API Diffs」や「What's New in iOS」を見ると今回も新しい機能が数多く追加されているようです。分量が多すぎてほんの一部しか見れてませんが、気になったものを列挙していきます。 ※ 記事は Apple による公開ドキュメント(ログイン不要領域にある)を元に構成しています App Extension App Extension は、iOS 8 から導入された、アプリの機能を他のアプリからも使えるようにするためのしくみですが、な

    【iOS9】API Diffs から見る iOS 9 の新機能 - Over&Out その後
    thzak
    thzak 2015/06/09
  • 【iOS7】プッシュ通知のバックグラウンド処理でハマったメモ - その後のその後

    やりたかったこと: プッシュ通知を受け取ったときにアプリを起動することなく(バックグラウンドで)APIを呼ぶ これはおそらく「サイレントプッシュ通知(Silent Remote Notification)からの Background Fetch」の最も一般的な実装事例だと思うのですが、これがなかなかうまくいかず、試行錯誤しました。 最終的にはうまくいったのですが、そもそも何が原因だったのか、諸々の対策がどう効いて解決したのか、質的なことはあまりわかっていません。とにかく最終的にうまくいった実装と参考にした記事をここにメモっておきます。 (どの記事にも書いてある application:didReceiveRemoteNotification:fetchCompletionHandler: を実装するとか、通知を送る側の話とか、従来通りのプッシュ通知実装と同じ手順とかはこの記事では省略して

    【iOS7】プッシュ通知のバックグラウンド処理でハマったメモ - その後のその後
    thzak
    thzak 2014/12/15
  • 【WatchKit】Apple Watch アプリのつくり方 & 全API解説 - その後のその後

    Apple Watch の SDK である『WatchKit』がリリースされてたので、さっそくさわってみました。 以下、サンプル実行方法、AppleWatchアプリの実装方法(所要時間1分、プログラミング不要!)、全クラス解説の順に書いていきます。 ※記事は、Appleによる公開ドキュメント(ログイン不要領域にあるもの)の範囲で書いています。 サンプル実行方法 何はともあれまずはサンプル実行。 iPhone6 シミュレータとかの並びに Apple Watch とかが来るのかなと思ってたので、一瞬サンプルをどう実行してよいのか面らいましたが、シミュレータメニューから [Hardware] > [External Displays] > [Apple Watch - 38mm] または [Apple Watch - 42mm] を選択 で、Apple Watch サイズの外部ディスプレイシ

    【WatchKit】Apple Watch アプリのつくり方 & 全API解説 - その後のその後
  • 【UIScrollView × Autolayout 問題】Appleエンジニア直伝のファイナルアンサー - その後のその後

    iPhone6,6Plus サポートとか LaunchScreen.xib とか Size Class とか考えると、もはや Autolayout は必須な感じになってきてます。 http://d.hatena.ne.jp/shu223/20141002/1412209257 で、Autolayout ✕ UIScrollView の例の問題(UIScrollView のサイズを superview との制約で動的に変えるときにその中身も動的に変えたい、ってやつ。こんな雑な説明でもハマったことある人にはわかっていただけるかと・・・)、Apple 公式でこんなドキュメントが出てますが、 Technical Note TN2154: UIScrollView And Autolayout "Mixed Approach" とかなんか筋が悪い感じだし、"Pure Auto Layout Appr

    【UIScrollView × Autolayout 問題】Appleエンジニア直伝のファイナルアンサー - その後のその後
  • Objective-C で書いたアプリを Swift で書き換える5ステップ - その後のその後

    iBookでSwiftの解説出ましたが、言語自体にはそれほど興味がないので、実践的なところとして、手始めに「Objective-Cで書いた既存アプリをSwiftで書き換える」ところからやってみました。 アプリ全体、となると壮大なテーマになってしまうので、まずは AppDelegate だけ書き換えてみます。 なお、NDA 下にある Xcode 6 については書けないので、ビルド設定等については割愛しています。 1. 拡張子を .swift にする 例えば AppDelegate.m なら、AppDeleagate.swift にします。 2. import の書き換え ヘッダの import も移してきて、 #import <UIKit/UIKit.h> だったのを import UIKit にします。 3. クラス宣言の書き換え これもヘッダから移してきて *1 、 @interfac

    Objective-C で書いたアプリを Swift で書き換える5ステップ - その後のその後
  • 『iOSアプリ開発 達人のレシピ100』という本を書きました - その後のその後

    2013年に入ってから4ヶ月間、無職のありあまる時間をつぎ込み執筆してきたが、ついに日発売となりました。 バルセロナで観光もせず執筆し、その後は鎌倉のコワーキングスペースに毛布を持ち込み半泊まり込みで執筆し、企画当初は230ページの予定だったところを大幅超過して370ページも書いてしまったほどに気合いを込めました。 タイトルには『達人のレシピ』とありますが、もちろん著者が達人というわけではなく、掲載しているレシピが達人レベルの難しさ、というわけでもなく、私が提案した『iOSアプリ開発に役立つTips』という地味なタイトルに対していろいろな大人の方々の意向が加わってこうなった、というものです(カッコイイので大変満足しております)。 の内容 ざっくり言うと、iOSアプリ開発まわりのTips集です。 概要紹介代わりに、『はじめに』に書いた内容を転載します。 iOS SDK がカバーしている

    thzak
    thzak 2013/05/28
    至れり尽くせり!
  • 評判のいいiOSアプリ開発のTips ベスト20 - その後のその後

    『iOSアプリ開発に役立つTips』という Facebook ページをやっておりまして、そこで評判が良かった投稿(※)を 20 個ほど紹介します。 (※) Facebook ページの insights にある「クチコミ度」で判断しました アプリ実行中にコードを修正してそのまま実行中のアプリに反映させる アプリ実行中にコードを修正してそのまま実行中のアプリに反映させることができるXcodeプラグイン。 実機でもシミュレータでも使用可能とのこと。実機での動作検証中に修正して再インストールは時間かかるので、超ありがたいかも。 Injection for Xcode 投稿:2013/2/4 「PCのwebブラウザからiPhoneのカメラロールにアクセスできるようにするアプリ」のしくみ アプリ側でURLを発行している画面キャプチャがあるので、アプリにHTTPサーバ機能をもたせて(古いけどCocoaH

    thzak
    thzak 2013/05/01
  • Core Image の遷移エフェクトを使う - その後のその後

    Core Image のフィルタ (CIFilter) には、CICategoryTransition というカテゴリーがあり、次のような遷移(トランジション)エフェクトが用意されています。 (2015.10.5更新) CIBarsSwipeTransition CICopyMachineTransition CIDisintegrateWithMaskTransition CIDissolveTransition CIFlashTransition CIModTransition CISwipeTransition CIAccordionFoldTransition(iOS 8) CIPageCurlTransition(iOS 9) CIPageCurlWithShadowTransition(iOS 9) CIRippleTransition(iOS 9) 次のような一風変わった遷移

    Core Image の遷移エフェクトを使う - その後のその後
  • ダウンロード可能な Audio Unit 関連のサンプルコード11個 - その後のその後

    Audio Unit は、iOS の Core Audio においてもっとも低レベル(ハードウェアより)に位置するフレームワークです。そのため低レイテンシを要求されるオーディオ処理機能を提供するアプリに向いています。 というのがよく言われる Audio Unit のメリットなのですが、個人的には Audio Unit の「ユニットをつなげて複雑なオーディオ処理を実現する」というしくみ(AUGraph)がまるでギターのエフェクターをつないで音をつくる感じに似ていて、そのあたりも興味深いポイントとなっています。 ただ API は全部 C ベースだし、音を再生するだけでも(AVAudioPlayer 等と比較すると)複雑だったりするので、まずは参考になるサンプルをいろいろと集めてみました。 どの Audio Unit を使用しているか(kAudioUnitSubType_xxxx で判断) どう

    ダウンロード可能な Audio Unit 関連のサンプルコード11個 - その後のその後
    thzak
    thzak 2013/02/28
  • 1