iOSでアプリを開発中に実機での動作確認は不可欠です。AdHocで配布し『iTunes』や『iPhone構成ユーティリティ』などを使って実機にインストールするのが普通と思います。 AdHocアプリの配布&インストール方法にOTA(Over The Air)がある事を知りやってみたらとても便利でした。
TestFlightのSDKが便利すぎるので共有します。クラッシュレポートもとれるし、NSLog(TFLog)で表示した内容が、TestFlightのWebページで見れちゃいます。しかも、ほぼリアルタイムです!なんとー!! TestFlight SDKのダウンロード なにはともわれ、TestFlightのSDKのダウンロードをしましょう。こちら。 ダウンロードしたフォルダの中の「libTestFlight.a」と「TestFlight.h」をプロジェクトに突っ込みます。 そして、libz.dylibが必要なので、frameworkを追加するいつもの方法で、追加します。 チームトークンの取得 チームトークンはわかりにくい場所にあります。 ここからの・・・・ これをメモメモφ(`д´)メモメモ… コードを修正する XcodeのSupportingファイルの中に、プロジェクト名-Prefix.h
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
Best Albumの開発でもっとも苦しめられたと言っても過言ではないのがExif操作。iOS4以降で自由にいじれるようになったとはいえ、あまりまとまった資料がなくて大変だったのでこれから作る人のために。(iOS4.2で動作確認をしています) ライブラリ ここでは下記のフレームワークを利用します。 #import <AssetsLibrary/AssetsLibrary.h> #import <ImageIO/ImageIO.h> フォトライブラリへの保存 ImagePickerControllerで撮影を行ってから保存する場合、通常の方法ではExif情報が保存されません。Exifを保存したい場合はiOS4.1から追加されたAssetsLibraryのメソッドを利用します。 まずはカメラ(or フォトライブラリ)の起動 UIImagePickerController *imgPicker
実装 実装してみよう。まずカスタムビューを定義しておく。 @interface CustomView : UIView { UIColor* color; } @end 初期化時にランダムもどきな色を決めてその色で塗りつぶす。 @implementation CustomView - (id)initWithFrame:(CGRect)frame { if ((self = [super initWithFrame:frame])) { // Initialization code CGFloat red = (rand()%255) / 255.0; CGFloat green = (rand()%255) / 255.0; CGFloat blue = (rand()%255) / 255.0; color = [UIColor colorWithRed:red green:green
新しいiMac買いました。メモリも安いので買いました。 でも雪豹のまま使うことにしますw さて、UIScrollViewは便利で良く使っています。 UIScrollView.pagingEnabled = YESにすれば、ページ毎にきちっとスナップしてスクロールしてくれます。でも、画面サイズ(W:320px)より小さい要素、例えば画像(W:150px)などをページングするところでハマりました。iPhoneのサファリのタブのようにしたいのです。 ポイントは、ページングはframeのサイズではなくてboundsのサイズということ。 それと、scroll.clipsToBounds = NOにすること。NOにしないと、1枚しか見えない。 なるほど! 例えば、横は150pxの画像とマージンを取ったサイズを1ページとした場合。 UIScrollView *scroll = [[UIScrollVie
iOS6やiPhone5への対応、XCode4.5使用に伴う、問題点とその解決方法、基本事項をまとめてみました。 10/14 新規項目 UITextFieldに1件追加しました。 9/26 PM2:45 頃 画像処理関連 に画像が保存できない場合の対処法の記事を 1件追加しました。 9/26 AM11:55 頃 必要画像周りの基本事項 にスクリーンショット関連記事を 1件追加しました。 9/25 新規項目 XCode4.5のプロジェクト設定 に1件、解決策まとめ系記事 にHTML5関連記事を1件、画面回転関連に2件、計4件記事を追加しました。 必要画像周りの基本事項 iTunes Connect申請用の画像解像度
Copyright (C) iPhoneアプリ開発備忘録 All rights reserved. ブログ内で記したコード、内容の正確性は保証いたしません。 記載内容を実装したことにより発生した不具合・損害等の責任は一切負いません。 解像度が1,136 x 640ピクセルになった、iPhone5の画面への対応手順。 1. 画像 1136 x 640pixelsで画像を作成する。 (1) Splash Screen Default-568h@2x.png (2) その他 xxxx-568h@2x.png ポイント: "@2x"の前に文字列"-568h"を付ける。 "@2x"は、640x960pixelsのhigh-resolusion(Retina Display)を示すが、4インチのiPhone5用の画像ファイル名には、"-568h"を付ける。568は、mainScreenのフレームサイズ
August 21, 2010 Autosize(1)〜Autosizing 『はじめてのiPhoneプログラミング』の次のお題は、オートローテーション(Autorotation)とオートサイジング(Autosizing)です。 デバイスの向きに合わせてビューを回転させると同時に、アスペクト比の変化に伴うオブジェクトパーツのレイアウトやサイズを調整するものです。 本書では三通りの方法が紹介されており、 1)Interface BuilderのInspectorウィンドウのSizeタブにある『Autosizing』の設定 2)コード記述によるオブジェクトパーツの手動調整 3)ポートレート/ランドスケープの各ビューの切り替え となっています。 今回は1のAutosizingによる設定を説明します。 ●プロジェクトの作成 View-based Applicationテンプレートで、プロジェクト名
Objective-CCoreData使った処理とかのテストを書きたい訳です。ある程度CoreData使ってなんとなく雰囲気理解できてる人向けに書いてます。下準備アプリに使われてるdbそのまま使うみたいな方法もあるけど、tearDownで掃除するとか面倒くさいし、モックみたいなの作れればいいんだけどなー的な。方法としてはアプリに使うデータモデルだけ引き抜いてきてメモリにManagedObjectContextを作ってみた。何回も同じの書くのはめんどくさいので、ベースにするクラス作っておけばいいと思う。 #import @interface CoreDataBaseTest : SenTestCase { NSManagedObjectContext *_managedObjectContext; NSManagedObjectModel *_managedObjectModel; NSP
UI AutomationはJavaScriptで記述されたプログラムでUIの自動テストを行うものです。 JavaScriptの記述 例えばこの様に記述します。 UIALogger.logStart("Starting Test"); UIALogger.logDebug("--logElementTree()"); UIATarget.localTarget().frontMostApp().logElementTree(); UIALogger.logDebug("--mainWindow().logElement()"); UIATarget.localTarget().frontMostApp().mainWindow().logElement(); var view = UIATarget.localTarget().frontMostApp().mainWindow(); va
Instruments の UI Recorder という機能を使って、iPhone シュミレータでの UI テストを自動化するというチュートリアルが紹介されていました。 iCodeBlog ? Blog Archive ? Debugging Tutorial ? Automating Your Tests With A UIRecorder Instrument UI Recorder は知らなかったので早速試してみたところなかなか興味深かったので紹介したいと思います。 Webアプリケーションのテストツールである Selenium に近い感じのものです。ユニットテストではなく UI のテストに近いです。 準備 システム環境設定の「ユニバーサルアクセス」で下から2番目にある「補助装置にアクセスできるようにする」というチェックボックスのチェックが入っていることを確認してください。 これがチ
タイムスタンプなどの用途に、 UNIX 時間( UNIX エポック[=1970年1月1日0時0分0秒]からの経過秒数)のミリ秒版 ( = UNIX エポックを起点としたシステム時間(システム時刻)をミリ秒で表現した値) を取得する方法です。 例えば Java では System.currentTimeMillis() といったメソッドでさくっと取得できるのですが、Objective-C ではいくつか注意点があります: 時刻取得関数 CFAbsoluteTimeGetCurrent() は2001年1月1日を起点としています CFAbsoluteTimeGetCurrent() は整数部分を秒とした小数値( CFAbsoluteTime 型 = double 型)を返します 1970年1月1日から2001年1月1日までの経過時間の値が定数 kCFAbsoluteTimeIntervalSin
__FILE__の例 コード NSLog(@"__FILE__: %s", __FILE__);結果 __FILE__: /Users/hashi/Development/ IOS-Sample-Code/XcodeMacro/Classes/ViewController.m __LINE__の例 コード NSLog(@"__LINE__: %d", __LINE__);結果 __LINE__: 44 __FUNCTION__の例 クラスメソッド内コード + (void)ClassFooMethodWith:(NSString*)arg1 and:(NSString*)arg2 { NSLog(@"__FUNCTION__: %s", __FUNCTION__); }結果 __FUNCTION__: +[ViewController ClassFooMethodWith:and:] インス
iPhoneアプリ開発してて、遅延実行が必要になったので色々調べてたんですが、そこでperformSelectorなるメソッドを見つけたんですが、みなさん小難しい言葉で書いておられ、 第二引数(withObject)って何?とか結構悩んだので(読解力の無さは置いといて)、私なりに簡単にまとめときます。 iPhoneアプリ作ってると、何かちょっとこの動作遅らせて実行したいってときがあるかもしれません。たとえば、1秒後に今表示している画像をフェードアウトさせたいとか。 こんな時に思いつくのがNSTimerなんですが、performSelectorを使うともう少しシンプルに実装できます。 こんな感じ。 [self performSelector:@selector(methodHoge:) withObject:nil afterDelay:0.1]; これだと、「methodHoge」を0.1
UIViewController を継承してカスタマイズしたクラスを作り、内部ではUIScrollViewのdelegate(UIScrollViewDelegate)も兼ねている。 delegate の通知と、UIViewControllerのメソッドの呼び出し順番のメモ。 == 起動 == 2010-05-14 02:24:52.788 SVCTest[9154:207] -[KSScrollViewController loadView] 2010-05-14 02:24:52.794 SVCTest[9154:207] -[KSScrollViewController viewWillAppear:] 2010-05-14 02:24:52.839 SVCTest[9154:207] -[KSScrollViewController viewDidAppear:] == 起動終了
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く