Androidプログラミング質問スレ Part23
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2012/06/19(火) 19:57:12.12※プログラミング自体が初めて!なあなたには↓↓↓こちらへ
スレ立てるまでもない質問はここで 118匹目
http://toro.2ch.net/test/read.cgi/tech/1331904826/
Eclipse統合M32【Java/C++/Ruby/Python/Perl】
http://toro.2ch.net/test/read.cgi/tech/1320318310/
★★Java質問・相談スレッド153★★
http://toro.2ch.net/test/read.cgi/tech/1334438859/
****関連リンク****
■ Android developers http://developer.android.com/
■ ソフトウェア技術ドキュメントを勝手に翻訳 http://www.techdoctranslator.com/
****前スレ****
Androidプログラミング質問スレ Part22
http://toro.2ch.net/test/read.cgi/tech/1337170429/
0601デフォルトの名無しさん
2012/07/10(火) 14:07:35.79大切な事なのでもう一度言います。
馬鹿には無理。特にお前みたいな馬鹿には一番無理
0602デフォルトの名無しさん
2012/07/10(火) 15:08:45.870603デフォルトの名無しさん
2012/07/10(火) 16:34:42.47・getRecentTasks
・getRunningTasks
・getRunningAppProcesses
で取得される値の違いがいまいちよく分からない(SDKも読んだけど余計に分からなくなってしまった)
どう違うか教えてください。
0604デフォルトの名無しさん
2012/07/10(火) 18:27:03.29Recent と Running の違いは、 Recent は終了したものも含むが Running は実行中のものだけ
Task と Process の違いは、タスクはユーザーの見た目的なものでプロセスは OS 上の内部的なもの
例えばメーラーから添付ファイル選択でギャラリーを呼び出したらギャラリーとメーラーは別のプロセスだけどもユーザーの見た目的にはメーラータスクの一部
ホーム画面に戻って新たにギャラリーを起動するとこれは当然さっきのメーラーとは別のギャラリータスクだけどプロセス的にはメーラー上のギャラリーと新たに開いたギャラリーは同じプロセス上で動作している
0605デフォルトの名無しさん
2012/07/10(火) 18:40:29.17Home キーで抜けるなどバックグラウンド化しただけのタスクは終了していない
また、プロセスが kill されても、それイコールタスクの終了ではない
タスクが終了しても直ちにプロセスが消されるわけではないし、
タスクが生きてても直ちに必要なければプロセスは消されるし、
消されてもまた必要になれば再起動されるのが Android におけるプロセスというもの
0606デフォルトの名無しさん
2012/07/10(火) 18:40:52.37自分で書いてる通りやればいいよ
invalid
0607デフォルトの名無しさん
2012/07/10(火) 19:47:36.260608デフォルトの名無しさん
2012/07/10(火) 20:05:56.86ありがとうございます。
とりあえずあれから自分なりにさらに調べてテストソースも書いてみて
getRecentTasksの挙動はホームボタン長押しで出る「最近使ったアプリ」の値とほぼ同じだと考えて良いみたいですね。
getRunningTasks とgetRunningAppProcessesについてはやっぱり自分で調べてもよく分からなかったですけど
>>604の説明をみて理解できました。
0609379
2012/07/10(火) 20:27:45.070610デフォルトの名無しさん
2012/07/10(火) 21:06:04.20キャッシュが効いてても、一から読み込みが始まり起動が遅くなります。
どうにかならんもんでしょうか?
0611デフォルトの名無しさん
2012/07/10(火) 21:28:07.30アプリ側からカレンダーの作成はできないのでしょうか?
0612デフォルトの名無しさん
2012/07/10(火) 21:57:09.870613デフォルトの名無しさん
2012/07/10(火) 22:22:12.15本当にデータ的なものはファイルとかデータベースとか使えばよさそうなもんだし
環境設定だったらそれこそSharedPreferenceに書いたほうがいいだろうし
0614デフォルトの名無しさん
2012/07/10(火) 22:34:04.00onSaveInstanceState で保存した値は、自動的に復元されるわけじゃなく、自分で復元するんだから、
初期値を使うか、 savedInstanceState から復元するか、もっと別の値にするか、自分で自由に選べるだろ
0615デフォルトの名無しさん
2012/07/10(火) 22:54:13.69Tegra2上のみで意図した通りに動作し、Adreno200とMali400MPでは一定の大きさで止まってしまい、それ以上大きくなりません。原因わかる方よろしくお願いします。
0616612
2012/07/10(火) 23:06:04.72てへ
0617デフォルトの名無しさん
2012/07/10(火) 23:17:08.740618デフォルトの名無しさん
2012/07/10(火) 23:22:35.29とても大切な事なのでもう一度言います。
馬鹿には無理。特にお前みたいな馬鹿には一番無理
0619デフォルトの名無しさん
2012/07/10(火) 23:23:07.17ある程度以上デカくなると分けないと管理しきれん
0620デフォルトの名無しさん
2012/07/10(火) 23:27:47.72とても大切な事なのでもう一度言います。
馬鹿には無理。特にお前みたいな馬鹿には一番無理
0621デフォルトの名無しさん
2012/07/10(火) 23:27:57.13再利用可能になりそうな部分のソースは別クラス化しておく
0622デフォルトの名無しさん
2012/07/10(火) 23:31:06.15邪魔だから他スレでやれよ
0623デフォルトの名無しさん
2012/07/10(火) 23:48:01.25GLES1.0で同じやり方で上手くいっています。
シェーダーなど思いつくところは全部試しました。
GLES2.0だと何か根本的に問題があるのですか?
0624デフォルトの名無しさん
2012/07/11(水) 00:03:18.29ありがとう
参考にするよ
0625デフォルトの名無しさん
2012/07/11(水) 00:03:24.68フレームワークやライブラリ等あるのですか?
よろしくお願いします。
0626デフォルトの名無しさん
2012/07/11(水) 01:02:19.25cleanupView(View)は未定義ですと言われるんですけど、どういうことですか?
cleanupView(findViewById(R.id.allview_list));
0627626
2012/07/11(水) 01:12:15.220628デフォルトの名無しさん
2012/07/11(水) 01:20:11.41実行する事があるけど、あれはどうやって実現してるんだろう?
0629デフォルトの名無しさん
2012/07/11(水) 01:25:15.270630デフォルトの名無しさん
2012/07/11(水) 01:28:52.82非常に大切な事なのでもう一度言います。
馬鹿には無理。特にお前みたいな馬鹿には一番無理
0631デフォルトの名無しさん
2012/07/11(水) 01:29:35.71お前が他スレいけよ
0632デフォルトの名無しさん
2012/07/11(水) 02:03:59.21今Activityでログ仕込んでトレースしてみたんだけど、
launchMode="singleInstance"でHOMEボタン押したらonCreate()が走って
再度HOMEボタン押すとonPause()→onNewIntent()が走った
onCreate()は無視してonNewIntent()で処理すればいいって事かな?
0633デフォルトの名無しさん
2012/07/11(水) 02:58:49.62もしシングルクリックとダブルクリックを区別する必要があるなら時間差が ViewConfiguration.getDoubleTapTimeout() 以内かとか判定しないといけない気がするけど
0634デフォルトの名無しさん
2012/07/11(水) 03:17:20.30ViewConfiguration.getDoubleTapTimeout()なんてあったのか
どうやって時間を計ってるのかと思った
1回目のHOMEボタンアップと2回目のHOMEボタンダウンのイベント時間の
差分取って、getDoubleTapTimeout()以内だったらダブルクリック、
そうでなければシングルクリック扱いって感じだろうか
0635デフォルトの名無しさん
2012/07/11(水) 05:53:29.76シャープは台湾と組んで正解だった。 これからチョンを叩き潰す。
※※※※※※台湾人と韓国人の民族性の違い※※※※※※
その昔、本田技研の創業者・本田宗一郎氏が台湾と韓国へ技術支援に行った。日本のモノづくりの真髄技術を伝えて、
その後台湾から、「日本と同じものが作れるようになりました。是非見に来てください!」と連絡が入った。
台湾人は技術力が向上したのは日本のおかげだったと、先生の本田氏に報告し、心から感謝した。
一方、しばらくして韓国からも連絡があった。それにはなんと、
「日本と同じものが作れるようになりました。もう来なくていいです。」 だった。
そして、韓国は本田とのライセンス契約を一方的に解消し、エンジンからデザインまで全くの物真似・コピー品を
"韓国ブランド"として販売し始めた。つまり、技術を盗み終わったら先生は「用済み」だと言い、
しかも、技術提供の代価であるライセンス料は払いたくないというのが韓国の言い分だった。
恩を仇で返す、それがチョーセン人の本質だった。本田宗一郎氏はがっかりして、「韓国とはもう絶対に関わるな」と漏らした。
この話は『夢を力に ―私の履歴書』という本田氏の自伝に書かれている。
『併合で散々援助されたのに、身勝手な独立をした韓国』という韓国民族とは、そういう人種である。
恩を仇で返す民族と言われるゆえんだ。このチョンの性癖は2000年以上変わらない。
0636デフォルトの名無しさん
2012/07/11(水) 12:18:18.26Androidの実機でのデバッグのため、manifestファイルにandroid:debuggable="true"を書き足し、
実行したのですが、指定のブレークポイントでストップさせることが出来ません。
見てみると、ブレークポイントの○印に、斜線が入っており、正常の状態ではないようです。
ブレークポイントのプロパティを確認しても、これを除くチェック等は見あたらず、
斜線が入るような何かをした覚えも無いため、困っています。
このブレークポイントの斜線を除くには、どのようにしたら良いでしょうか?
0637デフォルトの名無しさん
2012/07/11(水) 12:40:56.35Save to DiskからOpen in Eclipseに変更したんですが、
フォルダにandroid~.hprofがコピーされてしまい、
自動的に Memory Analyzer が解析を始めてくれません。
Mac版だとこれらが出来ないとかありますか?
参考サイト
http://blog.hikware.com/article/54369112.html
0638637
2012/07/11(水) 13:34:10.140639デフォルトの名無しさん
2012/07/11(水) 13:45:17.24自分が困ってるときは助けを求めるくせに、
いざ自分が助かったらそれでお終いかよw
他にも同じことで困ってるヤツがいるかもしれないだろ?
そういう奴らが検索で見つけられるように、
自己解決したときでも、その方法をレスしておけよな
0640デフォルトの名無しさん
2012/07/11(水) 14:23:25.63無限ループさ
あ、俺は作らないんでヨロ。時間ねーもん。
お前らが生活費カンパしてくれるってんならやってもいいがなw
0641デフォルトの名無しさん
2012/07/11(水) 15:26:53.89配列に文字"能"を代入すると何やらエスケープ系のエラーになる模様
0642デフォルトの名無しさん
2012/07/11(水) 15:30:16.05「表現」「暴力」「予知」「申請」て代入してみて
0643デフォルトの名無しさん
2012/07/11(水) 17:09:39.22説明は↓とあるのですが
-t: allow test .apks to be installed.
実行シミュレーションかと思ったら普通にインストールされるようで…
0644デフォルトの名無しさん
2012/07/11(水) 17:14:31.150645デフォルトの名無しさん
2012/07/11(水) 17:32:21.93sqliteのDBからデータを取得し、ListViewで表示すると言う処理を作っています。
データをカーソルに取り出すところまでは何の問題も無く行ったのですが、そこから先、何故か表示がうまくいきません。
悪さをしているのでは無いかと考えたものを徹底的に省いてみたのですが、それでもダメでした。
-- result_list.xml --
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"android:layout_height="fill_parent" >
<!-- リストのメイン -->
<ListView android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/result_main" >
</ListView>
</RelativeLayout>
-- result_list_item.xml --
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/date" android:layout_width="fill_parent"
android:layout_height="fill_parent" android:layout_weight="1" android:width="0dp" >
</TextView>
-- リスト表示部 --
Cursor c = DBAdapter.getAllNotes(); // 内部でcursorを取得
SimpleCursorAdapter mAdapter = new SimpleCursorAdapter(this,
R.layout.result_list_item, c, new String[] {DBAdapter.COL_DATE}, new int[] { R.id.date});
lv.setAdapter(mAdapter);
中身これだけなのに表示されません。いったい何が誤りなのか、ご教示願えませんでしょうか。
0646デフォルトの名無しさん
2012/07/11(水) 17:45:07.80マック版がない。ただそれだけです…。
0647デフォルトの名無しさん
2012/07/11(水) 18:43:29.12ListActivityを使っているなら、ListViewのIDは"list"にしないと駄目
0648デフォルトの名無しさん
2012/07/11(水) 18:45:07.53のように他のアプリを起動するときに
intent.setClassName("com.android.browser", "com.android.browser.BrowserActivity");
のように必ず第二引数に指定したActivityが起動してします。
すでに起動中のアプリの場合、そのアプリが複数画面あって別画面で作業をしていても
これをやると必ず初期画面に戻ってしまいます。
ですから、起動使用しているアプリがすでに起動している場合、現在のアクティブなActivityが何か取得して
リアルタイムにsetClassName()の第二引数に渡す方法って無いのでしょうか?
0649デフォルトの名無しさん
2012/07/11(水) 18:47:10.58日本語でおk
0650デフォルトの名無しさん
2012/07/11(水) 19:21:46.79縦画面だと下にメニュー表示。横画面だと上にメニュー表示。となります。
別にこれは構わないのですが、横画面にして適当に画面を移動してから縦画面にすると、
メニューが下に表示されるのですが、左側によっている状態になってしまいます。
画面移動せずに、回転させて縦と横が切り替わる分には問題なく動作します。
なにか解決策はありますでしょうか。
0651デフォルトの名無しさん
2012/07/11(水) 19:28:44.97https://groups.google.com/forum/?fromgroups#!topic/android-group-japan/77pbhEKCmwU
>>649
おまえがプログラムできないから理解できないんだろ。それを日本語がって言って逃げるなクズ。
0652デフォルトの名無しさん
2012/07/11(水) 19:32:42.58android:width="0dp" ってのはそれでいいの?
0653デフォルトの名無しさん
2012/07/11(水) 19:45:44.82hprof-convコマンドを使ってターミナルで実行してもcommand not foundって言われる。
ホーム直下にandroid-sdksを置いているんだけど、下のパスって間違ってます?
/usr/local//MacBookAir/android-sdk/tools/
http://eikatou.net/blog/2012/02/memory-leak/
0654デフォルトの名無しさん
2012/07/11(水) 19:54:09.310655645
2012/07/11(水) 20:13:17.07>>647
>ListActivityを使っているなら、ListViewのIDは"list"にしないと駄目
Activityは普通の(?)Activityです。 問題になるかも知れない箇所を削るだけ削ったら、こんな形に。
>>652
>android:width="0dp" ってのはそれでいいの?
どこだかで見た、複数カラムある時に均等割する技、というので入れてました。
一応気になって外してみたのですが、結果は変わりませんでした。
0656デフォルトの名無しさん
2012/07/11(水) 20:25:32.39そう言えば「情報を見る」にパスが書かれてた。
出来る様になったよ。ありがと。
0657デフォルトの名無しさん
2012/07/11(水) 22:38:41.06序盤の章を試してるのですが、Androidエミュレーターがいつまでたっても、
「ANDROID」ってロゴがキラキラ光るだけで、ホーム画面に移りません。
開発環境はPenM1.6G、メモリ2G、XPSP3の古いノートPCですが、
これでは遅すぎでしょうか?
JDKはjdk-7u5-windows-i586.exeです。
何か命令が足りてないのかな。
サンプルの動作は実機で起動して確認はできました。
0658デフォルトの名無しさん
2012/07/11(水) 22:46:57.85そのスペックじゃきついかもな・・・
実機持ってないの?
持ってないなら、実機買うかPC買い換えるかのどっちかだな
0659デフォルトの名無しさん
2012/07/11(水) 22:47:32.72よくあるからエミュ閉じてもう一回起動がいいよ
0660デフォルトの名無しさん
2012/07/11(水) 22:49:10.520661デフォルトの名無しさん
2012/07/11(水) 23:04:50.360662デフォルトの名無しさん
2012/07/11(水) 23:34:56.450663デフォルトの名無しさん
2012/07/11(水) 23:48:42.21同期をすると作成したカレンダーがなぜか消えてしまいます。
非公式なので作成を諦めるしかないでしょうか?
0664デフォルトの名無しさん
2012/07/12(木) 00:20:41.89S2だと慣性が働いてXperia系だとエッジに衝突しても慣性が働きません。
どなたかその理由分かる方いますか?
http://pastebin.com/8ch4TXbR
0665デフォルトの名無しさん
2012/07/12(木) 00:22:02.52それでエミュ起動とか無謀すぎるだろ・・・
俺の型落ちPCは3Ghzの4Gメモリでもどっこいどっこいだぞww
0666デフォルトの名無しさん
2012/07/12(木) 00:40:37.02これ完璧メモリリークですよね?
・onDestroy時、オブジェクトをnullさせる
・imageView.setImageURI(null);
・Context系はgetApplicationContext()に置き換えて
他にすべき事って何かありますか?
0667デフォルトの名無しさん
2012/07/12(木) 00:52:00.01新しいマシン買ってきます。
0668デフォルトの名無しさん
2012/07/12(木) 01:04:25.78メモリ足りなくてスワップしまくりなんじゃないかと。
メモリ2GとかEclipseとエミュレータだけで
他何もいらないもの動かさない状態でギリって感じ。
一度Eclipseは立ちあげずにコマンドプロンプトから
「android avd」と打つか、あるいはSDKフォルダの「AVD Manager.exe」を実行して
そこからエミュレータを単体で起動させればメモリが足りてそれなりに動くかも
0669デフォルトの名無しさん
2012/07/12(木) 01:09:26.17他にマシンがあるならエミュレータはそっちで起動して・・・いや面倒だな・・・
0670デフォルトの名無しさん
2012/07/12(木) 01:13:09.96やりたいことは、iPhoneのtipskipとほぼ同じなんだけど、
端末を振ったときや置いたときに誤作動してしまう。。
0671デフォルトの名無しさん
2012/07/12(木) 01:49:26.02オーバースクロールはアップルが特許だと主張するのでいつからか廃止されて代わりに端が光るようになった
0672デフォルトの名無しさん
2012/07/12(木) 01:55:46.77具体的に何がリークしてるのかを調べた方がいいんじゃないかな
何かそういうツールがあった気がするのだけれど
0673デフォルトの名無しさん
2012/07/12(木) 02:46:05.25だけど、他のアプリがメモリ要求したらそこ開放してくれる。
Cのアプリと考え切り離したほうがいいよ。
0674デフォルトの名無しさん
2012/07/12(木) 05:49:27.24MATとか使って調べたほうがいいと思うよ。
http://d.hatena.ne.jp/tlync/20111220/1324372308
0675デフォルトの名無しさん
2012/07/12(木) 08:56:46.580676デフォルトの名無しさん
2012/07/12(木) 08:59:39.490677デフォルトの名無しさん
2012/07/12(木) 09:14:46.85うちのCorei7の6コアなら普通にいけたよ
0678デフォルトの名無しさん
2012/07/12(木) 10:03:49.746コアなんてあるの!?
クワッドじゃなくて?
0679デフォルトの名無しさん
2012/07/12(木) 10:06:59.850680デフォルトの名無しさん
2012/07/12(木) 10:07:22.55Core i7 3930K
Core i7 970
0681デフォルトの名無しさん
2012/07/12(木) 10:08:34.490682デフォルトの名無しさん
2012/07/12(木) 10:12:16.736コアは前からあったし、8コア(Xeon)も普通にあるので、
そんなすげぇっていうことでもないと思うのだが・・・。
0683デフォルトの名無しさん
2012/07/12(木) 10:19:32.010684デフォルトの名無しさん
2012/07/12(木) 10:22:00.40>>675
厳しいと言えば厳しいかもしれんが、
まぁ、あなたが短気でなければ問題ない。
起動はするので、優しく扱っておくれ。
0685デフォルトの名無しさん
2012/07/12(木) 10:22:53.17高いけど
0686デフォルトの名無しさん
2012/07/12(木) 10:28:19.19たしか2万円台だったし、いっぱいコアほしいならあれでいいんじゃね
0687デフォルトの名無しさん
2012/07/12(木) 10:44:59.60エミュを起動させてタスクの様子を見てみたけどどう見ても1コアで頑張って動いているだけ。
このエミュレータはっきり言ってマルチプロセスで動いていない。
無駄なコア数論議しちゃってかわいそうだ。
自分でマルチコアで動くか確認してから物を語れ。
0688デフォルトの名無しさん
2012/07/12(木) 10:46:28.75お前が馬鹿っぽい
0690デフォルトの名無しさん
2012/07/12(木) 10:50:00.891コアあたりの効率が違いすぎる。
0691デフォルトの名無しさん
2012/07/12(木) 10:52:35.94その常識から外れてコア数云々話しているのは恥ずかしい。
常識と言うが本当はおまえ知らなかったんだろwww
必死すぎ。
0692デフォルトの名無しさん
2012/07/12(木) 10:55:32.830693675
2012/07/12(木) 10:56:14.22なるほど。
ただ、i7とcore2duoでも型によっては
1コア当たりの性能が違うような気がするのですが、そこはどうなのでしょうか?
また、コア数多い方が、エミュ以外も同時に動かす場合に処理負荷が分散され
全体的に軽くなると思うのですが、そこはどうなのでしょうか?
0694デフォルトの名無しさん
2012/07/12(木) 11:04:55.900695デフォルトの名無しさん
2012/07/12(木) 11:06:18.50論破されて必死すぎ。
>>693
>ただ、i7とcore2duoでも型によっては
>1コア当たりの性能が違うような気がするのですが、そこはどうなのでしょうか?
同じi7でもコアが同じなら1コアあたりの性能は同じ。
現状i7だけでも複数コアある。
また、QPI/DMIの性能の違いもある。
>コア数多い方が、エミュ以外も同時に動かす場合に処理負荷が分散され
>全体的に軽くなると思うのですが
正解。
0696デフォルトの名無しさん
2012/07/12(木) 11:06:59.980697デフォルトの名無しさん
2012/07/12(木) 11:07:57.770698デフォルトの名無しさん
2012/07/12(木) 11:08:27.830699デフォルトの名無しさん
2012/07/12(木) 11:11:04.31w
0700デフォルトの名無しさん
2012/07/12(木) 11:13:21.77そういう奴に限って知識も技術もゼロがほとんど。
少しは、質問している人の実になる回答しろよ。
なじるだけならバカでもできる。
いやなじるだけしかできないのね。ごめんごめんww
0701デフォルトの名無しさん
2012/07/12(木) 11:27:08.54■ このスレッドは過去ログ倉庫に格納されています