iPhoneの通信ログを簡単に取得する方法です。 まずPCとiPhoneをUSBケーブルで繋ぎます。 iOSデバイスのUDIDを確認します。(iTunesやXcodeで簡単に確認できます) iTerm2などのターミナルで以下のコマンドを叩きます
![iPhone(実機)の通信ログ(パケットのキャプチャ)を簡単に取得する方法 - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/f8a096cec3001edce619999de396ddf79f04973f/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9aVBob25lJTI4JUU1JUFFJTlGJUU2JUE5JTlGJTI5JUUzJTgxJUFFJUU5JTgwJTlBJUU0JUJGJUExJUUzJTgzJUFEJUUzJTgyJUIwJTI4JUUzJTgzJTkxJUUzJTgyJUIxJUUzJTgzJTgzJUUzJTgzJTg4JUUzJTgxJUFFJUUzJTgyJUFEJUUzJTgzJUEzJUUzJTgzJTk3JUUzJTgzJTgxJUUzJTgzJUEzJTI5JUUzJTgyJTkyJUU3JUIwJUExJUU1JThEJTk4JUUzJTgxJUFCJUU1JThGJTk2JUU1JUJFJTk3JUUzJTgxJTk5JUUzJTgyJThCJUU2JTk2JUI5JUU2JUIzJTk1JnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmdHh0LWNsaXA9ZWxsaXBzaXMmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz0yOGM4NTYyMTRlZjllNzVkZThhNGZjMTFmMDBjOGRhNQ%26mark-x%3D142%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwc2hpcm9jaGFuJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzYmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz1mZDRmMDlkN2JmZmRhYjVkNDVjNGJiYTVhMWM3YmI2OA%26blend-x%3D142%26blend-y%3D491%26blend-mode%3Dnormal%26s%3D0c50df3225741e0b6c9c65c4d0fddb95)
はじめに よりよいアプリをつくるためには、メモリ管理はとても重要です。 スマホはPCと違ってメモリ不足がとても起こりやすいので、メモリ管理への考慮が不十分だと OutOfMemory (メモリ不足によるエラー) がすぐに発生し、アプリが強制終了してしまいます。また、メモリ不足の状態のアプリはとてもパフォーマンスが悪く、ユーザーの思いがけない誤操作にもつながります。システム全体や他のアプリに影響を与えてしまうことも考えられます。 つまり実装はもちろん、画面遷移やレイアウトのデザイン、仕様などAndroidアプリ開発のすべてのプロセスにおいて 「メモリ消費を抑える」 という点を常に配慮する必要があります。 ということで、このシリーズではAndroidアプリにおけるメモリ管理の方法やツールの紹介、実装のコツなどのTipsを紹介していきたいと思います。 今回は第一回目ということで、アプリのメモリ使
先日来、Android アプリのデバッグ作業の必要に駆られ、あまり好きではない Eclipse さんと向き合っております。 くそう、Android なんて興味無いのに(暴言)。 …嘘です。ちょっと嫌いなだけです。ドロイド君のことは愛していますが、本名は “Bugdroid” ということを最近知ってショックを受けました。好きな食べ物は林檎とペンギンです。 で、ある Out of memory Error を調べるために、Eclipse に Memory Analyzer Tool(MAT) を導入した際の、メモ。 インストール 環境は Mac OSX 10.7.5 + Eclipse Juno、ADT は 22.0.1 です。 Eclipse の “Help” → “Install New Software” で “Available Software Site” をクリックして 下記 UR
Perl での print debug の方法の紹介がブーム(?)だったので、自分がよく行ってる Ruby での debug 方法7つについて書いてみます。 p ご存じの人も多い Kernel#p メソッド。これを使うとオブジェクトの内容を見やすい形で出力してくれます。 >> p ({:foobar => :baz}) {:foobar=>:baz}Object#inspect を使うと、p で出力するときと同じ文字列を String として取得できます。 >> puts ({:foobar => :baz}).inspect {:foobar=>:baz}初心者の頃この p での出力を使う方法がわからなくて困った記憶が…。 pp pp というライブラリを使うと、p より、より見やすい形式で出力してくれます。たとえば >> a = Array.new(10) { {:foobar => :
UnityでiPhoneアプリを出力する際に、PostprocessBuildPlayerスクリプトによって、フレームワークの依存解決をおこないます。 環境依存などによって、PostprocessBuildPlayerが正しく動作しない場合は、次のような方法で出力を確認することができます。OSXでのUnityのビルド時のログ出力は、下記のパスに保存されているので、これを参照します。 $ cat ~/Library/Logs/Unity/Editor.log | grep -A 20 'Executing PostprocessBuildPlayer' Executing PostprocessBuildPlayer... ERROR: While executing gem ... (Gem::FilePermissionError) You don't have write permis
はじめに スマートフォンアプリ開発でAPIを介しWeb/APIサーバーとやりとりをする場合、「httpsを使っていれば通信はユーザーにバレない」なんてことはなく、Webアプリでツールを使ってできるのと同じようにユーザーには通信内容の確認や改竄などができます。 そのため、そのことを前提にアプリやサーバーAPIの設計と実装を行わない場合、アプリ利用者によるゲームスコア結果送信の改竄や、ソーシャルゲームにおけるレイドボスなどへのダメージ操作、ECサイトアプリでの購入操作なども可能になってしまいます。 また、最近自分は「無料で音楽聴き放題!! - ネットラジオ」というアプリをリリースしたのですが、このアプリに導入するスタティックリンクライブラリが不明な外部サーバーへ通信していないか、SSLを使用しているつもりがそうでない通信をしてしまっていないかのチェックをするため、自分はmitmproxyという
2013/9/9 株式会社スーパーソフトウエア iOS アプリを作ってみようと Apple 公式サンプルのBTLE Central Peripheral Transferをダウンロードしたのですが、シミュレータでは Bluetooth は使えないので実機デバッグしようと思ったら結構面倒だったのでメモしておきます。 Certificateの作成(開発用Macの登録) 実機の登録(開発用iOS端末の登録) AppIDの登録(デバッグしたいアプリの登録) Provisioning Profileの登録(MacとiOS端末とアプリの紐付け) 実機デバッグするための Xcode の設定変更 Certificateの作成(開発用Macの登録) 以下の説明にあるブラウザでのアクセスはすべて Safari で行って下さい。 Google Chrome などでは各項目の最終工程で JavaScript で
1 pixel|サイバーエージェント公式クリエイターズブログ サイバーエージェントのクリエイターの取り組みを紹介するオフィシャルブログです。最新技術への挑戦やサービス誕生の裏話、勉強会やイベントのレポートなどCAクリエイターの情報が満載です。 フロントエンドエンジニアの谷です。 本記事ではGoogle Chromeの開発者ツール、Chrome DevToolsを使いこなすために参考になるサイト、ページの紹介をします。 すでに多くのフロントエンドエンジニアが開発で使っているかもしれませんが、「要素のインスペクタなどの基本的な機能しか使っていない」「UA切り替えくらいしかつかってない」というような方や、そもそもほとんど使ったことがない、という方もこれらを参考にフロントエンド開発を効率化していきましょう! 基本的な使い方 Chrome DevTools Overview 基本はやはり公式ドキュメ
JavaScriptのデバッグ 第1回 ブレークポイントの使用 Chromeのデベロッパーツールを例に、ブレークポイントの使い方を解説します。プログラムの任意の行を基準に、処理が進む過程をコントロールしながら、関数の実行や、変数の内容などを検証していくことができます。 デバッグスキルを高める プログラマに必要とされるスキルはいくつかありますが、その中でもエラーの原因をすばやく突き止めることができる、デバッグのスキルは非常に重要なスキルのひとつです。 デバッグのスキルは経験に依存するところも大きいですが、ツールの使い方を知り、使いこなすことができることも重要です。本シリーズでは、Google Chromeのデベロッパーツール(開発ツール)を利用したJavaScriptのデバッグ手法を解説します。 第1回目はブレークポイントという機能を使い、途中でプログラムの実行を止めることで効率的にデバッグ
HTMLコーダー、JavaScriptプログラマ、PHP、Perlのプログラマといった職務を経験後、2010年に株式会社ピクセルグリッドに入社。大規模サイトの運用、開発の経験を活かしてバックエンドからフロントエンドまで幅広く担当。2015年、退社。好きな言語はJavaScriptとRuby。 著書に『ノンプログラマのためのJavaScriptはじめの一歩』(単著:技術評論社、2012年11月7日)があり、共著も多数。このほか、WEB+DB PRESS、Software Designなどにも寄稿。
こんにちは、橋本です。 前回にひきつづき、Safari、ChromeのWebインスペクターやFirefoxのFireBugで使えるconsoleオブジェクトの使い方について書いてみたいと思います。 consoleオブジェクトには以下の19個(logを除くと18個)のメソッドがあります。 assert count debug dir dirxml error group groupCollapsed groupEnd info log markTimeline profile profileEnd time timeEnd timeStamp trace warn そのうち前回は、assertメソッドからgroupEndメソッドまで見て行きました。 今回はinfoメソッドからwarnメソッドまでの使い方について書いていきたいと思います。 infoメソッド console.info(messa
mitmproxy - an interactive HTTPS proxy の最新のソースが透過型プロキシをサポートしているようなので、iOSネイティブアプリの通信を調査しようと思います 最初に http://www.backtrack-linux.org/ のISOをダウンロードします BT5R3-KDE-32.iso を選択しました 起動させます 今回は Virtual PC 2007 を利用しました 既に mitmproxy 0.8 がインストールされていますが、透過型ではないので、iOSの設定でHTTPプロキシを指定する必要があります しかしこの場合、アプリによっては、期待通りに動作をしないことがあるかもしれません 例えばドラコレ&ポーカー 透過型プロキシを使うと、アプリからプロキシを通っていることを知ることができないため、このような問題を解決できる可能性があります 検証環境は、
<g> <g> <defs> <rect id="SVGID_1_" x="-468" y="-1360" width="1440" height="3027" /> </defs> <clippath id="SVGID_2_"> <use xlink:href="#SVGID_1_" style="overflow:visible;" /> </clippath> </g> </g> <rect x="-468" y="-1360" class="st0" width="1440" height="3027" style="fill:rgb(0,0,0,0);stroke-width:3;stroke:rgb(0,0,0)" /> <path d="M13.4,12l5.8-5.8c0.4-0.4,0.4-1,0-1.4c-0.4-0.4-1-0.4-1.4,0L12,10.6L6.2
--> tree app app ├── 404.html ├── favicon.ico ├── index.html ├── robots.txt ├── scripts │ ├── main.js │ └── vendor │ ├── jquery.min.js │ └── modernizr.min.js └── styles └── main.css Chrome Developer ToolsのTincrタブでProject Typeを選択、Http Serverの場合はルートディレクトリの設定のみ。 Enable Loggingにチェックを入れておくとConsoleタブにログが出てくる。 Content for url http://localhost:8000/scripts/main.js matches local file /Users/tnishibayashi/d
Firebugでは条件付きブレークポイントが使えるので、 scriptタブにて該当行にブレークポイントを貼り、 条件としてconsoleへの出力を||区切りで、最後に&& falseを入れる。 console.debug('this.lastPosition') || console.dir(this.lastPosition) && false こうするとブレークポイントを通る度にconsoleへの出力は評価され、 consoleに出力され、最後の&& falseのため式全体は必ずfalseとして評価されるため ブレークすることはない。 追記 console出力系関数の戻り値はundefinedなんだから&& falseは不要か 追記 nanto_vi @monjudoh JSでは||より&&の方が優先順位が高いので、a || b && c はaが真ならbもcも評価されずに全体が真として
minifyされたJavaScriptへのブレークポイントでの処理の挟み込み Firebugのブレークポイントは行に貼るのでminifyされたJavaScriptと相性が悪い。 例えばjQuery.ajaxが定義されている行にFirebugで元のJavaScriptのコードに手を入れずにdebug用のconsole出力を入れる方法 - 文殊堂の要領でconsole出力を挟んだとして、 無関係な関数の呼び出しまで対象になってしまう。 それを回避するためにブレークポイントに設定する条件を変えてみる。 !(!(arguments.callee === jQuery.ajax) || (/* やりたい事(式)をカンマ区切りで start */console.info(arguments.callee.toSource())/* end */,true)) コピペ用 !(!(arguments.ca
スマートフォンやタブレットが主流になりつつあるが、それらモバイルデバイスでWebのデバッグするのは楽ではない。User Agent文字列を変更してモバイルデバイス上のブラウザの振りをしたMacやPCのブラウザからデバッグする方法もあるが、モバイルデバイスのブラウザの機能がMacやPCと同一ではなく、モバイル特有の状況もあるため、モバイルデバイスそのものを使った状態でデバッグしなければいけないことも多い。 そのような際に使われるのがリモートデバッグだ。 Mac/PCとAndroidの両方にブラウザを提供している主流ブラウザとしてはChrome、Firefox、Operaがあるが、このリモートデバッグ機能はこの3種のブラウザすべてに備わっている。また、ブラウザ開発元ではないが、Adobeもリモートデバッグ機能を提供している。すでに使っている人も多いと思うし、それぞれ多くの情報が提供されているの
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く