Androidプログラミング質問スレ Part19at TECH
Androidプログラミング質問スレ Part19 - 暇つぶし2ch202:デフォルトの名無しさん
12/03/02 19:53:21.63
int item[] = {
R.drawble.item_1,
R.drawble.item_2,
R.drawble.item_3};

GraphicUtil.loadTexture(gl, res, item[number-1]);


203:デフォルトの名無しさん
12/03/02 19:56:57.58
2chMateのレスアンカー先を表示するびろ~んて動いてぶら下がるビューはなにViewなんでしょうか?

204:デフォルトの名無しさん
12/03/02 19:57:17.19
>>201
if文が多いとデュアルコアだとかえって遅くなると勝手な憶測
パイプラインがどうこうとか



205:デフォルトの名無しさん
12/03/02 20:00:48.51
デュアルコアは関係ないだろ

CPUインストラクションパイプラインの分岐予測が外れてペナルティとかはあるかもしれんが。



206:デフォルトの名無しさん
12/03/02 20:03:24.64
>>202
こんなやり方があったとは

ありがとうございます

207:デフォルトの名無しさん
12/03/02 20:06:39.56
どういたしまして

208:デフォルトの名無しさん
12/03/02 20:07:38.40
>207

www おまっ 誰だよ

209:デフォルトの名無しさん
12/03/02 20:21:12.16
いいってことよ^^

210:デフォルトの名無しさん
12/03/02 21:59:33.67
Androidと関係ないんだが、、
Googleの短縮URLのAPIに"URLリンク(t.co)~"を入力すると
エラーが返ってくるんだが、意図的に弾いてるのかな?

211:デフォルトの名無しさん
12/03/02 22:05:15.04
質問。

自動生成されるRクラスについてなんだけど、stringやdrawableなどリソースの
種類ごとにstaticな内部クラスが出来ると思うんだけど、この分類ごとの内部クラスの
種類を増やしたり、またはネストすることってやっぱり出来ないもんだろうか?

要は、普通にやると文字列なら文字列のリソースIDは全部R.stringに放り込まれる
訳だけど、これが気に入らないと。

212:デフォルトの名無しさん
12/03/02 22:09:24.40
そんなんxml編集すれば何でもできるよ
決め事作っとくとエディタが自動化する上で都合がいいってだけ

213:デフォルトの名無しさん
12/03/02 22:26:52.67
androidのwebviewでHTMLを動的に作ろうと思っているます。

ajaxっぽくwebview内でjsで動かすやり方だとわかるのですが
java内でapiでデータを取得し、
html内に入れてwebview吐き出す方法を取る場合、
HTMLファイルをテンプレート的な使い方ってできるんでしょうか?
宜しくお願いします。

214:デフォルトの名無しさん
12/03/02 23:02:54.69
>>157
ジョジョヲタ乙
たまにリアルでその言葉を連呼してる低脳がいて正直引いたわ。
相手の質問の意図を明確にするために質問で確認をすることは、
現実社会では必須のコミュニケーション能力だぞ。

アホは反論できないときの免罪符だとでも思ってんだろうな。


215:デフォルトの名無しさん
12/03/02 23:15:49.43
ん?悔しすぎたかな?

216:デフォルトの名無しさん
12/03/02 23:42:46.77
漫画で得た知識をさも一般論と信じ込んでるやつは確かに痛い

217:デフォルトの名無しさん
12/03/02 23:56:53.39
エスパーする努力をしろ

218:デフォルトの名無しさん
12/03/02 23:59:47.82
Javaスレにも同時期に同じこと言ってたやついるから、なんとなく言いたかっただけなんだろう。

219:デフォルトの名無しさん
12/03/03 00:01:50.02
>>214
元ネタは『アナライズミー』って映画の方だと思うけどね。
まあ馬鹿っぽいと思うのはまったく同意。

220:デフォルトの名無しさん
12/03/03 00:02:45.19
オラ!オラ!オラ!

ごごごごごごごごごご・・・・・

221:デフォルトの名無しさん
12/03/03 00:08:19.49
変な質問であれなんだけど、なぜかJDKにパスを通してやらないとSDK Managerが
起動しない環境とそうでない環境があるみたいなんだけど、この違いって何?

222:デフォルトの名無しさん
12/03/03 00:48:51.04
JDKにパスが通ってる環境とパスが通ってないと見せかけて通ってる環境の違い

223:デフォルトの名無しさん
12/03/03 00:53:26.20
禅問答かよ

224:デフォルトの名無しさん
12/03/03 00:55:08.17
アプリをアップデートした時のイベントで
前バージョンの値を取得できる?

225:デフォルトの名無しさん
12/03/03 00:59:10.92
>>224
SharedPreferenceに自分で現在のバージョンを記録するようにすれば?
起動時にその値を読みこめば前回起動時のバージョンと現在のバージョンを比較できる。

226:デフォルトの名無しさん
12/03/03 01:12:29.88
>>225
あ、そうか…単純な話だね

227:デフォルトの名無しさん
12/03/03 02:11:58.45
外部アプリがintentを投げた時にそれを動的に確認する方法ってありますか?

228:デフォルトの名無しさん
12/03/03 02:28:42.72
よく分からん。何が動的なのか。

229:デフォルトの名無しさん
12/03/03 02:43:09.15
すいません自分でも意味わからんこと書いてました・・
なんかのアプリによって投げられた時にそれをフラグとして何か実行できないかという事です。

