2019年に買ってよかったもの・やめたものをつらつらと。 ガジェット/趣味 ノートPCスタンド バーナー オフィスチェア(エルゴヒューマンプロ) AirPods Pro Pixel3a 衣 大きめのハンガー 50色ソックス(ユニクロ) 革靴 食 スパイス(シード/パウダー) 住 家 滑り…
TL; DR MacのカスタムショートカットにiPhone SimulatorのPasteboard管理をバインディングすると便利だったのでメモりました。 そもそも、クリップボードと言う名称かと思っていましたが、ペーストボードが正しいようですね。pbcopyコマンドもありますし。 …
Appleのセキュリティ周りのステータスコードでnumberとエラーが紐づかないのでメモ In addition to the codes listed here, certain Security framework services provide additional status codes that are specific to that service. In particular, see A…
学び ファクトとは一体なんなのかを知る。ファクトとはデータとそれを比較・加工して、場面に応じて柔軟に相対的/絶対的に捉えること。1次情報とまではいかないが、加工されていないデータと切り口は宝。切り口の多さ=スコープの多さ 人は事実や事象に対して…
adventar.org この記事はCyberAgent Developers Advent Calendar 2018の12/14の記事です。 今回はタイトルの通り、AppStore Connectのステータスを通知する仕組みを実装していきます。 TR;DR Amason AWSを使いました。 AppStore Connect -> SES -> SNS -> La…
「二癖くらいある画面収録からの生放送」というタイトルで発表してきました! 内容としてはiOS11から可能になった画面収録をBroadcast Upload ExtensionというReplayKitを用いたキャプチャ機構から生放送する機能を実装した時の話です。 iOSDCとは iosdc.jp …
TypeScriptは型をもっていてJSに変換できる言語みたいな感じでしょ?くらいの経験値しかないですが、Google App Scriptをスクリプトエディタでずっとやっていてつらみを感じたので、 ローカル開発環境を作りつつ、TypeScriptに手を出してみようと思いました…
やりたいこと アトラス化(1つの画像に複数がまとまられていること)されている画像をいい感じにスライダー上に表示させたい。 具体的にはYouTubeのシークバーとサムネイルみたいなことをしたい。 できたもの やったこと アトラス化されている画像は下記のよう…
potatotipsとは iOS/Android合わせて10数名が持ち時間5分の中でそれぞれのTipsを話す会です。 今回は第50回目(継続されててすごい!)の開催で、私はiOSブログまとめ枠として参加して来ました。今回初参加です! potatotips.connpass.com ケータリングにもポテ…
Nintendo Switchのゲーム音とPCやスマホの音を同時に聴くには? Splatoon2やってますか?私はリーグ戦やプライベートマッチをよく楽しんでいます! その時に必ずと言って使うのがDiscord。いわゆるボイスチャットです。 皆さんはボイスチャットをしながら、…
ReplayKitのRPBroadcastSampleHandlerでは1フレームの情報をCMSampleBufferとして受け取り、それを自由に扱うことができます。 今回はCMSampleBufferから方向を取得してみたいと思います。 結論からいうと下記でできます。 internal extension CMSampleBuffe…
シナリオ テキスト入力をもつTableViewCellがある 画面には更新ボタンがあり、押した時に、キーボードを閉じたい 結論ソース ※諸々省略してます // UITableViewCellにcellForRowAtIndexまでにunbindさせるための情報を定義する extension Reactive where Bas…
とりあえず、2017年買ったものの総評を書いていこうと思う。 あくまで個人的な感想です。 買ったもの SITPACK 婚約指輪/結婚指輪 ゲーミングチェア 自作PC ケース マザボ 電源 CPU CPUクーラー GPU メモリ キャプチャボード モニターアーム キーボード マウ…
これはSwiftアドベントカレンダーの17日目の記事です。 Swiftの方はプラットフォームに依存しないエントリーを書くべきかと思いましたが、 FastlaneのSwift対応がタイムリーだったのでこっちにしました。 元はSwiftでTCPソケット通信を書こうと思ってたので…
これはiOSアドベントカレンダーの10日目の記事です。 私にとって今年は、iOSエンジニアに転向した年でした。 それまではAndroid。 そして、携わっているプロジェクトのSwift化(未完)だったりiPhoneX対応だったりと劇的な半年でした。 ほぼゼロから始めたので…
デスクトップがスクショの嵐・・・! こんなデスクトップになった経験はないでしょうか。 スクリーンショットの保存先はデスクトップなので、スクショを撮ってるうちにいつの間にかデスクトップがスクショで埋め尽くされることがあります。 精神衛生上よくな…
blog.matsuokah.jp ↑の記事は、Lottieを使ってアニメーションの再生をするところを実装しました。 実はハンバーガーアイコンのアニメーションには大きな余白が含まれていて このまま使うとアイコン自体が非常に小さい表示になってしまっていました。 という…
Lottieとは Airbnb謹製のアニメーションツールでAfterEffectsでexportしたアニメーションをiOS、Androidで再生できるというすぐれものです。 上記のGIFはlottie-iosより転載 僕自身はこういうアニメーションはあまり好きではないのですが、 味気なさがなくな…
アクションシートってよくつかわれるんですかね? 私が携わっているプロジェクトではそこそこ使われています。 コレです アクションシートの基本的な使い方 let actionSheet = UIAlertController(title:"Title", message: "Message", preferredStyle: .actio…
Swift4でDecodableつかってますか〜? 公式にサポートしてもらえると本当にありがたいですよね。 しかしながら汎用的なパースをしようとすると若干、コードが冗長になります Apple Developer Documentation 公式ドキュメントによると、カスタムなデコードの…
TL; DR Swift4でDecodableを使いつつ、 フレキシブルなAPIレスポンスの設計をしていったら結局APIクライアント書いてたという話。 その設計・実装の流れを綴りました。 長くて読みきれないっていう場合はソースコード読んでもらったほうがいいと思います。 g…
原文はこちら Swift4ではDictionaryがより便利に使えるようになっているということで サンプルを見ていく Grouping Values By a Key Swift3系では グループ機能がなく、かなりの手順を要していた // Swift <= 3.1 var grouped: [GroceryItem.Department: [Gr…
前提 qiita.com Registrable型に則ればあとは型推論によるextensionの実装で済ませようというアプローチです キャストが失敗したら?だったり、各型のIdentifierを取得する手間をextensionに閉じ込めることができるので、 シーケンスに集中することができる…
blog.matsuokah.jp こちらのエントリーでExtensionPropertyをExtensionとしてつけるだけでassociated objectにアクセスしやすくするというエントリーを書きました しかしながら、この記事にはバグがありました。 それは getProperty が必ずnilになってしまい…
UserDefaultsって便利ですよね。 基本的にはユーザーのアプリ内の設定値保存に使うことを主としていますが、 キルされても保持したいけど、アンインストール→インストールでは消されてもいい。DBを作るまでもないといった 値の軽いキャッシュとして利用した…
もっといいタイトル無いだろうか・・・笑 利用用途 UIViewControllerのviewをページとしてUIScrollViewにマウントしておいて、スワイプで切り替えて使うみたいな想定です。 UIScrollViewでページャーのviewDidAppearみたいなライフサイクルがあれば表示され…
SwiftでExtensionに追加するプロパティの黒魔術感が異常。 クラス全体には関係ないけど、特定のextension内に閉じ込めたいpropertyが欲しくなることがあると思います。 しかし、Swiftではextensionローカルなプロパティを持とうとするとobjc_getAssociatedOb…
github.com Alamofireといえば、言わずと知れたSwift界のHTTPクライアント。名前の由来はテキサスの花の名前らしいすね。 今回はAlamofireのリクエストパラメータをenumで扱うという話。 大前提。Stringは脆い! Stringはすべての表現を兼ね備える万能な型で…
まえがき 6月からAndroidエンジニアからiOSエンジニアになり、Objective-CをSwift化するプロジェクトをやっている。 iOSはiOS5,6時代に開発した経験はあるがSwiftは0からということで、最近色々記事を読んでいた。Swiftいいですね。僕は好きです。 その中でW…
この記事はCyberAgent Developers Advent Calendar 2016の20日目の記事です。 www.adventar.org 19日目はstrskさんでGKEのノードプールを利用したKubernetesのアップグレードでした。 ちなみにstrskさんは元々飲食業界ではたらいていてCSで入社→今はAbemaTV…