文字っぽいの。

文字を書いています。写真も混ざります。

カービィカフェ TOKYOに行ってきた。

f:id:FromAtom:20201102131619j:plain

ソラマチにあるカービィカフェ TOKYOに行ってきた。

店内の様子

店内に入ると、でっかいウィスピーウッズがいる。

f:id:FromAtom:20201102133610j:plain

ウィスピーウッズの根本には、所々にカービィの置物が設置されていて可愛かった。

f:id:FromAtom:20201102133622j:plainf:id:FromAtom:20201102143041j:plain

店内もおしゃれに可愛くカービィ要素で飾り付けてあって大変いい。

f:id:FromAtom:20201102144531j:plain

ちょこんとカービィがいる。

f:id:FromAtom:20201102142926j:plainf:id:FromAtom:20201102142933j:plain

完全予約制かつ飛び石連休の平日部分で行ったので、結構空いていた。

ご飯の様子

カービィバーガー&ミートパスタ 温野菜のせ』を食べた。こういったコラボカフェ系なご飯、スーベニア(お皿とかコースターとか)が主で食物は添え物になって味とか二の次なイメージだったけど、普通に美味しくて良かった。

f:id:FromAtom:20201102134121j:plain

パスタもアルデンテな感じだし、ハンバーガーのパティもペラペラしておらず「ハンバーグやん」って厚みで食べごたえがあった。

ワドルディがすやりしているオムライスも可愛い美味しかった。チーズの上にシートが載ってるタイプじゃないので、顔がフニャクチャにならなくて良い。

f:id:FromAtom:20201103172854j:plain

勢いでピザも頼んだ。このピザは生地がパリモチで、下手なデリバリーピザより格段に美味しい。おまけつきピザを頼むと、この木のプレートももらえるけど、家では使わなさそうだったのでやめておいた。

f:id:FromAtom:20201103172949j:plain

ドリンクたち。アートオレは滲んでしまうので、素早く写真を撮らないといけない。

f:id:FromAtom:20201102134048j:plainf:id:FromAtom:20201103180403j:plain

これも、カフェオレとして普通に美味しくてよかった。カービィカフェ第2章の時に、コーヒーがコンセプトだったのでその成果で美味しいのだと思う。

料理、すごい待たされるということもなく、普通の提供時間で出てくるし、追加注文も気軽にできてよかった。

グッズ

左下のお皿と右上のマグカップとコースターは、料理についてきたもの。

f:id:FromAtom:20201102191317j:plain

うっかり大量に散財してしまったけど、かわいいからいいや。

まとめ

ごはんも美味しかったし、グッズもいい感じのものが多くて満足した。超カービィファンというわけじゃないけれど、良いクリエイティブを見るとアガるので、良い体験ができた。

"dyld: Symbol not found: _OBJC_CLASS_$_RPSystemBroadcastPickerView" 対策

環境

  • Xcode 12.0.1
  • Apple Swift version 5.3 (swiftlang-1200.0.29.2 clang-1200.0.30.1)
  • iOS Deployment Target 12.0

状況

  • Deployment Targetを11.0から12.0にあげた
  • ビルドは通る
  • iOS 12系のシミュレータで起動するとアプリ起動時にクラッシュする
  • iOS 14系のシミュレータだと起動する
  • dyld: Symbol not found: _OBJC_CLASS_$_RPSystemBroadcastPickerView と表示される
  • RPSystemBroadcastPickerView はReplayKitに含まれるもの
  • RPSystemBroadcastPickerView を使っている箇所を全てコメントアウトするとクラッシュしない

対策

  • Generalタブを開く
  • Frameworks, Libraries, and Embedded ContentにReplayKitが無いなら追加する
    • Do No Embedにする
  • Build Phasesタブを開く
  • Link Binary With Librariesを開く
  • ReplayKitを "Optional" にする

Extensionもある場合は、同様の作業をExtension側でも行う。

SwiftPMでCrashlyticsを導入した場合のRun Script Phaseの書き方

環境

課題と解決

Firebase iOS SDKがSwiftPMにBeta対応しました。

このため、CrashlyticsをSwiftPMで導入することができるのですが、Crashlyticsの公式ドキュメントにあるように"Run Script Phase"で

${PODS_ROOT}/FirebaseCrashlytics/run

を実行する必要があります。しかし、このパス指定はCocoaPodsで導入した場合の書き方なので、SwiftPMでは使えません。

SwiftPMで導入した場合は、