230:デフォルトの名無しさん
12/03/03 02:47:40.77
そりゃ出来るだろ

231:デフォルトの名無しさん
12/03/03 03:09:57.54
>>229
せめて何が投げられた時なのか、
自分がどういうアプリとして振る舞いたいのか
書かないと分からない
出来るか出来ないかで言えば出来る

232:デフォルトの名無しさん
12/03/03 03:51:19.95
どれだけマルウェアなんだよ。

233:デフォルトの名無しさん
12/03/03 04:28:02.15
public class TestView extends SurfaceView implements SurfaceHolder.Callback {
private SurfaceHolder holder;
private AndroidTest activityAndroid;
private TestClass testClass1;
public TestView(Context context) {
super(context);
init(context);
}
public TestView(Context context, AttributeSet attrs) {
super(context, attrs);
init(context);
}
private void init(Context context) {
Log.v("Test", "TestView - init");
testClass1.init();
holder = getHolder();
holder.addCallback(this);
setFocusable(true);
requestFocus();
activityAndroid = (AndroidTest) context;
}
public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) {}
public void surfaceCreated(SurfaceHolder holder) {}
public void surfaceDestroyed(SurfaceHolder holder) {}
}

と書いた場合testClass1.initが呼び出せずエラーがでます。
ログには「TestView - init」までは確かに動いてるのですが
何方か分かる方ご教授お願いします><
下記がtestClass1のソースになります。

234:デフォルトの名無しさん
12/03/03 04:28:23.99
public class TestClass {

public TestClass() {
}

public void init() {
Log.d("TestLog", "TestClass - init");
}
}

235:デフォルトの名無しさん
12/03/03 04:39:41.63
private TestClass testClass1 = new TestClass();

こうしなくて大丈夫なのか?


236:デフォルトの名無しさん
12/03/03 04:46:06.17
>>235
すみません。。。
てっきり生成してたものと思ってましたが
すっかり忘れていました・・・
この数時間なんだったんでしょうね・・・
ありがとうございます><

237:デフォルトの名無しさん
12/03/03 05:03:43.28
ステップ実行して追いかければ?

238:デフォルトの名無しさん
12/03/03 05:22:40.39
ぬるぽ

239:デフォルトの名無しさん
12/03/03 05:45:14.60
    ↑震↑
