タグ

iOSに関するichi_Sのブックマーク (26)

  • Kiwi+CocoaPodsで始めるiOSアプリの振る舞いテスト入門

    Kiwi+CocoaPodsで始めるiOSアプリの振る舞いテスト入門:iOSアプリ開発でもCI/継続的デリバリしようぜ(2)(1/4 ページ) 現代の開発現場において欠かせないCI/継続的デリバリを、iOSアプリ開発に適用するためのツールやノウハウを解説する連載。今回は、iOSアプリの機能の振る舞いをテストするテスティングフレームワークの特長とインストールの仕方、主な使い方を解説します。 前回の「iOSアプリ開発でCI/継続的デリバリ環境を始めるための4種の神器」では、CI/継続的デリバリ環境を構築するために必要なツール・サービスを紹介しました。 今回はiOSアプリのためのテスティングフレームワークの1つである「Kiwi(キウィ)」を使った振る舞いテストの書き方について解説します。 振る舞いをテストするテスティングフレームワーク「Kiwi」とは KiwiはiOSアプリケーションの機能の振る

    Kiwi+CocoaPodsで始めるiOSアプリの振る舞いテスト入門
  • weinre - Home

    http://groups.google.com/group/weinre (for weinre usage) More information on weinre's big brothers, Web Inspector / Google Chrome Developer Tools, is available at Google's Chrome Dev Tools pages and Apple's Web Inspector pages. If you aren't familiar with FireBug or Web Inspector, weinre isn't going to make too much sense to you. weinre reuses the user interface code from the Web Inspector project

  • 真のWebプログラマー向け RubyMotion フレームワーク

    RubyMotionを使い、Rubyで書いたWebアプリケーションフレームワークを作り、iPhone上でWebアプリケーションと UIWebView を動かしてみました

    真のWebプログラマー向け RubyMotion フレームワーク
  • Reveal - naoyaのはてなダイアリー

    Reveal (http://revealapp.com/) なる iOS 向けのランタイムインスペクタなるものを知人のツイート経由で見つけた。ランタイムインスペクタとは何か ・・・ "Reveal brings the power of tools like Firebug and Web Inspector to iOS developers." ということでiOS アプリ用の Firebug みたいなのだと思えば良い。 動画を観てると確かにすごい。3D で動かしながら View の階層を手繰ってアプリのビューがどういう構造になっているかを見ていくことができる。更に動的にパラメータを変更して大きさや動きを変える、なんて Firebug の css の編集みたいなこともできるようだ。ベータ版は無料のようだ。 これは捗る。 RubyMotion で動かす ドキュメントを見てみたところ Re

    Reveal - naoyaのはてなダイアリー
  • Mixing Objective-C and Ruby

    I've written a lot about RubyMotion, but one aspect I haven't touched on is how you can mix-and-match Objective-C and Ruby. That means you can use Objective-C code in RubyMotion projects and use Ruby code in traditional Objective-C apps. That sounds like black-magic, so let's walk through some quick examples. Objective-C in Ruby Most iOS developers have a deep backlog of existing code, and porting

  • iPhoneの月額課金で直面するマニュアルにないルール

    この記事は、iPhoneのアプリ内課金(In-App-Purchases)を使った、月額課金システムを実装した時の恐怖体験についてです。 ※更新※ 最近、App Store Review Guidelinesが変更されていて、新聞とか雑誌以外でも自動継続課金(Auto-renewable)のルールがちょろっと更新されたみたい。 iPhoneの自動継続の月額課金がサービス系のアプリでも使えるようになったか しかし、実際のところ、どんなアプリがOKかはあいまいな部分もあるとは思うし、やってみないとわからなかったりするので、SaaS系で承認された人いましたらぜひコメント欄とかで教えてくれると嬉しいです。 ちなみに、アップストアのレビュー通ってもリリース時期を遅らせたらストアには公開されないので、レビュー通るかよくわからない時は、凄くシンプルな実装でとりあえずレビュー通るかまずサブミットして様子み

    iPhoneの月額課金で直面するマニュアルにないルール
  • iOSコーディングスタイルを変えてしまうBlocksKitの紹介 - 中継地点

    iOS4からBlockが導入されました。利用目的としてはDelegateパターンと大差ないと思っていますが、処理記述が呼び出し元で記述できることで可読性が高くなります。 また、コールバック時に利用されるperformedSelectorが非常に使いづらく複数の引数となった場合などを考慮してNSDictionaryで定義したりInvocationを使う必要がったりと面倒な点が多々ありました。 今回は、CoreFoundationにカテゴリで組み込まれたBlockを活用したBlocksKitフレームワークを紹介したいと思います。かなり便利なため、今後のコーディングスタイルを変えてしまうほどのインパクトがあると個人的には思っています。 BlocksKit https://github.com/zwaldowski/BlocksKit BlocksKitはBSD, MITライセンスの元で利用可能で

    iOSコーディングスタイルを変えてしまうBlocksKitの紹介 - 中継地点
  • 便利なマクロ・カテゴリ・ライブラリまとめ - Qiita

    お断り 情報が古いです。更新の予定はありません 未だにストックされる方がいらっしゃいますが、古い情報です。ご自身で最新情報を確認してください。 一部はPopperToolsとしてライブラリを公開しています 以下古い内容 iOSアプリの開発にはjavascript/HTML5/CSSRubyなど様々な言語が利用可能ですが、漢ならやっぱりObjective-Cネイティブでしょ! Objective-CはCの完全上位互換なので、Cで使える技の数々はもちろん利用可能です。 加えて動的にメソッドを追加できるカテゴリや、プロトコルorデリゲートなど便利な機能がたくさんあるので、ガンガン使って行きましょう! 以下私が普段使っているマクロ・カテゴリ・ライブラリをまとめます。 一部過去の投稿を焼き直したものですがどうかご容赦を>< /* デバッグログ用マクロ。 NSLog()の使いすぎは明らかなパフォーマ

    便利なマクロ・カテゴリ・ライブラリまとめ - Qiita
  • NSBlockOperationで手軽にキャンセル処理 - Qiita

    GCD便利ですね。手軽にネストした非同期処理を書けるので、使いまくっています。しかし一直線にコードを書いていると見過ごしがちなのが、キャンセル処理です。時間のかかる処理を途中で止める場合や、別のUIViewControllerに遷移するから処理そのものが必要なくなった場合に、処理を止めたい場合があります。具体的には以下の様なケースがあると思います。 大きなファイルのアップロード中にキャンセルボタンを出したい 画面遷移をしたら、前の画面で進行中の画像ダウンロードはキャンセルしたい このような場合にGCDライクに使えて、しかもキャンセル処理ができのが組み込みクラスのNSBlockOperationです。早速使い方を見て行きましょう。weakのおかげでややこしいメモリ管理を考えなくて楽です。 -(void)heavyTask { if (!_queue) _queue = [[NSOperati

    NSBlockOperationで手軽にキャンセル処理 - Qiita
  • iOSアプリ開発に役立つTips100連発! - Qiita

    1年半ほどコツコツと書きためてきた iOS アプリ開発 / Objective-C 関連の Tips をカテゴリ別にまとめてみました。 数が多いので、オススメのものを太字にしてあります。 (更新情報 2012.8.11)ちゃんと数えてみたら88個しかなかったので、20個ほど追加しました。 (追記 2013.10.1) 記事をきっかけに秀和システム社よりお声がけいただき、書籍を執筆 させていただきました。iOS開発に役立つTips集です。ぜひ下記ページより 目次を見ていただき、興味のある項目がありそうであれば ご購入いただけるととても嬉しいです。 『iOSアプリ開発 達人のレシピ100』というを書きました ライブラリ/フレームワーク ゲームアプリ向け UI コンポーネントセット "UIKitForGame" ゲームアプリをつくる際に便利な UIKit のカテゴリ/サブクラスの詰め合わせラ

    iOSアプリ開発に役立つTips100連発! - Qiita
  • Objective-CでDeferredライブラリを作ってみた - Qiita

    どうもこんにちは。8/27担当のsaitenです。 XCode4.4から新たに新リテラルが使えるようになったりして、Objective-CがどんどんLL化してるなーと思う昨今です。 さて、今回はObjective-Cで書かれたDeferredの実装がぱっと見で見当たらなかったので作ってみました。 Deferredって何 概念的なところはこの辺りを参照。実装的にはDeferredオブジェクトは未完了、完了、失敗のいずれかの状態を持っていて、完了もしくは未完了の状態になると、予め登録しておいたコールバックに対して状態が変わったことを通知する仕組みを持っているといった感じです。 jQuery等でも実装されていて、javascriptな方面では割りとメジャーなんじゃないかと勝手に思っています。 使い方 例えば、こんな感じでHTTPリクエストを行うメソッドがあったとして、 - (void)reque

    Objective-CでDeferredライブラリを作ってみた - Qiita
  • Proxy サーバを用意して HTTP 通信をテストしよう - Watson's Blog

    この記事は RubyMotion Advent Calendar 2012 の 4 日目の記事です。 以前「RubyMotion もくもく会」で HTTP 通信のテストはどうすれば良いのだろうかという話題でモックを用意するのですかねと話が収束したのですが、面倒だし極力アプリに手を加えたくないなぁと一人もやもやしておりました。 Proxy サーバを用意すれば比較的簡単にテストできるんじゃないかと思い、ブログに書いてみました。 きっかけは 何を検索していてたどり着いたのかは忘れましたが、http://ja.favstar.fm/users/Psychs/status/3507370903 というツイートを見かけ、 さすが @Psychs 先生。神!と思った次第です。iOS シミュレータなど Cocoa API を使ったアプリの HTTP 通信は簡単に Proxy を経由するように設定できるわけ

    Proxy サーバを用意して HTTP 通信をテストしよう - Watson's Blog
  • UIWebViewでFirebugみたいなツールを使う | Prototype

    iWebinspectorは素晴らしいのですが、どちらかと言えばWeb開発向けです。 UIWebViewを見たいですよね。 iOS5でなければいけませんが、やり方がありました。今度はiWebinspectorも入りません。 (参考:Nathan de Vries Enabling Remote Debugging via Private APIs in Mobile Safari) UIWebViewを使ってるアプリのAppDelegate の application:didFinishLaunchingWithOptions: で 以下のコードを追加します。 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { // 非公

  • CodeSign error: code signing is required for product type ‘Application’ in SDK ‘iOS 6.0’ にハマる

    自作アプリをアップデート修正している最中、いつものように実機書き出ししようとしたら、突然「CodeSign error: code signing is required for product type ‘Application’ in SDK ‘iOS 6.0’ 」というエラーが出て書き出しできなくなりました。 「焦らず先ずはググる」のポリシーでそのままググったところ、以下のサイトで参考になる情報がありました。 ・もとまか日記:開発向け(仮) ・寺子屋サルでき でも、自分の事態を正確に把握せず、ネットにある情報に頼りきって解決しようとして2日間ほどハマることになりました。 結論から言うと、Code Signingの設定の「考え方」が分かっていないだけでした。 単純に、TARGETS>Build Settings>Code SigningのReleaseで、アプリ申請時のRelease用

    CodeSign error: code signing is required for product type ‘Application’ in SDK ‘iOS 6.0’ にハマる
  • Pushover: Simple Notifications for Android, iPhone, iPad, and Desktop

    Pushover makes it easy to get real-time notifications on your Android, iPhone, iPad, and Desktop (Android Wear and Apple Watch, too!) Powered by Pushover With our Android, iPhone & iPad, and Desktop Browser clients, you can receive unlimited push notifications on all of your devices from dozens of websites, services, and applications that already integrate with Pushover. Just supply your Pushover

  • iOSアプリ開発者が知らないと損するライブラリ7選 - Paradigm Shift Design

    こういうキャッチーな*1タイトル付けてみたかった! tottepostの開発中に役に立ったライブラリを7つ列挙します。 かなりジャンルバラバラですが紹介&メモって事で許してください。全部tottepostで使ってます。 1, SVProgressHUD UIActivityIndicatorViewって出したり消したりするのにインスタンスの管理が面倒で、見た目も微妙ですよね。 SVProgressHUD*2は、扱いが簡単でカッコいいUIActivityIndicatorViewです。 http://f.cl.ly/items/231Y2A0t0t1J0B0r3N0p/svprogresshud3.png:image:w600 リポジトリは、samvermette/SVProgressHUD · GitHub。ライセンスはMIT。 作者のSamさんの記事はSVProgressHUD。 2,

    iOSアプリ開発者が知らないと損するライブラリ7選 - Paradigm Shift Design
  • [memo]UDID/UUID/UIIDなどとiOS6の新IDの違い - tanamonの稀に良く書く日記

    UなんとかIDみたいなのがいっぱいあって区別がつかないので少し整理してみた。 なんとかIDの種類。 UDID(Unique Device IDentifier) (たぶん)Apple用語。 iOS端末の製造時に割り当てられる固有の識別コードで、値の変更はできない。 端末IDや端末固定IDと呼ばれるものと同じ。 iOS5からアプリからの取得が非推奨になった。 UUID(Universally Unique IDentifier) RFC 4122で定義されている。 生成の度に値が変わり、理論上重複することがない。 実装的にはGUID(Globally Unique IDentifier)が有名。 iOS6からNSUUIDクラスを使って簡単に生成できるようになった。 UIID(Unique Installation IDentifier) インストールごとに変わるという性質を持ったUUID

    [memo]UDID/UUID/UIIDなどとiOS6の新IDの違い - tanamonの稀に良く書く日記
  • アプリをiPhone5に対応する場合の地雷ポイント一覧 | fladdict

    地雷キャッチャーとして定評のあるfladdictですが、今回も大量の地雷を踏み歩いております。 とりあえず、解決方法を知らないとハマるポイントを色々とピックアップ。自分では直ったけど一般化できてない現象もあるので、間違い勘違い等ありましたら、コメント欄でビシバシご指摘ください。 iPhone5対応すると、iOS4.3以前では動かなくなる 最新のXCodeがarmv6のコンパイルをしてくれないので、ご臨終となります。 公式じゃないほうほうで無理矢理バイナリをビルドすればhogehoge。 サードの静的ライブラリが入ってると、コンパイルできない場合が 最新XCodeからコンパイルに、armv7sという新アーキテクチャが必須となってますが、ビルド済み静的ライブラリにはむろん入っていないのでコンパイルできません。対策は2つあって、ひとつは対応ライブラリが出るまでリリースを見送ること、もう片方はXC

  • るびま

    『るびま』は、Ruby に関する技術記事はもちろんのこと、Rubyist へのインタビューやエッセイ、その他をお届けするウェブ雑誌です。 Rubyist Magazine について 『Rubyist Magazine』、略して『るびま』は、日 Ruby の会の有志による Rubyist の Rubyist による、Rubyist とそうでない人のためのウェブ雑誌です。 最新号 Rubyist Magazine 0058 号 バックナンバー Rubyist Magazine 0058 号 RubyKaigi 2018 直前特集号 Rubyist Magazine 0057 号 RubyKaigi 2017 直前特集号 Rubyist Magazine 0056 号 Rubyist Magazine 0055 号 Rubyist Magazine 0054 号 東京 Ruby 会議 11 直

  • シンプルで簡単に HTTP 通信が出来るライブラリを公開しました - A Day In The Life

    iOS で HTTP 通信をするときはいつも ASIHTTPRequest を使っていました。 しかし残念なことに最近 ASIHTTPRequest の開発が終了してしまい Automatic Reference Counting(ARC) に対応する予定もないようなので自分で ARC に対応した HTTP 通信のライブラリを作成しました。 コードは github で公開しています。ライセンスはBSDライセンスです。 R9HTTPRequest 中身はただの NSURLConnection のラッパーです。コード量も少なく軽いライブラリです。 主な機能は以下の通りです。 HTTP GET POST PUT DELETE など HTTP の非同期通信 ※現在非同期通信のみサポートしています。 マルチパート POST(画像送信など) 自動リダイレクトのオン/オフ WSSE 認証のサポート R9

    シンプルで簡単に HTTP 通信が出来るライブラリを公開しました - A Day In The Life