${BUILD_DIR%Build/*}SourcePackages/checkouts/firebase-ios-sdk/Crashlytics/run

と書きます。

参考

github.com

iOSDC Japan 2020に原稿2本を書きながら登壇してきました。

iOS関連技術をコアのテーマとした技術者のためのカンファレンス iOSDC Japanに今年も参加しました!今年はオンライン開催ということで、例年とは異なるiOSDCを楽しむことができました。

パンフレット原稿

今年はいつもの『登壇』枠に加えて『パンフレット原稿』というCfPがありました。このパンフレット原稿は、採択され入稿すると参加者全員に届くiOSDCのパンフレット内に掲載されます。

ありがたいことに2つも採択されたので、ひぃひぃ言いながら執筆しました。参加者の皆さんに届いたパンフレット内に次の2つの原稿が載っております。

こちらの原稿ですが、iOSDCに参加してない方も読めるようにZennでBook化しました。書くのが大変だったので有料にしてあります。内容はほぼ一緒なので、iOSDCに参加した方はパンフレットをご覧ください。

zenn.dev zenn.dev

登壇

ありがたいことに今年も採択していただき、3年連続で登壇することができました。

事前収録という形だったため、カンファレンス開催日よりだいぶ前に資料が完成している必要があり、ひぃひぃ言いながら資料作成をしました。間に合ってよかった。

当日発表を聞きに来てくださった皆様ありがとうございました!

デザインスポンサー

弊社でデザインスポンサーをしました。今年のiOSDCの公式ロゴや公式サイトは弊社製になっています。自分はディレクターとして関わりました。

inside.pixiv.blog inside.pixiv.blog

カンファレンス本番でも動画などの様々なところで公式サイトの要素が使われており、いい感じで大変良かったです。

あとこれは知見ですが、デザインスポンサーをする際は「仕事のような仕事じゃないような開発をしてくれるエンジニアをアサインする」点が最も難しいです。iOSエンジニアやデザイナーが片手間でWebサイトを組む方法もありますが、iOSDCはエンジニアが集まる祭典です。下手なWebサイトを作ってしまうと、カンファレンスと会社の評判が落ちてしまうのは言うまでもありません。

「クオリティが低いと困るが自社の収益には全く関係ない」という特殊タスクなので、交渉力みたいなものがあるとやりやすいと思いました。それかCTOみたいなめっちゃ偉い人がGoを出すと動きやすいかもですね。

まとめ

原稿2本、計12ページの執筆が結構大変でした。それが終わったと思ったらすぐに登壇準備……。8月の記憶がありません。来年はのんびり参加しよう(去年も言ってた)。

初めてのオンライン開催でしたが、おうちでのんびり観れるのもなかなか便利で良かったです。ただ懇親会やスピーカーディナーなどが無いのは寂しいものですね。しかたないのですが。

それでは皆様、また来年のiOSDCでお会いしましょう。

ディスプレイの上につけられるライトを買った。

f:id:FromAtom:20200922161153p:plain

壁に向かって座る形で机があるので、シーリングライトの光を背負う形になってしまい、手元が暗くて困っていました。

あと、いろんなスタンドライトを調べてみたけど、クリップで留めるか机に置くかしかなくて、結構邪魔になりそうなので躊躇してたんですが、ちょうどいい感じに「これやん」って商品があったので買ってみました。

良かった点

  • 最大輝度にすると結構明るい
    • 明るいのに案外ディスプレイ全体が光り輝かない
    • 全く反射しないわけではない
    • アンチグレアタイプのディスプレイだからってのも大きそう
  • USB給電なので、ディスプレイ背面のUSBポートから給電できる
    • 机上に無駄な配線が発生しない
  • コンセントいらないのやっぱべんり
  • 色温度が5000k、4000k、2900kの3種類ある
    • 昼と夜で変えたり、仕事と遊びで変えたりできて便利

微妙だった点

  • ディスプレイ上部はやっぱり光る
    • 光源に近いから仕方ない
    • ディスプレイに一切反射せずってわけにはいかない
  • Webカメラが端においやられる
    • Webカメラのクリップによっては、このライト上にくっつけられるかも?

という感じ。思ったよりもちゃんと明るくなったので、満足しています。

iOS 14 正式版のリリース日発表で、iOSアプリ界隈がドタバタしてるわけ。

将来読み返して「そんなこともありましたねぇ」と思うために書き残しておきます。なお、記事中の日時は日本時間です。

2020年9月16日 2:00に開催されたAppleEventにて、iOS14のリリース日が2020年9月17日だと発表されました。突然の発表に戸惑い、時にはキレるエンジニアたち。どうしてでしょう。

iOS 14のGM版が出てねぇ

AppleEventの開始時点ではiOS 14のBeta版は以前から利用可能でしたが、GM版は出ていませんでした。

Beta版でのデバッグも可能ですがやはりBeta版ですので、不具合も発生します。この不具合がBeta版iOSのせいなのか、アプリのせいなのか判断をするのは難しいです。そのため、不具合報告をAppleにフィードバックを送ったりしてGM版の登場を待ちます。そして、GM版が公開されてから、再度がっつりと動作確認・デバッグすることが多いです。

iOS 13がリリースされたときは、GM版が2019年09月11日に公開され、正式リリースは2019年9月19日に行われました。1週間ちょっと動作確認やデバッグができました。

そのため、今回の発表でアプリエンジニアたちは「は?まだGM版も出てないのに明日正式リリース!?」と驚愕しました。しかし安心してください、イベントが終わった3時30分頃にはiOS 14 GMがパブリックベータテスター向けに配信開始されました。

なんにせよ寝耳に水なリリース日発表。多くの日本人アプリエンジニアたちは「もう今日は寝ないほうが良いのでは……?」と深夜3時*1に突然の死刑宣告を受けたわけです。

Xcode 12のGM版が出てねぇ

iOS 14に対応したアプリを作り審査に提出するには、Xcode12が必要です。Xcode 11でも審査提出は可能ですが、その場合「iOS 14で新しく増えた変更や機能」に対応することができません。iOS 14ではフォトライブラリのアクセス権限周りに大きな変更があり、未対応だとかなり体験が悪くなってしまいます。

この対応を行うには、Xcode12が必要になってきます。他にもApp Clipなど様々な新機能がXcode12でないと対応できません。

さて、そんなXcode 12ですがBeta版が続いており、iOS 14と同様にAppleEvent後にGM版が公開されました。おかげでアプリエンジニアたちは深夜3時に10GB前後あるXcodeのダウンロードに勤しむのでした。

Xcodeガチャ

さて、このXcode12 GMですが、面白いことに同一URLからDLしても異なるバージョンのXcodeが降ってきます。

正確にはバージョンは12.0なんですがビルドバージョンが異なっています。12A7208 がハズレで、12A7209 がアタリです。どうやったらアタリをひけるかですが完全に運です。配信サーバーへの反映待ちかキャッシュが原因だと言われており、時間が経てばアタリを引ける確率が高まっていきます。

もちろんアタリを引くまで10GBのDLを繰り返す必要があります。

[2020/09/17 17:08 追記]

誤解がないように補足しておきます。記事中にも書かれている通り、永続的にランダムなDLが発生するわけではありません。現在はさすがに反映が完了しているため、12A7209 がダウンロードされます。

[2020/09/17 17:08 追記おわり]

さいごに

iOSアプリを公開するためにはAppleによる審査が必要です。この審査にはだいたい6時間〜12時間ほどかかり、長い場合は数日待たされます。運がいいと1時間とかで通過します。もちろん審査を通過しない場合もあり、その場合はなにかしらの修正や対応が必要になります。

さて、iOS 14の正式版リリースまで、あと何時間ですかね。

みなさん頑張っていきましょう。

*1:イベント後半で話されたので、深夜3時になっています

Macの壁紙をいい感じのお猫様写真にして、定期的に自動変更させる。

f:id:FromAtom:20200911232737p:plain

あらかわいい〜〜〜。

インストールするもの

Unsplash Wallpapers

Unsplash Wallpapers

  • Unsplash Inc
  • Utilities
  • Free
apps.apple.com

設定方法

インストールして起動すると、メニューバーに表示されるのでクリック。お好みでチェックを入れます。

f:id:FromAtom:20200911233426p:plain

右上のタイルっぽいボタンをクリックして、「+」をクリック

f:id:FromAtom:20200911233517p:plain

そうするとこの画面になって、Unsplashのサイトに誘導されます。

f:id:FromAtom:20200911233602p:plain

自分で検索してコレクションを探しても良いですし、https://unsplash.com/collections/139386/cats を使っても良いです。ここで、検索結果ではなく「コレクションのURL」をコピーするのが大事です。

https://unsplash.com/collections/139386/cats などのURLをコピーしたら、もう一度メニューバーのUnsplashをクリックします。

うまくいくとこういう画面になるので、名前を決めて "Done" をクリック。

f:id:FromAtom:20200911233839p:plain

増やしたコレクションが増えているので、それにチェックを入れて"Set Themes"をクリックします。

f:id:FromAtom:20200911233913p:plain

おわり!これで定期的に壁紙のお猫様写真が切り替わるようになります!

備考

こっちのコレクションも良いです。

unsplash.com

URL: https://unsplash.com/collections/299/catitude