Xcode6の新規プロジェクトでクラス名にプレフィックスを付ける

標題の件、以下の通り。

  • 左側のProject Navigatorでプロジェクトを選択
  • 右側のFile InspectorのProject Documentの中にあるClass Prefixに付けたいプリフィクスを書く
  • ハッピー

shenzenでdeploygateにアップロードするとタイムアウトする

TravisCIで自動で社内にiOSアプリを配信したい時、nomad-clishenzenを使ってCLIでdeploygateにアップロードすると便利だと以前書いた

ipa distribute:deploygate --api_token 00000000000000000 --user_name hoge_fuga --message 'YourMessage'

ただ、いつの間にか以下のメッセージが出てアップロードできなくなってしまった。

Timed out while uploading build. Check https://deploygate.com/ to see if the upload was completed.

色々試したんだけどshenzenを使うのが面倒になってきたので、公式サイトのDeploygate API/Push APIのドキュメントに書いてある方法でアップロードした。

curl -F "file=@AppName.apk" -F "token=00000000000000000" -F "message=YourMessage" https://deploygate.com/api/users/hoge_fuga/apps

TravisCIでiOSアプリのipaファイルを作って実機に配信する時に便利だったもの

TravisCIを使ってCI(継続的インテグレーション)の環境を構築しようとしたけれど、ググっても手順がやや複雑で環境構築が大変そうに見えた。色々自動化できないか探してみると、iOS開発に大変便利なツール群が見つかった。それらを使って環境構築すると、イイ感じに構築できたのでメモ。

続きを読む TravisCIでiOSアプリのipaファイルを作って実機に配信する時に便利だったもの

TravisCIでObjective-Cの時にCocoapodsのバージョンが違うとコンパイルが通らない件

Travis CIを使ってObjective-Cのプロジェクトをコンパイルする時、TravisCI側のCocoapodsのバージョンが0.34.0なんだけどプロジェクトのCocoapodsは0.35.0でコンパイルに失敗していたので、いい感じにできるようにしておいた。ついでに、諸々の処理をRakefileに書き出した。

続きを読む TravisCIでObjective-Cの時にCocoapodsのバージョンが違うとコンパイルが通らない件

Xcode6で’XCTest/XCTest.h’ file not foundというエラーが起きる

テストではないターゲットの中でテスト用のクラスをコンパイルしようとしてないか?

XcodeでプロジェクトファイルのBuild Phasesの中からアプリ用のTARGETSを選択、Compile Sourcesの中にテストのクラスが混入してないか確認する。

TTTAttributedLabel has no color at Link URL.

https://github.com/mattt/TTTAttributedLabel

If you have TTTAttributedLabel no color at Link URL, you should set userInteractionEnabled to YES

TTTAttributedLabelのリンク色が変わらない時は、TTTAttribtuedLabel#userInteractionEnabledをYESにすると色が出る。userInteractionEnabledがNOの場合でもクリックには反応するので、少し分かりづらいと思った。

Xcode6でiOS5のアプリを開発する

初代iPadの有効活用方法は何かないかなぁと困っていたのだけれど、自分で有効活用するアプリを作ればいいと気づいた。Xcode6でiOS5のアプリを開発するには、以下のWebページが参考になる。

Xcode5でiOS5.1対応のアプリを作る – Qiita

ただし、Xcode6の場合は2.のARCHS_STANDARD_32_BIT$(ARCHS_STANDARD_32_BIT)にすると上手くいく。

Objective-Cの@(1200)を1.2Kに変換するライブラリをつくった

NSNumber(Integer)の値をキロとかメガとかの文字列を付加していい感じのNSStringに変換してくれるCocoapodsライブラリをつくりました。

以下のように、左の数値を右のフォーマットに変えます。

  • 0 -> 0
  • 987 -> 987
  • 1200 -> 1.2K
  • 100834923 -> 101M
  • 10500000000 -> 10.5B
  • 1230000000000 -> 1.23T
  • -10200 -> -10.2K

https://github.com/akiroom/AXMetricPrefixFormatter

pod "AXMetricPrefixFormatter"

podspecにs.dependencyを設定したらエラー

iOS6/iOS7に対応しているCocoapodsのライブラリを作ろうと思って、以下のような感じでs.dependencyにAFNetworkingを追加したところ、ARCまわりでコケているような感じのコンパイルエラーが出てしまった。

Pod::Spec.new do |s|
  s.name             = "NantokaSDK"
  s.version          = "0.0.1"
  s.summary          = "A short description of NantokaSDK."
  s.dependency 'AFNetworking'
end

エラーの内容は”Property with 'retain (or strong)' attribute must be of object type“というもの。

続きを読む podspecにs.dependencyを設定したらエラー