/|\( *´∀`)ぬるぽ
⌒⌒ (    )
 ←-┤ | |
   (__)_)

240:デフォルトの名無しさん
12/03/03 06:36:57.78
エラーメッセージも読まず
なぜか動かないとしか言えない奴はプログラム触るな

241:デフォルトの名無しさん
12/03/03 09:02:15.19
>>219
漫画や映画を引き合いに出すほど最近では珍しい言い回しなのか?

242:デフォルトの名無しさん
12/03/03 09:12:52.41
ユダヤ人乙

243:デフォルトの名無しさん
12/03/03 10:24:02.61
エラーメッセージはどんどん上に流れてくからな

244:デフォルトの名無しさん
12/03/03 11:13:02.22
onCreate時のView生成をANR回避のためwaitdialog出しつつ裏スレッドで・・・とかできんよなあ・・・

245:デフォルトの名無しさん
12/03/03 12:36:44.93
>>244
する意味がないだろ

246:デフォルトの名無しさん
12/03/03 12:39:04.06
顔認識させてユーザが笑ったり起こったりしたら
画面の中の赤ちゃんも笑ったり起こったりさせたいんだけど
難しそう?

247:デフォルトの名無しさん
12/03/03 12:59:20.26
アプリが作ったデータファイルってアンインストール時に削除されるんだよね?

SDカードの中にアプリ名のフォルダ作ってSQLiteデータベースを作成してるけど
俺のアプリをアンインストールしてもデータを削除してくれない。

設定でアプリケーションの情報を見てみても俺のアプリだけデータサイズ0.00Bになってる。

まだマーケットで公開してないからこうなるの?

248:デフォルトの名無しさん
12/03/03 13:24:40.05
>>245
アクティビティ遷移後、SurfaceView生成時にANR

249:デフォルトの名無しさん
12/03/03 13:32:12.23
>>248
SurfaceViewCreatedを軽くしろ

250:デフォルトの名無しさん
12/03/03 14:06:23.67
配列の指定位置からのデータ検索なんですがJavaの
Arrays#binarySearch(T array, int from, int to, T key)

はandroidでは使えないんでしょうか。
代わりになる命令はないでしょうか?

251:デフォルトの名無しさん
12/03/03 14:07:26.42
>>246
もしライブラリーみたいのが配布されてるようなら簡単だろうけど
自作で1から作る場合は大企業に就職できるほどの高度な技術力が必要だとおもうよ

SONYがサイバーショットで顔認識機能実現させてブームになっただろ?

252:デフォルトの名無しさん
12/03/03 14:19:32.53
>>246
OpenCVでがんばれ


253:デフォルトの名無しさん
12/03/03 15:22:33.39
>>247
/Android/data/パッケージ名/
は消えるはずだけどちゃんとそこにデータ作ってる?
それ以外のデータは消えないよ

254:デフォルトの名無しさん
12/03/03 15:59:36.30
>>249
コンストラクタで画像読み込みに時間がかかるんでしょ
SurfaceViewCreatedは普通ループトリガーだから事後

255:デフォルトの名無しさん
12/03/03 16:00:30.63
Android開発はやはりeclipse必須でしょうか?
我が家のPCにeclipseを入れると固まってどうにもならなくなります。
コマンドラインツールとviでコツコツ作っていけるものでしょうか?
eclipseじゃないと出来ないこと、などがあれば教えてくださいませ。

256:デフォルトの名無しさん
12/03/03 16:02:42.86
迷わず行けよ、行けばわかるさ

257:デフォルトの名無しさん
12/03/03 16:16:55.14
NetBeansでも開発できるよ


258:デフォルトの名無しさん
12/03/03 16:19:52.75
そうなんだ

259:デフォルトの名無しさん
12/03/03 16:41:36.54
>>255
eclipseのバージョンは?
3.5とか少し古くすれば軽くなるぞ。あとはプラグイン減らしたり。

260:デフォルトの名無しさん
12/03/03 16:41:45.72
Eclipse入れないと無理。
補完無いとやってられんよ。画面のデザインとかも無理が出てくる。
どうしてもemacsで開発したい、っていう自己満キチガイが社内にいるんだが
一緒に仕事する上で話が合わないし仕事も遅くて殴りたくなる。早く解雇しろ。

261:デフォルトの名無しさん
12/03/03 16:55:57.36
マ板へ

262:デフォルトの名無しさん
12/03/03 16:58:58.85
エクリプスエディター使いにくい
補完無くても良いからvi使いたい。

でもクラスブラウザーは動いて欲しい

263:デフォルトの名無しさん
12/03/03 17:02:45.07
一般的にはEclipseよりもNetBeansの方が軽い
補完もあるし
ただAndroid開発はEclipseが主流
俺もNetBeansを入れてはいるけどアプリ1本丸々作り上げたことは無い


264:デフォルトの名無しさん
12/03/03 17:08:47.62
EclipseのUIはNetBeansと違ってなんかピンとこないんだよね
でも仕方なく使ってる

265:デフォルトの名無しさん
12/03/03 17:32:45.31
特にデバッグ周りがピンとこないよな
パースペクティブ切り替えないようにしてもやっぱり何か違う

266:デフォルトの名無しさん
12/03/03 17:35:12.69
InteliJでもいけるみたいだけど、最新機能への追従とかはどうなんだろうね

267:デフォルトの名無しさん
12/03/03 18:18:48.64
どうなんだろうね

268:デフォルトの名無しさん
12/03/03 18:31:20.67
ByteArrayOutputStreamなどでバッファを生成しながらwriteしている場合にメモリがなくなっていって

それがruntime.totalMemory() のMAXまで達した(runtime.freeMemory()=0になった)けど、
runtime.maxMemoryまでは十分余裕がある場合って自動的にヒープを空けてくれますか?
それともOutOfMemory?

269:デフォルトの名無しさん
12/03/03 18:48:37.25
っていうか、メモリー足りなくなったらパソコンみたいにファイルにページアウトしてくれれば良いのにね。
「メモリーきついから消すわ」とか酷すぎるよ。


270:デフォルトの名無しさん
12/03/03 19:01:53.68
エミュ起動すると27%で止まるんだけど
何か対策はありますか?

271:デフォルトの名無しさん
12/03/03 19:03:52.23
開発環境を変えればいい

272:デフォルトの名無しさん
12/03/03 19:42:41.53
>>262
vrapper

273:デフォルトの名無しさん
12/03/03 20:16:31.28
>>270
エミュ壊れてる可能性がある
エミュを強制終了したりするとImageファイル内の必要なファイルがごっそり消えたりする
可能ならAVD Managerで作成しなおすのが早い

274:デフォルトの名無しさん
12/03/03 20:21:55.47
>>270
たまにあるわ

275:デフォルトの名無しさん
12/03/03 21:04:36.97
ビルドしたイメージでAVD作りたいんですがどうしたらよいですか?

276:デフォルトの名無しさん
12/03/03 21:28:16.29
>>274
たまにあるよね


277:デフォルトの名無しさん
12/03/03 21:29:57.14
>>276
稀にね

278:デフォルトの名無しさん
12/03/03 21:32:16.65
>>277
極稀にね

279:デフォルトの名無しさん
12/03/03 22:00:54.82
たまの失敗はスパイスだよね

280:デフォルトの名無しさん
12/03/03 22:07:25.42
>>275
snapshot有効にしてSave to snapshotで起動&アプリ転送してエミュ終了
次からはsnapshotから起動すればよい

281:デフォルトの名無しさん
12/03/03 23:18:08.25
質問なんですけど、皆さんボタンを20個くらい作ってそれをonCreatの中で
findViewById(R.id.~)とかやる時にいちいち名前を指定してますよね?

何かfor文で一気にセットする方法無いですかね?

button[20]とか配列つくって
for(i=0;i<20;i++){

}
とかやってその中で一気に指定したいよ。いちいち一個ずつ指定とかめんどくさすぎる。



282:デフォルトの名無しさん
12/03/03 23:20:55.95
IDが連番になるよう配置


283:デフォルトの名無しさん
12/03/03 23:26:31.80
質問です。

メールソフトやメモ帳を開いたときに、
画面下に半透明のツールバーが出ていてボタンがありますが(新規作成、設定、削除、など)
あれはどのようにして配置できるのでしょうか?

一見オプションメニューを固定してるように見えたので
頑張ってみたのですが、どうも違うようです。
ご回答よろしくお願いいたします。

284:デフォルトの名無しさん
12/03/03 23:29:44.09
forループで回せるほど処理が似通ったボタンなら
xmlじゃなくてコードで生成してなんとかしたい

285:デフォルトの名無しさん
12/03/03 23:30:02.66
alpha指定したActivityでできない?

286:デフォルトの名無しさん
12/03/04 00:06:51.84
>>285
ツールバーの為にActivityかぶせるんですか?
半透明じゃなくても、画面の下にツールバーをビシーっと並べたいだけなんですが。

287:デフォルトの名無しさん
12/03/04 00:24:48.16
R.id.~を配列にもっておけばいいじゃない

288:デフォルトの名無しさん
12/03/04 00:54:13.76
>>281
ListViewかGridViewの使用、もしくはJava側で生成することを考える。
一から作ってもいいし、xmlで作ったひな型をinflateで量産してもいい。

289:デフォルトの名無しさん
12/03/04 07:08:49.16
充電中のLED点灯を強制OFFにしたいのですが、どの項目でいじれますか?
そもそも可能でしょうか?
ARROWSで動きさえすれば満足なのですが…

290:デフォルトの名無しさん
12/03/04 09:11:06.75
>>286
Viewを重複できるFramelayoutとかRelativeLayoutにツールバーを配置するviewと他を配置するviewを重ねればいいんじゃない

291:デフォルトの名無しさん
12/03/04 11:42:25.48
解説にあったhtmlソース取得のものなんですが。
public String getData(String sUrl) {
HttpClient objHttp = new DefaultHttpClient();
HttpParams params = objHttp.getParams();
HttpConnectionParams.setConnectionTimeout(params, 1000);
HttpConnectionParams.setSoTimeout(params, 1000);
String sReturn = "";
try {
HttpGet objGet = new HttpGet(sUrl);
HttpResponse objResponse = objHttp.execute(objGet);
if (objResponse.getStatusLine().getStatusCode() < 400){
InputStream objStream = objResponse.getEntity().getContent();
InputStreamReader objReader = new InputStreamReader(objStream);
BufferedReader objBuf = new BufferedReader(objReader);
StringBuilder objJson = new StringBuilder();
String sLine;
while((sLine = objBuf.readLine()) != null){
objJson.append(sLine);
}
sReturn = objJson.toString();
objStream.close();
}
} catch (IOException e) {
return null;
}
return sReturn;
}
取得データが全角文字が文字化けしてしまいます。
全角対応にするには何を追加すればいいでしょうか?

292:デフォルトの名無しさん
12/03/04 11:56:43.02
new InputStreamReader の第2引数に文字コード名 ("ISO-2022-JP" とか "EUC-JP" とか) を指定する

293:デフォルトの名無しさん
12/03/04 12:06:19.51
指定してみました。 どうもそれだけではだめなようです…

294:デフォルトの名無しさん
12/03/04 12:18:39.84
当然 "windows-31j" とか "Shift_JIS" とか "UTF-8" とかも試した?

295:デフォルトの名無しさん
12/03/04 12:24:46.55
"Shift_JIS"でできました。ありがとうございます。

ページによって違うんですね。
全部自動のようなことは出来るんでしょうか?

296:デフォルトの名無しさん
12/03/04 12:44:49.99
出来るといいね
IE とか Firefox とかもがんばって自動検出してるけどたまに失敗して化けることもあるんだから
カンペキな方法はなくて最終的にはメニュー用意してユーザが選択できるようにしてるよね
とりあえず全通りデコードしてみて化けてるっぽい文字の少ないのを採用してみるとか
HTML だったらいったん読み込んで <meta> タグの Content-Type を解析すれば
何か書いてあるかもしれないからそれを見て読み込み直すとか (たまにウソ書く人もいるけど)
聞いた話では Firefox は頻度分析とか使ってるらしいよ

297:デフォルトの名無しさん
12/03/04 12:50:15.61
わかりました。完全な方法というのはないようですね。
参考にさせてもらいます。
ありがとうございます。

298:デフォルトの名無しさん
12/03/04 13:43:53.12
初歩的な質問かもしれませんが、ボタンの横幅を指定したいのですが、
xmlのlayout_widthでdpで指定するのと、onCreateの時に.setWidth(int)で指定するのとどちらがいいのでしょうか?
ちなみにxmlのlayout_widthとwidthの違いが分かりません。。

あと、dpで指定する時のその値の決め方もよく分かりません。。
今はeclipseの画面とエミュで確認して手探りで値を変えている状態です。


299:デフォルトの名無しさん
12/03/04 14:10:25.31
>>290
>ツールバーを配置するview
その配置の仕方で悩んでます。
自分でツールバーのイメージを作って置くしかないんですかね。

300:デフォルトの名無しさん
12/03/04 14:17:46.79
>>298
どっちでもいい

301:デフォルトの名無しさん
12/03/04 14:46:33.70
メールアプリでメール送信時、
I/ActivityManager( 248): Starting: Intent { cmp=jp.co.nttdocomo.carriermail/.activity.SendProgressor (has extras) } from pid 3586
、とintentが渡されるんですが、SendProgressorってのに渡った時に自分で書いた処理を行いたいんですがなんかいい方法ありませんかね?

302:デフォルトの名無しさん
12/03/04 15:18:35.45
>>298
Android dp px 変換

303:デフォルトの名無しさん
12/03/04 15:20:51.60
>>298
wrap_content でなんか困るわけ?
手探りで決めるっていうのは何かおかしい

304:デフォルトの名無しさん
12/03/04 15:27:50.52
>>164です。

結局、service実行中は「PowerManager」でスリープモードに遷移しないようにしました。

pm = (PowerManager)getSystemService(Context.POWER_SERVICE);
lock = pm.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK, "My tag");


305:デフォルトの名無しさん
12/03/04 15:34:23.06
>>303
そういうことじゃなくて、

例えば「オプションメニュー」なら、自動的に画面下に表示してくれるじゃないですか。
それみたいに、元からある機能を使って設定するものじゃないんですかね?
ツールバーって。

306:デフォルトの名無しさん
12/03/04 15:36:54.13
>>299
あなたがやりたいことを汲んで作ってくれるプログラムはまだできてない。



307:デフォルトの名無しさん
12/03/04 16:01:22.70
多分アンドロイドデベロッパーのレイアウト関係の所をしっかり読んで理解出来れば出来ると思うよ。
正直、出来ない奴がいるのは自分のソフトの価値が上がることだから、出来ない人は出来ないまま
のほうがうれしい。

308:デフォルトの名無しさん
12/03/04 16:08:52.65
>>305
3.0 以降ならアクションバーがそういう役割だね
2.x には標準では無いはず
まぁ俺が作るとしたら、画面内に収まるのが確実なら LinearLayout にいれて等サイズで分割するかな
あふれたら more メニューでポップアップとか面倒臭いことを考えるなら自前のレイアウトクラス書く

309:デフォルトの名無しさん
12/03/04 16:24:26.64
>>308
今はおっしゃるとおりLinearLayoutにボタン入れてますが、
これでは何かモサいしバーを表現できないんですね。
やはり面倒なことになるんですかね?
色んなソフトで当たり前のように使われてますが。

310:デフォルトの名無しさん
12/03/04 16:25:59.13
モサいとかバーっぽいとか表現とかはすべて絵次第だろ
レイアウト的には問題ない

311:デフォルトの名無しさん
12/03/04 16:35:44.98
>>309
actionbarcompatってのがサンプルに入ってるからモロパクリすれば良い。

312:デフォルトの名無しさん
12/03/04 19:09:07.51
メモリの仕様状況により直前のActivityが生きていることもあれば死んでいることもあると思うのですが、それをチェックする方法ってありますか?
あったら、実装のヒントを教えてもらえないでしょうか

313:デフォルトの名無しさん
12/03/04 21:21:49.33
フレームをこういう形の構造にして、
それぞれの四角に画像とボタンを埋め込みたいのですが・・・
やり方が分かりません・・・

テーブルレイアウトのXMLをいじるだけでは無理そうなのですが・・・

┌───┐
│        │
├─┬─┤
│   │   │
├─┤   │
│   │   │
│   ├─┤
└─┴─┘

314:デフォルトの名無しさん
12/03/04 21:25:05.68
>>313
リニアレイアウトの上にリニアレイアウトを置けば簡単だよ。

315:デフォルトの名無しさん
12/03/04 21:34:10.91
ライナーとリレイティブとフレームがあればだいたいどうにかなるよな

316:デフォルトの名無しさん
12/03/04 21:55:16.09
>>314
>>315
ありがとうございました。
weightで分割することでできました

317:デフォルトの名無しさん
12/03/04 23:19:47.29
Preferenceのキーが存在するかどうか
判断する方法ありますか?

318:デフォルトの名無しさん
12/03/04 23:21:43.33
Preference#containsで分かりました

319:デフォルトの名無しさん
12/03/04 23:40:44.29
LauncherPro Shortcut CreatorでNotificationを開くショートカットを作成したいのですが
どこにどの値を入れていいかわかりません。
お手隙の方がいましたら是非教えて下さい
URLリンク(launcherpro.com)
URLリンク(developer.android.com)

320:デフォルトの名無しさん
12/03/05 02:51:23.39
「Unity」という開発環境でAndroidアプリつくってる人おる?
3Dゲーム作るときようの無料開発環境なんだけどこいつでもアプリ作れるらしくてさ。
これ使えればAndroidで3Dゲーム作るのめっさ簡単になりそうなんだけど・・・

321:デフォルトの名無しさん
12/03/05 02:57:09.45
今の時代で3Dゲーム作る環境は何がいいんだろうね
そこら辺はあんまりわからないから聞いてみたい

322:デフォルトの名無しさん
12/03/05 03:00:09.84
Androidかどうか知らんがUnity技術者募集の求人見たことあるから使われてるんじゃないの

323:デフォルトの名無しさん
12/03/05 05:06:47.71
public class TestView extends SurfaceView implements SurfaceHolder.Callback {
public void start() {
try {
executor.shutdown();
} catch (Exception e) {}
executor = Executors.newSingleThreadScheduledExecutor();
executor.scheduleAtFixedRate(new Runnable() {
public void run() {
if (activityAndroid.leftSensor)
img.move(0);
if (activityAndroid.rightSensor)
img.move(1);
draw();
}
}, 100, 100, TimeUnit.MILLISECONDS);
}
}
上記のようにスレッドを開始しているのですが、drawを行なっている間隔と別に
imgを1秒間隔で自動的に動かしたいと思っています。
この場合、スレッドを別に作成を行わなければいけないのでしょうか?行うとしたら下のようなソースでも大丈夫でしょうか?

324:デフォルトの名無しさん
12/03/05 05:07:23.65
public void start() {
try {
executor.shutdown();
} catch (Exception e) {}
executor = Executors.newSingleThreadScheduledExecutor();
executor.scheduleAtFixedRate(new Runnable() {
public void run() {
draw();
}
}, 100, 100, TimeUnit.MILLISECONDS);
executor2 = Executors.newSingleThreadScheduledExecutor();
executor2.scheduleAtFixedRate(new Runnable() {
public void run() {
if (activityAndroid.leftSensor)
img.move(0);
if (activityAndroid.rightSensor)
img.move(1);
}
}, 100, 1000, TimeUnit.MILLISECONDS);
}

325:デフォルトの名無しさん
12/03/05 05:09:46.49
うん

326:デフォルトの名無しさん
12/03/05 08:16:44.35

顕正新聞 平成24年2月5日号「原発全廃特集号」

原発は日本を滅ぼす、即時全廃せよ
人のDNAを破壊、国土を居住不能にする
代替は天然ガス・コンバインドサイクルで十分
惨禍もたらすを知って推進するは犯罪

URLリンク(d.hatena.ne.jp)

327:デフォルトの名無しさん
12/03/05 08:17:59.20
自身でテストすりゃ解るだろうに。

328:デフォルトの名無しさん
12/03/05 08:24:21.41
>>325
ありがとうございます><
>>327
すみません・・・動くかどうかの確認ではなく
ソース自体に不備がないかの確認です・・・
スレッドの作成自体が不恰好だったので
これでも問題は無い?と言う質問でした><

329:デフォルトの名無しさん
12/03/05 08:44:54.27
原発は地下に作れば済む話
穴掘って配管やケーブルを伸ばすだけだから現在の技術で可能
建設費の増加分は二割以下
最悪の事故でも被害は地下核実験程度で済み放射能が漏れず安全
津波などの自然災害だけでなくテロなどの攻撃にも強くなる


330:デフォルトの名無しさん
12/03/05 08:52:13.61
地下だと冷却できないので爆発する。

331:デフォルトの名無しさん
12/03/05 09:08:24.62
荒らしに触るとかどんだけ阿呆だよw

332:デフォルトの名無しさん
12/03/05 09:26:31.37
リニアーレイアウトの多重構造にボタン埋め込んだら反応しません。
ボタンって、最上位じゃないと反応しないんですか?

333:デフォルトの名無しさん
12/03/05 09:31:31.58
そうだおっおっおっ(^ω^)

334:デフォルトの名無しさん
12/03/05 10:23:51.41
ボタンが最上位じゃないと反応しないなら、リニアーレイアウトに埋め込んでやるってのもできないんですか?

335:デフォルトの名無しさん
12/03/05 10:31:56.42
おまえはこれからも2ちゃんで「これはどうですか?あれはどうですか?」って
聞きながら開発するのか?
おまえが聞いてることは全部アンドロイドデベロッパーのとばっくちに書いてある事ばかりだ。

ある程度の質のプログラム書くつもりなら
まずはある程度の英語を読めるようにするのは避けられない。

10年前ならそこそこ良質な書籍が発売されたかも知れないけど
今はがんばって翻訳したりなんなりしてもさくっとコピペされて
アフェリエイトブログとかに転載されるのが落ちだし、良質の文書の
日本語化はどんどん期待できない状況になっていってる

英語の文書をある程度すらすら読むのはそれなりに大変だと思うけど、自分で解決してる人は
その努力をしたから読めるわけで、いちいち聞いて解決しようとしてる人たちは
これからもずっと、分からないことは2ちゃんで聞いて解決するつもりなのか?

336:デフォルトの名無しさん
12/03/05 10:36:22.59
どのViewGroupでもボタンが重なってたら最上位のボタンしか反応しないお(^ω^)
もし下層のボタンを反応させたいなら上層のボタンのListenerメソッドから
TouchEventならdispatchTouchEvent()で下層のボタンにディスパッチするか
ClickイベントならperformClick()で下層のボタンをクリック扱いにするお(^ω^)
説明ヘッタクソですまんお(^ω^)

337:デフォルトの名無しさん
12/03/05 10:54:20.65
>336
w 糞プログラム乙

338:デフォルトの名無しさん
12/03/05 11:52:38.09
右90度の横画面と、左90度の横画面でレイアウトの異なる画面表示を考えています。
configrationChangedで通知を受け取ろうと思ったのですが、orientationでは二つの画面は区別ができないようです。
自分でセンサから傾きを受け取って、requestedOrientationで画面設定を行えば出来そうなのですが、もっと簡単な方法はないでしょうか?

339:デフォルトの名無しさん
12/03/05 12:14:28.63
>>335
私ですか?
確かにアプリケーション開発に関してはテキストで調べるよりもネットで検索したりググったほうが早いので安易にかんがえていたふしがありました


>>336
ありがとうございました。
ただ、問題は、ボタンが複数重なったことじゃなくて、
LinearLayout(縦)
→LinearLayout(水平)
→→LinearLayout(水平)
→→→Button (match_parent)
→→→TextView (match_parent)

この状況にて、Buttonが作動しなかったんです
なんとかググって探してみます

340:デフォルトの名無しさん
12/03/05 12:23:54.22
Advanced Task Killer とかのタスカーアプリって
どうやって他のプロセスとかサービスとかkillしてるの?

341:デフォルトの名無しさん
12/03/05 12:56:49.84
>>340
ActivityManager.RunningTaskInfoで取得して
killProcess(int PID)で切ってやればOK

342:デフォルトの名無しさん
12/03/05 14:18:45.80
>>341
まじで!サンクス!
KILL_BACKGROUND_PROCESSES とか要りそうだね
やってみる!

343:デフォルトの名無しさん
12/03/05 14:37:31.28
killProcessは自プロセス以外もキルできるんだっけ?

344:デフォルトの名無しさん
12/03/05 14:57:21.41
そういう公式リファレンスに無い情報ってどうやって見つけるんだ?

345:デフォルトの名無しさん
12/03/05 15:04:42.01
>>343
javadocにはそう書いてあるね・・・
バックグラウンドは
KILL_BACKGROUND_PROCESSES

ActivityManager.html#killBackgroundProcesses
すれば殺せそうだけど、
フォアグラウンドはどうすればいんだろ

346:デフォルトの名無しさん
12/03/05 15:05:38.53
>>345
ミス
javadocには自分か、自分が起動したプロセスしか殺せないってなってる

347:デフォルトの名無しさん
12/03/05 15:08:02.85
androidプログラミング初心者でストップウォッチを作ってみてるんですが
chronometerがいまいちよくわかりません
SystemClock.elapsedRealtime()は起動してからの時間をカウントアップしてると聞いたのですが
chronometer.setBase(SystemClock.elapsedRealtime())するとなぜ時間が0秒に戻るのでしょうか?
どなたかご教授お願いします

348:デフォルトの名無しさん
12/03/05 15:10:01.11
教えて下さい。
froyo-x86ソースを取得後、ビルドしてエミュレータを立ち上げようとすると
エラーが出ます。コマンドに間違いがあるのでしょうか?
まったく検討がつきませんので同じ経験がある方、思い当たることがある方
教えて下さい。

【コマンド】
% cd mydroid
% source build/envsetup.sh
% lunch full_x86-eng
% make -j2
% emulator-x86

【エラー】
emulator-x86: command not found

349:デフォルトの名無しさん
12/03/05 15:34:19.53
>>348
pc初心者スレ行きじゃないか?

350:デフォルトの名無しさん
12/03/05 15:42:36.99
>>346
やっぱりそうだよね
そのAdvancedなんちゃらってのは
本当に2.2以上でタスクキルできるのだろうか?

351:デフォルトの名無しさん
12/03/05 16:04:29.59
>>350
connectbot で ps しながら Advanced~ でキルしてみたけど
一応ちゃんと殺せてる
バックグラウンドもフォアグラウンドも両方殺せてる
バックグラウンドは
ActivityManager#killBackgroundProcesses(String packageName);
で殺せるとして(KILL_BACKGROUND_PROCESSES 要求ついてる)
フォアグラウンドはどうしてるんだろうね
と思ったけどAdvanced~がフォアグラウンドな時点で他はバックグラウンドかw

352:デフォルトの名無しさん
12/03/05 16:41:31.26
>>344
Androidのソースをダウンロードして手元に置いとくといろいろ便利ですぜ

353:デフォルトの名無しさん
12/03/05 16:44:38.40
>>347は自己解決しました
setBaseは現在の時刻から引数の時刻を引いたものをsetするって意味だったんですね

354:デフォルトの名無しさん
12/03/05 17:01:00.71
>>351
そうなのか
2.1以前はrestartPackageでやってたけど
2.2以降はそれ使えばいいのか
あとググったらHOMEなActivityを呼んで
フォアのタスクをバックに持ってきてキルする
方法があったけど問題ありそうだな

355:デフォルトの名無しさん
12/03/05 17:45:19.53
ServiceのonStart()はサービス起動時と
システムによってサービス再起動された時の
どちらの場合も呼ばれるという認識で合ってる?

356:デフォルトの名無しさん
12/03/05 18:26:32.67
ライブ壁紙を実機でデバッグしてて、canvas.getHeight()すると
解像度1280x720のエミュでは値が1280になりますが
同じ解像度の実機(L-01D)で試してみると800になってしまいます。
実機でcanvasのheightを1280にすることってできるんでしょうか?

357:320
12/03/05 18:42:35.23
>>321-322
「Unity」だけど、質問ばかりじゃいかんよなーと思い、今日本屋サクっと言ってきた。
普通に書籍並んでたので立ち読みした感じだと、無料版と有料版にわかれてて
無料版はWindows、Mac、WebPlayer(Flashみたいにブラウザ上から起動できる)用のビルドしかできんそうだ。
有料版(36000円)を買えばAndroidとiOS用にビルドできるようになるんだと。
有料版は30日間の体験版もあるそうだ。
JavaScriptかC#でやるようで、3Dゲーム作るならUnityよさそうだった。

358:デフォルトの名無しさん
12/03/05 18:46:09.20
つかれた

359:デフォルトの名無しさん
12/03/05 18:47:05.71
C#勉強しないといけないのか大変だね

360:320
12/03/05 18:47:33.87
URL長すぎて貼り付けられないんだけど
ようつべで「Unity tutorial 球転がしゲーム」で検索かけると出てくる動画みてみるとわかるけど
3Dプログラムがおっそろしく簡単に書ける・・・
過去の開発ツールのいい所全部融合させたみたいな感じに個人的にはオモタ

てかやっぱ本屋は偉大だなw

361:デフォルトの名無しさん
12/03/05 18:48:01.10
いきなり有料を買うのはやめたほうがいい
今の時点では調べるほどにガッカリする

362:デフォルトの名無しさん
12/03/05 18:49:31.56
>>361
俺が買ってしまう前に少しでいいから詳しく!お願い

363:デフォルトの名無しさん
12/03/05 18:51:21.22
まずは無料のやつでがっちりやってみる事だ
それからでも遅くは無い

364:320
12/03/05 18:53:03.17
いきなり有料版ははやまりすぎだろ・・・まずは体験版さわってみるべきだ

金額は不明だったけどライセンス料っての払えばPS3、Wii、X-BOX360のソフトも作れるんだとさ。
プロ用だなこれ・・・

365:デフォルトの名無しさん
12/03/05 19:01:07.36
これか
URLリンク(www.youtube.com)
これからはUnity一択なのかねよく知らないけど

366:デフォルトの名無しさん
12/03/05 19:20:53.54
複数OS対応の開発環境はコケる印象あるんだけどな
Javaとか

367:デフォルトの名無しさん
12/03/05 19:49:08.33
AndroidにPerlとかインストールできないのですか

368:デフォルトの名無しさん
12/03/05 20:11:52.83
出来るよ

369:デフォルトの名無しさん
12/03/05 20:21:44.94
byte [] buffer;
BitmapFactory.decodeByteArray( buffer )
で中身がpngのバイト配列を渡してBitmapを作成したのですが、これはBitmap用にbufferからコピーされた新しいメモリ領域ががとられているのでしょうか?
それともbufferへの参照が保持されているだけでしょうか?

decodeしたあとbufferの内容を書き換えてしまっても影響はありませんか?


370:デフォルトの名無しさん
12/03/05 20:22:22.79
Unityはゲームエンジンとツールでしょ
Monoで.NET動かしてその上に乗っかってるだけ

371:デフォルトの名無しさん
12/03/05 20:22:45.23
ListViewで、一番下までスクロールしているかどうかを調べるメソッドってありませんか?


372:デフォルトの名無しさん
12/03/05 21:00:33.70
>>355
onCreate なら呼ばれる
onStartCommand が START_REDELIVER_INTENT か START_STICKY を返してれば onStart も呼ばれる

373:デフォルトの名無しさん
12/03/05 21:01:29.79
>>369
コピーするよ
影響ないよ

374:デフォルトの名無しさん
12/03/05 21:09:06.58
>>371
getLastVisiblePosition とかどう

375:デフォルトの名無しさん
12/03/05 21:15:43.07
>>374
それだと最後の要素が少しでも画面内に出た時点で処理してしまうので、
最後までスクロールして、これ以上進めませんっていうのが欲しいのです

376:デフォルトの名無しさん
12/03/05 21:27:09.92
下のようなメニューを作ったら、ダイアログが画面横幅いっぱいになってしまいました。
どこで調節するのでしょうか?
new AlertDialog.Builder(ExifViewerActivity.this).setAdapter(new ArrayAdapter<String>(Xxxx.this, android.R.layout.simple_list_item_1, new String[] { "Menu 1", "Menu 2" }),null).show();

377:デフォルトの名無しさん
12/03/05 21:27:53.21
Listの最後に自分で認識できる最終用アイテムを置いても>>374と同じかなぁ?

378:デフォルトの名無しさん
12/03/05 21:42:11.02
うん

379:デフォルトの名無しさん
12/03/05 23:03:06.02
>>330
お前めちゃくちゃ頭悪いな


380:デフォルトの名無しさん
12/03/05 23:20:19.62
2Dゲームエンジンは何がいいんだ
やっぱe3roidか

openGLイミフな俺にはすべてがイミフ
もうやめよう

381:デフォルトの名無しさん
12/03/05 23:26:31.06
実機でデバッグするときSDカードにアクセスする場合パスはどうなるのでしょうか?


382:デフォルトの名無しさん
12/03/05 23:31:41.98
SDカード

383:デフォルトの名無しさん
12/03/06 00:30:51.13
>>380
この業界に向いてない

384:332, 334
12/03/06 02:05:45.25
すいません、あれから帰宅してこの時間までAndroid Developersのサイトを見たのですが
自分が知りたいことはリファレンスになかったのですが
どの部分を参照すればいいのでしょうか

ただ、>>339は原因はわかりまして、リニアーレイアウトを何個入れ子にしてそこにButtonを置いても
クリック自体は問題なくできるようですが、TextViewと重ねてしまうと反応しないようです。

多分教えて頂いたボタン重ねのときと同じく、TextViewをクリックしたときのイベントリスナーで
Button.performClick()をやればいいのかなと今の時点で思ってますが。

385:デフォルトの名無しさん
12/03/06 02:26:57.77
お前さんは一体何がしたいんだ


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch