[プレゼン資料] UVC(USB video class)と マルチプラットフォーム - UVC support by Apple multiplatform
2023年12月9日に行われた札幌iPhone開発勉強会でのプレゼンテーション資料。 iPadOS17以降でiPadでUVC(USB Video Class)がサポートされたので実際にハードウェアを接続して動作を確認した旨のプレゼンテーション。 iPadで動くだけでは面白みがないのでSwiftUI…
SwiftUI
2023年12月9日に行われた札幌iPhone開発勉強会でのプレゼンテーション資料。 iPadOS17以降でiPadでUVC(USB Video Class)がサポートされたので実際にハードウェアを接続して動作を確認した旨のプレゼンテーション。 iPadで動くだけでは面白みがないのでSwiftUI…
2023年8月6日に行われた札幌iPhone開発勉強会でのプレゼンテーション資料。 iOS17から利用可能となるSwiftUIでの状態監視のためのフレームワークObservation について説明している。 以下資料内容を短くすると以下となる。 SwiftUI公開された2019年当初は別フレームワーク(Combine…
2022年12月20日に行われた札幌iPhone開発勉強会でのプレゼンテーション資料。 WWDC222 で発表されたメモリ空間の違いにかかわらずデータ転送可能可能とするprotocol Transferable…
端的にいうと SwiftUIベースPush通知のテストベッドコード。アプリ表示中での通知有効。 1)プッシュ通知のテストコードが欲しい プッシュ通知はXcode1…
端的にいうと CoreLocationの位置情報取得認証フローをasyc/awaitを使って実装する。 1) WeatherKitを使いたい iOS16 SDKから追加された天気情報を読み取るサービスWeatherKit のWWDC22セッションビデオが公開されていた(1…
端的にいうと Combine Frameworkのシンプルなテストベッドコード。 1) Combine Frameworkのテストベッドが欲しい Combine Frameworkを使ったコードを書く場合、記述したコードの結果を表示しながら作成したいことがある。本来モデルクラスを作成したうえでSwiftUI…
watchOS8.0 対応ライブラリ&インターバルバックグランド更新 - Speaker Deck 2021年12月15日に行われたオンライン勉強会iPhone Dev Sapporo feat. HAKATA.swiftでの発表資料。内容としてはwatchOSで使用可能なライブラリの紹介とwatchOS…
端的にいうと watchOSアプリのComplicationsのバックグラウンド更新処理呼び出しのサンプル。 1) watchOSアプリのComplications機能 AppleWatchでは時計盤面上で各種情報を表示できる。各種情報はComplicationsと呼ばれwatchOS…
2021年5月2日に行われた札幌iPhone開発勉強会でのプレゼンテーション資料。 Firebase for iOS 初手〇〇 - Speaker Deck 内容としてはモバイル向けBaaS(mBaaS)として機能が充実したGoogleのFirebase についての説明と、最初に何をするかについて説明した資料。 メモ: 202…
WWDC2021が6月7日に開催されるに向けて札幌のiPhoneアプリ開発者によるAppleの発表予測をPodCastへ公開しております日本語。 #68 大胆予想!WWDC21でSwiftUIは新たな領域に突入する!? – AirSap 予測担当としてPodCast…
SwiftUIのColorについての備忘録。Colorは型(文字列や数値)のように扱う事はできないのでSwiftUIでの条件分岐で使用できない(常にfalse)。解決例についても説明する。 1) 概要 SwiftUIのColorはSwiftUI内部でのみ適用される色構造体となっている。色というよりは形状を持たないShape…
端的にいうと Swiftの列挙定義を拡張するにはCaseIterableプロトコルを用いる CaseIterableプロトコルを用するとallCasesプロパティが利用できる UIKitのサンプルコードをSwiftUIに置き換えてみる 1) enum〜case概要 Swift…
端的にいうと Apple謹製のテストアプリ配布機能TestFlightが優秀 TestFlightで本番/テスト環境をそれぞれ配布したい 本番/テスト環境を把握できるテクニックを紹介 SwiftUIで実装しているがUIKitでも適用可能 1) TestFlight概要 iOS/iPad…
端的にいうと SwiftUI100行チャレンジ エピソード7。TextFieldの使用例。 1) TextField概要 SwiftUIから提供されているプレーンな文字入力ウィジット。UIKit(iOS SDKのテキスト入力フィールド)のUITextField…
2021年3月26日に行われた札幌iPhone開発勉強会でのプレゼンテーション資料。 SwiftUIのTextFieldについてサンプルコードと解説Blogを投稿しようとした際に、@定義(State, Environment, AppStorage…
SwiftUIを使用したアプリ開発を始めるにあたって参考になる記事を見つけたので紹介する。 SwiftUI State Management Fundamentals | by Mykola Harmash | Medium SwiftUIはUI構築のタイミングと具体的な処理をレンダラーと呼ばれるUI…
アプリ情報永続化(UserDefaults)について古典コラム。内容としては最初期の開発者向けだが、iOSアプリ開発の紆余曲折を知るにも良いかもしれない。 1) UserDefaultsを使用する@AppStorage SwiftUIで@AppStorageという@定義が用意されている。WWDC2020で発表されたSwiftUI…
端的にいうと ベクターツールなのにソースコードを生成するPaintCodeとSwiftUIでの利用方法についての記事。SwiftUIのShapeでPaintCodeを活用する方法。 1) Pathを使うのが辛い SwiftUI TutorialsはApple謹製のSwiftUIチュートリアルでありSwiftUI…
端的にいうと SwiftUI100行チャレンジ エピソード6。アプリ情報の永続化とUIの手軽さが魅力のSettings.BundleとSwiftUIとの組み合わせサンプル。SwiftUIからアプリ開発に取り組み始めた開発にとってはTipsとして機能するかもしれない。 2020/3/1 @AppStore…
骨格同士が関節に接合して動く表現をSwiftUIで実現する。対象者SwiftUIでの表現方法について知識を深めたいiPhoneアプリ開発者向け。チュートリアルからアイデアを得ているのでSwiftUIで何ができるのか興味を持っている開発者にも適している。 サンプルの動かし方を説明したのち、可動表現についての解説とSwiftUI…
バッテリー状態表示アプリを2020年にiOS14から追加されたWidget機能にに対応した際に参考にしたサイトについて参照回数とコメントをつけて紹介する。 参照回数はSafariのタブブラウザで開いたままになっていたページを1カウントとしている。 サイト 参照回数 【iOS14】Widget(WidgetKit…
2021年1月27に行われた札幌iPhone開発勉強会でのプレゼンテーション資料。 multiplatform…
SwiftUI100行チャレンジシリーズ-エピソード4。 公開されているFlutterのウィジット(UIパーツ)の挙動をSwiftUIで再現していく。SwiftUIの構成手順についての理解を深める。最初に再現するUIパーツの紹介をした後、サンプルコードを示した後、アニメーションの再現方法、View…
SwiftUI100行チャレンジシリーズ-エピソード3。 公開されているFlutterのウィジット(UIパーツ)の挙動をSwiftUIで再現していく。SwiftUIの構成手順についての理解を深める。最初に再現するUIパーツの紹介をした後、サンプルコードを示した後、UI…
以前投稿したブログにてApple謹製のアーカイブ機能フレームワークAppleArchiveの性能について比較する旨の内容を記述していた。本ブログはアーカイブ処理を介してApple M1チップとIntel チップのCPU性能を比較する。 Apple Archive - Apple…
SwiftUIは簡潔にUIを記述できる。100行内にUI付きのサンプルを記述できるのではないかという思いつきで100行(未満)でUI付きサンプルコードを記述できるのではないか?という発想で初めてみる。サンプルソースコードはGitGistで10…
端的に云うと CoreData有効のテンプレートは初手コード修正(Xcode12.2対応版)。SiwftUIベースのアプリを作ろうとしたところ白画面が出てきた場合はCoreData有効チェックを疑ってみる。 1) CoreData CoreData…
SwiftUIの学習程度を把握するのに便利な記事を見つけたので紹介。 On the road to learn SwiftUI. I have created this SwiftUI Developer… | by Karin Prater | Nov, 2020 | Medium リンク先のBlog…
iOS14のウィジットの設定ダイアログを出すためにCustom Intentを使う機会を得たのでその際に遭遇した大小様々なトラブルと対処方法についてのメモ。 Custom Intentでのボイラープレートコードを排除すべくintentdefinition…
端的にいうと iOS14.2現在、WidgetKitでは表示できるフォントサイズに制約がある。43pointより大きいサイズのフォントをText表示に使うとフォントが表示されない。 前提 SwiftUIとWidgetKitを使ってiOS…
SwiftUI のApp/Sceneのカスタマイズが必要となる機能一覧とサンプルコード。 1) 概要 WWDC2020で喧伝されたSwiftUI App/Scene Multiplatformに対応したアプリライフサイクルコードを簡潔にに記述できるという触れ込みであったが、実際はPlatform…
2020年9月の勉強会資料。アプリのライフサイクルにSwiftUI Appを選べるようになり、SwiftUI App/Scene は簡潔にアプリライフサイクルを記述できるようになった。 WWDC2020で散々アピールされたけれども実際にはどうなの?を明らかにするプレゼンテーション資料。 内容としては過去のBlog…
Xcode12でMultiplatform の選択肢がGameだけになった(Xcode betaにはApp,DocumentAppが存在)点についてのメモ。 AppleのフォーラムではXcode12.2 betaではMultiplatformにApp,DocumentApp を選べるとのこと。 Apple…
以前のBlog投稿でSwiftUIでもiOS/iPadのAppDelegate/SceneDelegateは有効という内容を書いている。 イベントを捕捉するという話の続きとしてSwiftUIでStatusBarのスタイル変更機能が整理されている点について記述する。 端的に言うと StatusBar…
プロジェクトのLife CycleをUIKit App DelegateからSwiftUI Appへ移行するシンプルな作業に隠された。アプリの複雑さはどこに押し込められたのかという話。 note: 内容はSwiftUI への移行を迫ることを意図したものではなく移行時の注意点について記述した読み物。SwiftUI…
画面などのサイズ情報のヒントはUIを構築する上で重要なヒントとなる。プラットフォームに依存したUI構築用フレームワークごとにサイズ情報が提供されていた。 マルチプラットフォームでのUI構築用フレームワークとしてSwiftUIはプラットフォームに依存せずにサイズ情報を取得するサポートが用意されている。 SwiftUI…
iOS13 SDKでビルドしたアプリをiOS14 対応する際にメモ。Apple Silicon対応で例年にはないトラブルが発生中、SwiftUI プレビューはHot Reloadではないという話。 Xcode12 beta6 にてFirebase iOS SDKを組み込んだプロジェクトでSwiftUI Preview…
Xode12 beta5ドキュメントアプリをビルドすると新規ドキュメントを開始できない状態になっている。次のXcode12、iOS14 SDKでは修正される可能性があるもAppleの修正を待っていてもドキュメントアプリ開発は進まないので回避方法についてのメモ。 追記 2020/8/26 Xcode12 beta6およびiOS…
SwiftUI はドキュメントベースアプリに力を入れておりSwiftUI 1st major releaseの2019年からドラッグ&ドロップの処理に積極的だったのでドキュメントベースに力を入れていることは明らかだった。 SwiftUI 2st major releaseの202…
SwiftUIの腰が重たいアプリ開発者へのお怒り。SwiftUIの素振り待ったなし。 a) 勉強会について iPhoneDevSapの勉強会が2020年7月末に開催(各月奇数開催、オンライン開催2回目)、発表者3名の1人を担当した。 WWDC2020でインパクト大の内容だったSwiftUIの進化がそのまま発表に反映、発表…
私はカナダ人で、メートル法を使っています。
WidgetKitについてでの発言。 I'm Canadian and we use metric. WidgetKitの説明中でWidget内容のカスタマイズ例にメートル法に言及する必要があるのはアメリカがインチ/ヤードを使っているためというのが日本だとピンとこない点で味わいがある。
5年前の自分に一つ言えるとしたら、UIプログラミングは大変だということです。
Introduction to SwiftUIでの発言。 If I could tell myself from five years ago one thing about my job, it would be that UI programming is hard. Apple社内の人がUI…
2020年7月の勉強会資料。SwiftUI 2nd major releaseで追加された@StateObject @UIApplidationDelegateAdapter についてのプレゼンテーション資料。 内容としてはSwiftUI はUIの種類が増えた、SwiftIU…
SwiftUI 2nd major release で追加された@StateObject の機能を確認するためのXcodeカタログワークスペース。比較対象としてSwiftUI 1st major releaseで用意された@ObservedObject を用意し、オブジェクトの寿命の違いを確認する。 notoroid…
SwiftUI2 を始めるにあたっての理屈を構築するための読み物。これまでのiOSアプリ開発者を対象。SwiftUI からiOSアプリをはじめる人にもSwiftUI の学習コストがこれまでに比べて低いと思える内容かもしれない。 1) SwiftUI2 SwiftUI 2は、SwiftUI 1からのアップデートとしてSwiftUI…
SwiftUI からアプリ開発始めた方を想定した@UIApplicationDelegateAdapter を題材とした読み物。 1) SwiftUIとそれ以外の世界 SwiftUIは宣言的にAppleのOS上で動作するUIを記述できるフレームワークで、Webプログラミングにおける記述したコードをWeb…
2020年はSwiftUI 第2のメジャーリリースの年。AppleがUIに関する方針を大転換するのが目に見えたことにより多くのiOS開発者が今年から着手しているご様子。WWDC2020発表をSwiftUI 2とするとWWDC2019で発表されたのはSwiftUI 1と仮に命名し、a) SwiftUI 1とSwiftUI…
SwiftUIのセッションの内容を確認し、SwiftUI 1のプロジェクトのビルドを試しています。 Podcast 向けにSwiftUIについて話す機会を得たので、話す内容を簡潔にまとめてみます。 1) SwiftUI単体でアプリを構成できるように SwiftUIの最初のリリースでは画面の一部をSwiftUI…
2020年6月に開催されたWWDC2020では、SwiftUI セカンドシーズンに伴ってSwiftUI が1に比べて大化けしました。 公開に伴って大量のセッションがWeb及びAppleDveeloper…
2020年5月の勉強会資料。当初目標に達成するまで10ヶ月も経過し1ヶ月後にはWWDC2020だよねという趣向のプレゼン資料。 内容としてはwatchOS上で動作するアプリを実装するにあたりSwiftUIを活用することでUI周りのコストは最小限に抑えられたがwatchOS…
2020年1月の札幌iPhone開発勉強会での発表した資料。 SwiftUI を知るには、Combine Frameworkと、KeyPath の理解が必要不可欠ということについてプレゼンした際の資料。Combine Frameworkは宣言的に処理を記述するためのフレームワークであり、KeyPathはSwift…
充電報告さんは2019年に公開した最新アプリです(2020年現在)。iPad,AppleWatch対応。 オリジナルアプリをSwiftUI で再構築し直したアプリです。2019年のSwiftUI 発表後にSwiftUI を評価するための手段として既存アプリをどの程度再現できるかを試み。不確定だったSwiftUI…
2019年の札幌iPhone勉強会で使用したプレゼンテーション資料です。 当時のSwiftUI は初期バージョンの中でも初期のものでAPIがコロコロ変わっていた時期。当然動作確認中に落ちることは想定範囲内であえてライブコーディングを行なった資料となります。