iOS
SwiftとObjective-C混在のプロジェクトで、CI上でBridingHeaderのビルドが低頻度で失敗する現象に悩まされていました。(失敗した場合もRebuildすると成功します) 常に失敗するのではなく低頻度で失敗するケースの場合、Headerのimport周りが怪しいことが多…
最近アプリの容量が増えてきたので、容量を減らすべく画像の最適化を行いました。 調べて出てくる情報がどれも古かったため、今だとどうしたらいいかを書いておきます。 以下の情報はXcode 7.2.1環境を想定しています。 概要 Asset Catalog を使う ASSETCATA…
現在、私はObjective-Cで書かれたメインプロダクトを少しずつSwiftに書き換えている最中です。*1 おそらく奮闘中の皆さんのためにも、私が得た知見をお話ししようと思います。 なぜメインプロダクトのSwift移行が進まないのか これは、単純にメインプロダク…
年末に「iOS 7をサポート対象外にしよう!」ということを勧めていたのですが、 blog.shoby.jp この度無事に自分の関わるプロジェクトでiOS 7をサポート対象外にすることに成功しました。 無事にiOS 7を切れたのでめでたい https://t.co/KdLGDXnW6o— shoby (…
概要 apple-app-site-associationを署名したファイルではなく、JSON形式のAPIにする JLRoutesを使ってWebPageURLをCustomURLと合わせてハンドリングする apple-app-site-associationを署名したファイルではなく、JSON形式のAPIにする iOS 9以降の場合、HTTPS…
第24回 potatotipsで、「 iOS 7をサポート対象外にして開発を健全化する」というタイトルで発表しました。 こちらの発表には、業界全体で、最先端の技術を追い求められる健全な開発環境を当たり前にしたいという思いを込めています。 最近は、Swiftがオープ…
住所入力をさせる際に、郵便番号から住所を補完したいことはよくあると思いますが、アプリでそれを実装しようと思うと少し面倒です。 しかし、iOSだけであれば、CLGeocoderを使うと、自前で郵便番号変換用のAPIを作らなくても済みます。 また、現在地を取得…
iOS 8からいろいろ変わってて、知ってた知識が使えなくなってたのでメモ。 概要 プロジェクト設定からBackgroundModes>Location updatesを有効にする Info.plistに位置情報の使用目的を書く CLLocationManagerを初期化 locationManagerのrequestAlwaysAutho…
iOSアプリで全文検索 iOSアプリで日本語の全文検索したいこと、ありますよね。私はあります。 そもそもiOSアプリ内で日本語の全文検索をするという需要がないみたいで、情報が少なかったのでまとめました。 SQLiteの全文検索拡張 実はSQLiteにはFTS3 and FTS…
iOSアプリで巨大な巨大なzipファイルを扱おうとして困ったことありませんか? 巨大なzipファイルを扱おうとすると、主に以下のような問題が発生します。 巨大なzipファイルの問題点 サイズが大きすぎてメモリ上に展開できない 展開に時間が掛かる 展開後にス…