iOS

A collection of 56 post

[プレゼン資料] UVC(USB video class)と マルチプラットフォーム - UVC support by Apple multiplatform

2023年12月9日に行われた札幌iPhone開発勉強会でのプレゼンテーション資料。 iPadOS17以降でiPadでUVC(USB Video Class)がサポートされたので実際にハードウェアを接続して動作を確認した旨のプレゼンテーション。 iPadで動くだけでは面白みがないのでSwiftUI…

[プレゼン資料] SwiftUIむけに 整理された状態監視 Observation

2023年8月6日に行われた札幌iPhone開発勉強会でのプレゼンテーション資料。 iOS17から利用可能となるSwiftUIでの状態監視のためのフレームワークObservation について説明している。 以下資料内容を短くすると以下となる。 SwiftUI公開された2019年当初は別フレームワーク(Combine…

[プレゼン資料] Swift Concurrencyの 尻尾を掴め ~ 並行処理を受け入れる取っ掛かり

2022年3月18日に行われた札幌iPhone開発勉強会でのプレゼンテーション資料。 Swift Concurrencyの 尻尾を掴め ~ 並行処理を受け入れる取っ掛かり - Speaker Deck Swift Concurrencyについての話は公式(WWDC202…

Combine framework+RxCombineを使ってRxAlamofire(通信ライブラリ)を置き換える

端的に云うと RxSwiftを使った2つのサードパーティ製ライブラリに依存している通信機能を置き換える。 1) Reactiveプログラミングとライブラリ 2010年台後半にReactiveプログラミングのアイデアがiOSアプリ開発にも浸透。2020年台前半でも稼働、新規開発されているiOSアプリは多い。 Reactive…

自作アプリへのWidgetKit対応時に参考にしたWebサイト紹介(参照回数順) - SwiftUI

バッテリー状態表示アプリを2020年にiOS14から追加されたWidget機能にに対応した際に参考にしたサイトについて参照回数とコメントをつけて紹介する。 参照回数はSafariのタブブラウザで開いたままになっていたページを1カウントとしている。 サイト 参照回数 【iOS14】Widget(WidgetKit…

データ圧縮とApple Archive

パーソナルコンピューターで利用される圧縮機能についてのシンプルな解説とiOS13,macOS11からのAppleArchiveについての読み物。 1) データ圧縮の略史 パーソナルコンピューターが一般的に普及したのは2021年から四半世紀前の1995年のWindows95発売とそれに続くインターネット普及期(199…

SwiftUI100行サンプルチャレンジ① - Apple謹製シンボルリソースSF Symbols2とデバイスアイコンを表示する - iOS アプリケーション開発

SwiftUIは簡潔にUIを記述できる。100行内にUI付きのサンプルを記述できるのではないかという思いつきで100行(未満)でUI付きサンプルコードを記述できるのではないか?という発想で初めてみる。サンプルソースコードはGitGistで10…

[プレゼン資料]ウィジット設定ダイアログ WidgetConfiguration/CustomIntent - iOS Application Develop

2020年11月27に行われた札幌iPhone開発勉強会でのプレゼンテーション資料。 iOS14から追加されたウィジットの設定の追加方法をネタにSiri Custom Intentの実装方法入門編となっている。 記事としては以前に記述した内容のダイジェストとなっているので詳しく知りたい方は以下を確認して欲しい。 Apple…

Apple Widget考古学 - App Extension の技術Stack

ウィジットに関する読み物。OSXから数えると10年以上経過しているのでAppleのウィジットに関する経緯の確認。 端的に云うと WidgetKitはApple提供テクノロジーの塊。WidgetKitのベースとなる技術スタックは主役と脇役が入れ替わることがある。 1) ウィジット前史 = 原初のiPhone…

[プレゼン資料] Siri をだしにしてみる(Siri Develop Guide 2018)

2018年11月14日に行われら勉強会の資料を掲載している。 掲載には理由があってiOS14以降はウィジットの設定実装およびin-app intentの実装に伴いSiri Intent Extensionを再検討必要がありその振り返りの目的がある。 2018年年末だとExtensionやAppGroupなどSiri…

カメラアクセス非承認時のクラッシュタイミング(iOS/iPadOSアプリ)

アプリ開発始めた方、カメラアプリを何となく使っているアプリ開発者向け、カメラアクセス承認チェックが実装されていない古いアプリに触る機会を得たタイミングで得られた知見についてのメモ。 端的に云うと iOS カメラ機能を使う場合コードリーダー機能とカメラ機能でエラーが出るタイミングが異なるので問題切り分け時に注意する。 1) iOS…

[プレゼン資料] SwiftUI App/Scene - SwiftUI App/Scene の実際

2020年9月の勉強会資料。アプリのライフサイクルにSwiftUI Appを選べるようになり、SwiftUI App/Scene は簡潔にアプリライフサイクルを記述できるようになった。 WWDC2020で散々アピールされたけれども実際にはどうなの?を明らかにするプレゼンテーション資料。 内容としては過去のBlog…

既存iOSプロジェクトをSwiftUI Appへ移行する - アプリ開発者はSwiftUIにおけるAppDelegate/SceneDelegateの扱いをよく理解していない?

プロジェクトのLife CycleをUIKit App DelegateからSwiftUI Appへ移行するシンプルな作業に隠された。アプリの複雑さはどこに押し込められたのかという話。 note: 内容はSwiftUI への移行を迫ることを意図したものではなく移行時の注意点について記述した読み物。SwiftUI…

Multiplatform(マルチプラットフォーム)での画面サイズ情報入手手段3種 @ScaledMetric とEnvironment 、GeometryProxy を使い分ける - SwiftUI

画面などのサイズ情報のヒントはUIを構築する上で重要なヒントとなる。プラットフォームに依存したUI構築用フレームワークごとにサイズ情報が提供されていた。 マルチプラットフォームでのUI構築用フレームワークとしてSwiftUIはプラットフォームに依存せずにサイズ情報を取得するサポートが用意されている。 SwiftUI…

Xcode12 beta5 DocumentApp のテンプレートアプリ起動不能状態を回避する方法 - Multiplatform,iOS

Xode12 beta5ドキュメントアプリをビルドすると新規ドキュメントを開始できない状態になっている。次のXcode12、iOS14 SDKでは修正される可能性があるもAppleの修正を待っていてもドキュメントアプリ開発は進まないので回避方法についてのメモ。 追記 2020/8/26 Xcode12 beta6およびiOS…