はじめに Android プログラマのみなさん、こんにちは。 今日も元気に Out Of Memory してますか? ということで、この記事では日々 OOM に悩まされる Memory 的な意味で富豪的な Android プログラマの為に、Eclipse Memory Analyzer Tool、通称 MAT の基本的な使い方を紹介します。 尚、この記事は [twitter:@youten] さんが企画された裏 Android Advent Calendar 12/20 の記事ですが、内容的には比較的オモテなものになっています。 対象読者 Andoid アプリ作ってる/はじめたけど、まだ MAT を使ったことがない方 MAT を使ってみようした事はあるものの、画面から難しそうな雰囲気を察知し、起動10秒後にはそっとタブを閉じてしまった経験がある方 DDMS の基本的な使い方を理解している方
こんにちは。横幕です。 今回もAndroid(TM)開発についてお話をしたいと思います。 設定画面の作り込み 今回のトピックは、設定画面のちょっとした工夫の仕方についてです。 Androidでは、PreferenceActivityという設定画面を作るためのActivityが用意されています。 個々の設定項目はXMLで記述し、それをPreferenceActivityがコントローラとして画面を制御するような形になります。 設定画面の大まかな作り方 まずは、どんな設定項目を準備するのかを、res/xml/pref.xmlに定義します。 Androidには予め幾つかの設定方法を用意してあり、例えば項目の一覧の中から1つ選択するListPreferenceや、チェックボックスの状態で設定を変更するCheckBoxPreferenceなどがあります。 また、設定項目のまとまりごとにカテゴライズする
Googleの中の人が作ったGoogle I/O用のAndroidアプリ iosched がオープンソースで公開されているのですが、Androidアプリを開発する時に非常に参考になるので(Table対応したバージョンから難解になったのがネックですが)紹介したいのですが、ビルドするまで少し作業が必要なのでダウンロードしてビルドするところまで手順をメモっておきます。 Mercurialをインストールする ソースコードのチェックアウトページに行くと hg clone https://code.google.com/p/iosched/と書いてあって、svnやgitではなくhgなのでMercurialが必要みたいです。 ということで、brewでさくっと入れようかなーと思ったけど何か嫌な予感(今思えば今回に限ってなんで嫌な予感を感じたか不思議でしょうがないけど)がしてググったらbrewでMercur
AndroidでWeb APIを使う場合、マルチスレッドによるユーザビリティ向上を以前のエントリで説明しました。 AndroidアプリのUIはシングル・スレッド モデルです。 単純にマルチスレッドにしてUIの操作をしてしまうと、CalledFromWrongThreadExceptionでアプリがダウンしてしまいます。 これを回避する仕組みがHandlerです。 Handlerの仕組みを簡単に説明しようと思ったのですが、 またもや長くなってしまったので、先にまとめます。 AndroidのUI操作はシングル・スレッド モデル ユーザビリティ向上の為にはマルチスレッドが必要 Handlerで実現 Handlerを使わない場合に起きる例外は実行スレッドのチェックで発生 Handlerを使うと、UI Threadの持つキューにジョブを登録できる キューはUI Threadにより実行される
ここ1週間くらいずっとAndroidゲーム開発を手探りで進めていた。そして、めでたく、ようやく、初のAndroid向け2Dアクションゲームをリリースすることができました。 Fire Rescue - Android マーケットhttps://market.android.com/details?id=name.shimobayashi.firerescue内容としては http://www.shimobayashi.name/ のBurningPanicというゲームをAndroid向けに移植した感じです。なお、ゲームのBGMはuzzuさん(http://twitter.com/uzzu)につくっていただきました、感謝。(スクリーンショットが若干おかしいですが、OpenGLを使った画面をPCでうまくキャプチャーできないようです。無念。) つきましては、またもやヘドロのごとくTipsが蓄積され
みなさん最近はいかがお過ごしでしょうか。プログラマーのみなさんならば当然、地震におけるエクストリーム・プログラミングを実践されていることかと思います。僕もその例外ではなく、震災の影響もあって時間的な余裕ができたため、以前から興味を持っていたAndroid開発に本格的に着手し、先日ようやくはじめてのAndroidアプリケーションをマーケットにリリースすることができました。Cook Duet - Android マーケットhttps://market.android.com/details?id=name.shimobayashi.cookduetCookpadのレシピを検索して表示するだけ、という非常に簡単なアプリケーションなのですが、このアプリケーションを開発するだけでもかなりの試行錯誤が必要となりました。つきましては、今ここにCook Duetの開発を通じて蓄積されたバッドノウハウを、簡
本記事はAndroid DevelopersのDesigning for Seamlessnessを意訳、加筆したものです。Androidアプリをシームレスに連携させるためのノウハウを紹介します。 特性を理解する アプリケーションが高速に動作し、レスポンスが良くても、アプリケーション遷移やダイアログ表示を乱用した無計画なUI、不用意なデータの喪失、意図しないタイミングでの操作妨害など知らず知らずのうちにUXの良くない設計になっているかもしれません。これらの問題はどのように避ければ良いでしょう? アプリケーションが動作するコンテキスト Androidフレームワークの特性(アプリケーションへどんな影響を与えるか) を理解することが開発の手助けになります。 ユーザ操作を妨げない ユーザ操作のシームレス性で問題になるケースとしてよくあるのが、他のアクティブなアプリケーションを無視して、自分のダイア
以前のエントリーでObjective Cの実行速度を評価したところ、Javaの方が開発効率が高いとの指摘を多数頂いた。 これ自体に異議は無いのだが、両者は利用用途が異なる場合が多く、プログラマーにも質的な差があるので『開発効率』を定量的に評価するのは難しく、両方での開発経験がある人間以外は差異を把握しづらい。 そこでデスクトップ/スマートフォン・アプリケーションの作成を念頭におき、Objective CとJavaの定性的な比較を行い、JavaがObjective Cより開発効率が高い理由を以下の7点に整理した。なお、開発効率性を議論するので、実行速度は評価しない。 1. JavaがObjective Cより開発効率が高い7つの理由 Javaは、(1)ポータビリティ、(2)メモリ管理方式、(3)静的オブジェクト型、(4)コンストラクタと静的メンバー変数、(5)言語仕様の簡潔さ、(6)利用範囲
1月の12日に Android 端末買って、3週間後に ツイキャス・ビュワーをリリースする、という挑戦的な目標を立てていたのだけど、無事作業も完了したのでその時のメモ。 結論から書くと Android よくできてる。開発もやりやすくて楽しい。いやー、こりゃいい。 なにそれお前こないだまで iPhone 厨じゃなっかったのかコラ、と言われそうですが、開発者にとってみれば Android の方が優れてるところが多いと思います。はい、あとメモ。もう順不同でざーーーーーっと。 ■初めに思ったこと とくかく Java 嫌だ。いやいや嫌嫌面倒くさい。なんとかこれ回避できんかな、とおもって Titanium に手をだして、おぉ、こりゃいいや、となるも Android 版は完成度あと一歩のところだったので断念。 次に Adobe AIR に手をだすという苦し紛れの行動にでるも、これもあえなく断念。ま、ライ
先日、以下の記事で初めて作ったAndroidアプリを紹介しました。 一週間で初めてのAndroidアプリを作ってみました その後、そのアプリをAndroidマーケットで公開してみました。 はてブ閲覧用Androidアプリ「HTBPocket」を公開しました この一連の作業で参考にした記事やサイトについて、「Androidアプリ開発関連情報まとめ」としてまとめてみました。 開発環境構築まず必要になるのが開発環境です。以下はMacの環境構築です。MacにAndroid SDKをインストール (Update 2010.05.25) そして以下がWindowsでの環境構築です。私はやったことないのでよく分かりませんが(^^;;世界を目指せ!Androidアプリ開発入門:第2回 Androidアプリ開発のための環境構築 公式の開発情報公式の開発者向けサイトです。Android Developers
こんにちは! iPhone/Androidエンジニアのgaoohです! 好きなExceptionはUnsupportedOperationExceptionです! みなさん、Android開発ではエディタは何をつかってますか? やっぱJavaといえばEclipseですよね! 個人的にはEclipseが大好きっ子です。好きすぎてEclipseでPerlを書いてたらまわりから変な目でみられたけど、それにもめげずに今日もワークスペースを開きます。 そんなEclipse好きなので、Androidで開発するときに抑えておくべきことをまとめてYo! とリーダーにいわれたので、まとめてみました。 これだけはいれとけ! 必須plugin ADT 当たり前ですが、これをいれないと話になりません。 http://developer.android.com/sdk/eclipse-adt.html EGit G
uncorrelated ソフトウェア・エンジニア。Java JavaScript PostgreSQL Oracle 等を使っています。Oracle Certified Professional。Sun Certified Programmer。 詳細プロフィールを表示 COVID-19 (39) MMT (12) ゲーム (7) ジェンダー (192) ソフトウェア (152) デザイン (17) 医療 (132) 英語 (23) 科学 (165) 確率・統計 (155) 環境問題 (136) 企業 (73) 記事整理 (5) 技術 (256) 金融 (263) 軍事 (99) 携帯電話 (94) 芸術 (11) 言葉 (17) 広告 (34) 航空 (112) 災害 (19) 財政問題 (71) 資源 (72) 事故 (34) 写真 (16) 社会 (586) 書評 (221) 冗談
ドワンゴは11月9日、15歳の高校生エンジニアを採用すると発表した。アルバイトとして浜町にあるドワンゴのオフィスに通い、ニコニコ動画の開発の仕事に従事する。 採用されたのは「鳥居みゆっき」と名乗るニコニコ動画のユーザーだ。ニコニコ動画風のインターネット放送サイト「ニコキャスト」を運営している他、android用「ニコニコ実況」ブラウザアプリや、簡易メモサービス「MeMoPa」など多くのソフトを発表している。 なぜ、15歳を採用したのか? いったいどんな人物なのか? 今回はドワンゴ人事部・採用担当 曽原広行氏と、ニコニコ事業本部・本部長の千野裕司氏、そして本人鳥居みゆっき氏の3人に話を聞いた。 ■人事部 曽原氏 ――どうして15歳高校生の採用を? いままで弊社では大学に行ってないが技術力が高いかたを採用する「2ちゃんねる採用」や、生放送で自分をPRしてもらう「一芸採用」などを行ってきました。
クックパッドという料理レシピサイト(http://www.cookpad.com/)がある。料理好きの筆者は、しばしば利用する好きなサイトの一つである。このクックパッドが2010年4月23日から「開発コンテスト 24」というイベントを開催する(http://info.cookpad.com/24contest)。主催者が発表した課題を解決するプログラムを開発するコンテストで、課題の発表から24時間以内に成果物を応募するというものである。 24時間で何かを作るというのは面白い。Microsoftが主催する学生向けの技術コンテスト「Imagine Cup」では、いくつかの部門で24時間のチャレンジという競技ルールがあって、その取材は楽しかった。趣味の人力飛行機でも、明日のこの時間までに問題を解決しなければ、ということが何度かあり、これらはしんどい経験だったが、やはり楽しかった。 筆者はクックパ
古いエントリーなのですが、まだ時折検索エンジン経由?でいらっしゃる方がいるみたいなので追記 Titanium Desktopは今はTideSDKと変わってオープンソースプロジェクトになっています。 いいたい事を先に。 Ruby,Python,PHP,JavaScriptやってる人でデスクトップアプリ作成に興味ある人は Appcelerator Titanium Desktop さわってみるといいと思います。OS X, Windows,Linuxとマルチプラットフォームなデスクトップアプリをhtml,JavaScript,Ruby,Python等の慣れ親しんだ技術で簡単に作成、公開することができます。 予想以上にブクマされてるみたいなので、Titanium Desktopの特徴を箇条書きですが追加しておきます。 一言で言えばJavaScriptで記述するAdobe AIRのようなRIAフレー
Androidアプリケーション開発の基礎知識を身につけよう 前回で開発環境が準備できたので、今回は必要な基礎知識を身につけて開発の準備を整えていきましょう。 対象読者 本連載はJavaおよびEclipseの基本を理解している方を対象としています。 前回の記事 第1回 Androidの概要と開発環境の構築 Android独自の実行環境 AndroidのアプリケーションはJavaのVM上で動作しますが、日ごろ使用しているJava VMとは異なり、DalvikVMという低メモリ環境に最適化された独自のVM上で実行されます。 DalvikVMでは、Java標準のクラスライブラリのすべてがサポートされているわけではなりません。その結果、世の中に存在するJavaライブラリの多くはそのまま持ってきても使う事はできません。もし運よく、使いたいライブラリが非対応のAPIを利用していなければ使用できるので、A
いまこそ知っておきたい「Androidアプリ」とは 今日から始める! Androidケータイアプリ作成の基礎 面白法人カヤック 閃光部 日高 一明 2009/11/19 日に日に国内でのニュースが増えているAndroidケータイ。その特徴を押さえてアプリ作成を始めるための基礎を紹介します 2009年10月、Android Marketの有料アプリ配信が始まりました。また先日新バージョンの2.0も発表され(参考:グーグル、Android 2.0対応のSDKリリース)、これからAndroidのアプリ作成を始めようという方も多いと思います。せっかくなので、Androidだからこそ作れるアプリを作りたいものですね。 本稿では、Androidの特徴を押さえてアプリ作成を始めるための基礎を紹介します。 Androidアプリ作成を始めるには何が必要なの? まずは、Androidアプリ作成に当たり、必要な
Android Market配布を目指しEclipseでHelloWorld!:Androidで動く携帯Javaアプリ作成入門(1)(1/3 ページ) 本連載で、SDKとEclipseを使ってAndroidの携帯端末で動くJavaアプリを作成し、Android Marketでの配布を目指しましょう。ドコモやauでも端末が発売されるAndroid。その前に自分が作ったアプリを配布できるようにしておくと大きなチャンスです! Android Marketでアプリを配布しよう 2008年7月、日本のケータイ市場(本連載では、携帯電話/PHS/スマートフォンなどの端末をまとめて「ケータイ」と表記します)に黒船として来航し、巻き起こされたiPhone旋風は記憶に新しいと思います。これまでになかったスタイリッシュなデザインと操作性で、新しい物好きが飛び付いたわけですが、それとは別の旋風がIT業界でも起こ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く