開発
CarthageのキャッシュをS3で共有できる「Rome」がxcframeworksに対応して帰ってきた!!この記事はiOS Advent Calendar 2021の12日目の記事です。 Romeとは? はじめに Carthage/Build ディレクトリを zip でまとめて Bitrise でダウンロードしていたが…… Ro…
備忘録として書き残しておく。気が向いたら書き直すかもしれない。 SwiftUIのListで下図のような画面を実装している。 縦スクロールと横スクロールの混ざったリストは珍しくないが、この画面の厄介なところは横スクロールでも別途APIを叩いてデータを取得す…
R.swiftはプロジェクトに追加しているリソースをハードコーディングせず管理できるライブラリだ。2021/11/19、R.swiftがv6.0にアップデートされた。 プロジェクトをビルドすると以下のワーニングが出るようになったので対応した。 warning: [R.swift] For up…
Carthageで「OneSignal-iOS-SDK v3.9.0」をインストールすると、arm64シミュレータ向けのビルド時にリンクエラーが発生してしまう。iOSシミュレータでデバッグ実行できなくなってしまった。 この問題は2021/11/17にv3.9.1がリリースされたことで解決した。リ…
iOS 14になってからTextFieldにフォーカスを当てると適切なポジションに自動でスクロールするようになった。iOS 13ではKeyboardObservingなどのライブラリを利用する必要があったので、標準機能として実装されたのはとても嬉しい。 その一方で、SwiftUIのLis…
先週M1 Macbook Pro*1が届いたので、試行錯誤して既存プロジェクトでRosettaを使わずにiOSシミュレータで起動させることができた。その後、1週間が経過したがiOSアプリ開発には特に問題なく使えることがわかった。 今週はM1 Macbook ProをAndroidアプリ開発…
M1チップ(Apple Silicon)搭載のMacBook Pro (16-inch, 2021)に移行した。社内の開発環境の足並みを合わせるため、すべてのアプリで Rosettaを使わずに実機およびiOSシミュレータでデバッグ実行できるようにしたかった。 使用しているライブラリやソースコー…
Swiftで配列を操作するのに ankurp/Dollar を使っている。 利用しているライブラリをxcframeworkに変更する一連の対応のなかで、DollarをCarthage経由でインストールするように変更したところ、出力したipaファイルをApp Store Connectへアップロードする段…
アプリからAPIを正しく実行できているのかどうかを検証するため「Charles(チャールズ)」を導入しました。 www.charlesproxy.com Charlesはデスクトップで動くプロキシツールで、リクエストを書き換えてサーバーに送ったり、ステータスコードが400で返ってき…
「アプリをリリースしているんだったらASO対策をした方が良い」と言われたので、今年の1月にASO対策をしてみた。ASOとは「Application Store Optimization」の頭文字をとった略称でアプリストア最適化のこと。いわゆるアプリストア版のSEOだ。 アプリストア…
2,3年くらい前にバックグラウンド・サービスで実装されていた位置情報取得処理をフォアグラウンド・サービスに移行(移植)したことがあった。 さくさん自身、位置情報取得の処理は1年に数回書いているような気がするが、いずれもアプリがフォアグラウンドにい…
Four CropperのAndroid版をゼロからスクラッチで作り直しました。一機能しかないアプリなので、フットワーク軽く作り直せるのが助かります。 過去にGoogle Playで公開しているアプリのGMS/Amazon/HMS対応を迫られたことがあって、たま〜に思い出しては調査し…
macOS Big Sur (11.3)にアップデートするとAndroid Studioのエミュレータが起動しなくなった。Android StudioのRunタブには以下のようなメッセージが表示されていた。 04/30 08:46:35: Launching 'app' on No Devices. Error while waiting for device: The …
実行しているデバイスがAmazonデバイスであるかどうか判定します。 Amazonデバイスかどうか判定する Amazonデバイスであるかどうかはデバイス名を確認する、または amazon.hardware.fire_tv 機能を持っているかどうかで判断することができます。 object Devi…
Androidアプリ内でRSA暗号の公開鍵と秘密鍵を作成して、公開鍵を使って生テキストを暗号化、秘密鍵を使って暗号テキストを復号化する方法を紹介する。 RSA暗号の公開鍵と秘密鍵を作成する RSAで鍵ペアを作成する。 package jp.ch3cooh.common.utility import…
つい先日App Storeに掲載しているスクリーンショットを更新したばかりですが「ASOをきちんとした方が良い」と言われた。ストアのスクショを更新しただけではASOをしたことにならないらしい。 ASOとは「Application Store Optimization」の頭文字をとった略称…
アプリ広告といえば AdMob ですね。Four Cropperでは画面のフッターに AdMob のバナー広告を表示させるシンプルな実装となっています。 Four CropperKENJI WADAユーティリティ無料 「Four Cropper」は大きな写真をTwitterに掲載するのに適切なアスペクト比に…
iOSアプリで画像をクリッピングすると言えば、利用するライブラリはほぼ TOCropViewController 一択です。 github.com TOCropViewControllerには Objective-C向けのTOCropViewController と Swift向けの CropViewController との両方のライブラリが混在して…
少し前に大きな写真を四分割してTwitterに投げる遊びが一時期流行っていました。 自分でも簡単に写真を適当なアスペクト比で分割して投稿できるアプリが「Four Cropper」です。なぜかフランスとイタリアでウケているのに驚きます。 FourCropper 写真を選ぶだ…
W-8BENの書き方は、三菱UFJ銀行の「カルフォルニアアカウント・プログラム 申込書 記入の手引き」がもっともわかりやすかった。 https://www.bk.mufg.jp/tsukau/kaigai/kouza/cali/pdf/caliaca_kinyuure.pdf
12月15日に Xcode 12.3 Release版がリリースされました。当日中にXcodeをアップデートして「iOSシミュレータの画面が黄色くなる不具合」など踏んでStack Overflowに初めての書き込みをしたことなど今となっては良い思い出です。 Bitriseとは 今年に入ってか…
今朝起きたらXcode 12.3が公開されていたので、Xcode 12.3をダウンロードして開発中のアプリが動くかどうか検証しようとしたところ、UIAlertControllerが真っ黄色になっていたので腰をぬかしました。すんげえエンバグしてもうたと慌てて原因を調査しました。…
この記事は、Bitrise Advent Calendar 2020の1日目の記事です。夕食を食べて帰ってきてアドベントカレンダーを覗いたところ、20時時点で誰もエントリーしていなかったので書くことにしました。 Bitriseとは 今年に入ってからこのブログでも、Bitriseを使って…
Google Spreadsheetに記入した内容をデータソースにして、curlでダウンロードしてデータを加工する処理をたくさん作っています。11月18日(水)の午前中にGoogle SpreadsheetからCSVファイルのダウンロードができない現象が発生していることに気が付きました。…
昨日、Firebase iOS SDKが v7.1.0 にアップデートされた。Bitriseでのビルド時間を最短にするためにFirebase iOS SDKもCarthage経由でインストールしている。 いくつかのプロジェクトでライブラリのアップデートを実行していったところ、とあるプロジェクト…
「BitriseでXcode12+Carthageを使ってiOSアプリをビルドしよう! - 酢ろぐ!」のエントリを書いてから、僕は開発中のプロジェクトをXcode 12+Carthage環境に戻しています。 Firebase関係をCarthage経由でインストールできるのでCIでのビルド時間が2〜3分短縮…
Xcode 12でCarthageが使えなくなって、CocoaPods + cocoapods-binary の構成に移行した方は多いのではないかと思います。僕もそのうちのひとりです。 CocoaPodsはCIサービスでリリースビルド(ipaファイルをエクスポート)する際には毎回フルビルドされます。…
Xcode 12になって悲しいことにCarthageが使えなくなりました。説明するまでもありませんが、CarthageはiOSアプリ開発の主要なパッケージマネージャーのひとつです。 開発を止められないお仕事アプリは即日ですべてCocoaPodsへ移行しました。CocoaPodsは導入…
Firebase for iOS SDKの正式な導入方法としては、CocoaPods経由でインストールすることになっています。 しかし、CarthageまたはSwiftPMでの導入方法はまだベータ版扱いですが導入手段が提供されています。Xcode 12 betaあたりまでは正常に動いていたような…
本ページは、以下のページへ移行しました。 products.ch3cooh.net