タグ

iphoneに関するkirikirisのブックマーク (327)

  • iOS データ保管ガイドラインの変更と Adobe AIR への影響 - akihiro kamijo

    Apple の新しい iOS 5.0.1 ガイドラインでは、データ保管に関するガイドラインが変更されました。新しいガイドラインについてはこちらに説明があります。 (閲覧には開発者登録が必要です) それに伴い、AIR の一部の機能の利用が制限されます。アドビのフォーラムに投稿されたポストによれば、この制限によりアプリが却下されると、以下のようなメッセージが届くそうです。 Rejection: 2.23 Apps must follow the iOS Data Storage Guidelines or they will be rejected 具体的には、以下の条件を満たす必要があるとのことです。 (正確な情報は、上のアップルサイトへのリンク先を参照してください) ユーザが生成した情報、またはアプリだけでは生成できない情報のみ /Documents ディレクトリ以下に保存し、自動的に i

  • NSURLConnectionの同期通信でタイムアウトを設定したい(2)|TechRacho by BPS株式会社

    前回の問題ですが、自己解決しました。 解決方法 今のメソッドを抜けずに現在のスレッドに溜まっている処理を処理するには、NSRunLoopのrunを使えば良いということでした。 つまり、 [[NSRunLoop currentRunLoop]run]; とやれば、NSURLConnectionによって呼ばれるconnectionなどが実行されます。 ただし、runは無限ループになって永久に処理し続ける(処理がなければ待っている)ので、別スレッドで実行して、目的を達成したらスレッドごと終了してしまう必要があります。 そこで、別スレッドでNSURLConnectionのconnectionWithRequestを実行し、そのスレッド内でNSRunLoopのrunを実行します。 そして、親スレッドでwhileループで監視しつつ、responseが返ってきたらスレッドを破棄すればOKです。 実際のコ

    NSURLConnectionの同期通信でタイムアウトを設定したい(2)|TechRacho by BPS株式会社
  • 『iPhoneアプリ開発、その(190) 削除するぜ!』

    その(175)から1ヶ月半、久しぶりの編。 とりあえず「サンプルプロジェクト:konohana_test14.zip」をダウンロードしてkonohana_test.xcodeprojをビルトじゃい! ってやったらエラーになりやがんのよ。 NewFlower.xcodeprojで追加したNewFlower/Classes/ImageKit.hとImageKit.mをkonohana_test.xcodeproj側に登録してなかったのね。 登録しましょう。 オッス、自分、ファイルの追加方法知りません、先輩!な人はプロジェクトに既存ファイルを追加するを読むべし! で、今回何をするかというとUITabelViewの基機能、項目削除ボタンの実装っす。 こいつは、項目を削除できるテーブルはサポートしてねとAppleが強く薦める機能で、項目をスワイプすると現れるようになっとるんですな。 こんな感じで

    『iPhoneアプリ開発、その(190) 削除するぜ!』
  • アプリケーションディレクトリの構造とアクセス方法 - プログラミングノート

    iOSではデータの保存場所として特定のディレクトリを利用することができます。 Best Albumではサムネイル画像、オリジナル画像を全てキャッシュディレクトリに保存しているのですが、パフォーマンス的に全く問題がなく、今後活用する機会も増えそうなのでまとめておきます。 ディレクトリ構造 /Documents アプリ固有のデータファイルを保存するディレクトリ (バックアップされる) /Library/Preferences アプリ固有の環境設定ファイルを保存するディレクトリ (バックアップされる) NSUserDefaults or CFPreferencesAPI経由で読み書きする /Library/Caches アプリ固有のサポートファイルを保存するディレクトリ (バックアップされない) /tmp 一時ファイルを保存するディレクトリ (バックアップされない) パスの取得 上記ディレクトリ

    アプリケーションディレクトリの構造とアクセス方法 - プログラミングノート
  • Xcode4にKissXMLを導入した | labo

    Xcode3→Xcode4になって、レイアウト変わりまくりで一苦労。 KissXMLを導入する機会があり、「他のリンカフラグ」 「ヘッダ検索パス」とかどこ行った?ということで作業メモ。 1.KissXMLをダウンロード GoogleCodeからでもSVNからでもお好きな方法でダウンロード。 [kissxml] http://code.google.com/p/kissxml/downloads/list [SVN] svn checkout http://kissxml.googlecode.com/svn/trunk/ kissxml-read-only 2.自分のプロジェクトにDDXMLグループの中身をコピー こんな感じ。 ドラッグ&ドロップでDDXMLグループごとコピーしようとしたら、ファイルしかコピーできなくていらっときた。 グループをひとつずつ開いて地道にコツコツと

  • 【iPhone】KissXMLで快適パース生活 | iphoneアプリで稼げるのか

    <?xml version="1.0"?> <feed xmlns:idx="urn:atom-extension:indexing" xmlns:gr="http://www.google.com/schemas/reader/atom/" xmlns:media="http://search.yahoo.com/mrss/" xmlns="http://www.w3.org/2005/Atom" idx:index="no"> <!-- Content-type: Preventing XSRF in IE. --> <generator uri="http://www.google.com/reader">Google Reader</generator> <id>tag:google.com,2005:reader/user/10689165820831989733/state/c

  • iPhoneの非同期処理がわかりやすいサイトまとめ - iPhoneアプリ開発者の為のAndroidアプリ開発のポイント(現忘備録)

    非同期処理がわかりやすいサイトまとめ NSOperationを試してみた - ちくわプログラマにっき http://d.hatena.ne.jp/craccho/20100711/1278837199 iOS4時代の非同期HTTP通信 - すぎゃーんメモ 非同期通信で画像をロードする方法について - プログラミングノート UIImageをサーバ経由で取得する方法 | コノルブログ A-Liaison BLOG: CS193P 11日目 非同期処理をやってみる iPhone OS4 における非同期処理の挙動変更にまつわる試行錯誤 - 個人的メモ 番外編 iPhoneアプリ開発、その(126) ドラクエだって作れるんだぜ | テン*シー*シー

    iPhoneの非同期処理がわかりやすいサイトまとめ - iPhoneアプリ開発者の為のAndroidアプリ開発のポイント(現忘備録)
  • オブジェクトの状態をファイルに保存・復元する。(シリアライズ・デシリアライズ) - 24/7 twenty-four seven

    参考サイト iPhone Tutorial - Archivers, unarchivers, and serialization on Vimeo Cocoaフレームワークには、もともとオブジェクトをシリアライズするための仕組みが用意されているので簡単です。 NSCodingプロトコルで定義されているメソッドを実装すれば、オブジェクトがシリアライズ可能になります。 例えば、下のような設定画面の値を保存するときに便利です。 設定の保存にはもうひとつ、NSUserDefaultsを使う方法もあります。 しかし、設定画面がiPhoneの「設定」のところになってしまい、設定項目に気づかないことがあったり、設定を変更するためにはアプリケーションを終了しなければならないなど、不便なので私は使いません。 手順 シリアライズされるクラスにNSCodingプロトコルのメソッドを実装する。 NSKeyedA

    オブジェクトの状態をファイルに保存・復元する。(シリアライズ・デシリアライズ) - 24/7 twenty-four seven
  • http://www.oomori.com/

  • UINavigationController | iPhoneメモ

    go to post UINavigationControllerは、画面遷移を実装するのに、便利で良く使うのですが、 どんどんviewControllerインスタンスをプッシュしていくと、 その分メモリがべられる(と勝手に思っている…)。 じゃぁ、遷移先のviewControllerインスタンスを作成表示した後に、 遷移元のviewControllerを解放してやれば良いじゃないかと思ったら、 ここに、その様な記事+コードが載っていた。 で、使ってみたら上手くいったのですが、 viewControllerがNSTimerを使用している場合、 解放する前に、invalidateを読んであげないとダメなところに対応していなかったので、 自前で実装しました。 クラスを特に作成したわけじゃなくて、 UINavigationControllerの使い方を工夫したのみです

  • iPhone 4S 時代の定番 iPhone アプリ60+

    *最新の記事はこちらをどうぞ。(2014年秋現在) iPhone 6 ホーム画面とオススメ iPhone アプリ 60+ (2014年秋まとめ) | トブ iPhone 当に使える厳選 iPhoneアプリ 60以上を紹介 初心者の iPhone ユーザーの方にオススメしたいアプリたちを選んでみました。便利で役立つアプリばかりだと思います。(最終更新日 2011年11月25日) *内容は記事掲載時のものです。iTunesで必ず確認お願いします。

    iPhone 4S 時代の定番 iPhone アプリ60+
  • 戦うプログラマーの開発日記 iOS5でUDIDが取得できなくなってしまうらしい件について

    iPhone5が発売されるのを心待ちにしている中、iOS5の情報を確認していると、とんでもない情報がでてきました。 どうやら、UDIDがiOS5から取得できなくなってしまうというのです。 参考:TechCrunch →この情報は「iOS5 UDID」とかで検索するといろんな情報が出てきます。 UDIDを利用している開発者には当に痛いニュースです。 僕はもう立ち直れない気持ちになってました。 ログイン画面を作成して、UDIDを使うのはやめなさいと言う事なのでしょう。 とはいえ、昨今の開発事情はめまぐるしく開発工数もできるだけ短縮したいというのが現実。 UDIDの代案として、早々に端末情報を識別する為のライブラリが発表されていた。 UIDevice-with-UniqueIdentifier-for-iOS-5 MACアドレスをMD5でハッシュ化するだけのライブラリ ちなみに使い方は非常に簡

  • UIActivityIndicatorView - Saturn's blog - s21g

    長いジョブを実行中に UIActivityIndicatorView を表示したい場合。UIActivityIndicatorView は一旦 currentRunLoop に戻らないと表示されないので、以下のようにジョブをくくっても表示されない。 1  UIActivityIndicatorView* wAI = [ [ [ UIActivityIndicatorView alloc ] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhiteLarge ] autorelease ]; 2  [ [ UIApplication sharedApplication ].keyWindow addSubview:wAI ]; 3  wAI.center = CGPointMake( 160, 240 ); 4  [ w

  • 非同期で画像をロードするUIImageView - 西海岸より

    多くのWeb画像をUIImageViewで表示する時に、読み込み中はインジケータアニメーションを表示し、画像ダウンロード完了後に画像を表示するというものがほしかったので作成。(一般には既出かと) 以下のような、UIImageのImageWithURLでは、同期で画像をWebから取得しようとするため、その間画面はフリーズしたように見えてしまう。 UIImageView *imageView = [[UIImageView alloc] initWithImage: [UIImage imageWithData: [NSData dataWithContentsOfURL:url]]]; ソース 使い方としては、URLを指定して初期化し、読み込みをキックしてやると自動で非同期に画像を取得し、表示してくれるUIImageViewで、コードは以下の通り。 LazyImageView.h #impo

    非同期で画像をロードするUIImageView - 西海岸より
  • 画像の非同期ロード - L’Isle joyeuse

    前回の内容とも関わるのですが、UITableViewCellの画像をWEBからロードする場合も、スクロールが非常に重くなることがあります。 前回同様、配列を使って回避できるかなと思ったのですが、うまく表示させることができませんでした。(もし方法があればご教示頂けると幸いです!) そこで、画像は非同期通信でロードし、ロードできたものから順次表示されるようにしました。 環境 iPhoneSDK 3.1.3 方法はこちらのページを参考にさせて頂きました。 非同期通信で画像をロードする方法について - プログラミングノート 大まかな流れとしては、UIImageViewを継承したクラスを作成し、そのクラスに画像データのロードを行わせ、cell.imageViewにaddSubviewする形となります。 ただ、私の環境で試したところ、addSubviewだけでは表示されなかった(cell.imageV

    画像の非同期ロード - L’Isle joyeuse
  • NSOperation を使って外部 API から非同期に結果を取得してみる

    iPhone / iPad のアプリを作っていると、頻繁に登場するのが「外部 API を HTTP 経由で実行して結果を XML / JSON で取得し、それを解析してモデルクラスに変換してデータ構造に突っ込む」パターンです。当然たくさんの先人の皆様がすでに効率的なライブラリを作成されているのですが、あえて私も車輪の再発明に挑戦してみました。今回使用したのは NSOperation クラスです。 NSURLConnection クラスとデリゲートを使うだけでも簡単に非同期通信を実現することができるのですが、さらに NSOperation クラスと NSOperationQueue を使うことでさらにタスク間の依存関係を簡単に設定できたり、タスクの並列度を簡単に制御したりできそうなので、挑戦してみました。 2010/12/29追加: 発展版をASIHTTPRequestを使って作成してみまし

  • CS193P 11日目 非同期処理をやってみる

    非同期処理を行う方法はいくつかある URLフェッチ処理ならば、NSURLConnectionクラスをつかっておけば一発 さらに簡単にURLフェッチ処理を行いたいのであればこのライブラリをおすすめ URLフェッチ以外の処理を行うならば、NSThreadを使うか、NSOperationとNSOperationQueueを併用する NSThreadは従来どおり、当にスレッド処理を記述する必要があるため非常に大変 対するNSOperationはインスタンスをつくってキューにぶち込んだら後は勝手にやってくれる、楽 UIViewやUIViewControllerに対する処理(要するに画面に対する処理)は、必ずメインスレッドから呼び出す必要がある スレッドセーフではないため 要するに[object performSelectorOnMainThread:withObject:waitUntilDone

    CS193P 11日目 非同期処理をやってみる
  • Xcode のコンパイラを Apple LLVM に変えてみる

    Xcode3 から Xcode4 に乗り換えていろいろプロジェクト設定を調整していた時に、選択できるコンパイラーがいくつかあるのが気になりました。 "GCC" といえば Linux でお馴染みのコンパイラですけど、それとあわせて Xcode では "LLVM GCC" と "Apple LLVM compiler" というものも選択できるようになっています。 これらについて少し調べてみたところ、なにやら GCC と比べて Apple LLVM compiler の方が、同じコードでもビルドしたバイナリの実行速度が速くなったり、コンパイルの速度が速くなったり、コンパイル時のエラー情報も判りやすく出力してくれるとのことでした。 ちなみに "LLVM GCC" というのは、構文解析を GCC で行うことで、互換性を高めようとしているもののようです。 なかなか良さそうな感じだったので、試しにこれま

  • 非同期通信で画像をロードする方法について - プログラミングノート

    UITableViewなどのスクロール系のViewでサムネイル画像を出す場合、下記のような記述ではメインスレッドで画像がロードされるため、ユーザーのUI操作に影響が出てしまいます。 NSURL *url = [NSURL URLWithString:@"URL"]; NSData *data = [NSData dataWithContentsOfURL:url]; [instanceOfUIImageView setImage:[[UIImage alloc] initWithData:data]]; こういう場合は非同期通信を行うのが定石だと思いますが、参考になるサンプルがあまり無かったので試しに作ってみました。UIImageViewを継承したUIAsyncImageViewクラスです。 UIAsyncImageView.h 画像URLの指定と、通信中止用のメソッドのみ定義しています。

    非同期通信で画像をロードする方法について - プログラミングノート
  • Xcode 4.2で変わったビルド設定(アーキテクチャとコンパイラ)と問題点などについて - Awaresoft

    iOS 5の正式リリースと共に、iOS 5 SDKを含むXcode 4.2の正式版がリリースされました。Xcode 4.2ではビルド関係で4.1から大きく変わったところがいくつかあってかなり手間取ったので、調べたことをまとめておきます。 Xcode4.2のArchitectures設定 Xcodeプロジェクトの設定で、ArchitecturesのところがXcode4.1.2までは"armv6 armv7"となっていたのが、Xcode 4.2からは、 のように、"Standard (armv7) - $(ARCHS_STANDARD_32_BIT)"などとなっていて、armv6が外されています。 このままビルドすると、Deployment TargetにiOS4.3以前を指定している場合に問題が発生するようです。 iOS4.3以前をサポートする場合は、 のように、armv6も追加しておく必要