Androidプログラミング質問スレ Part17at TECH
Androidプログラミング質問スレ Part17 - 暇つぶし2ch112:デフォルトの名無しさん
12/01/15 23:07:59.04
jAVAsCRIPT

113:デフォルトの名無しさん
12/01/15 23:10:11.47
>>111
ありがとうございます。
やはりそうでしたか。
グーグルマップではなくYAHOOマップなら、
スケール表示がありそうなんですが、
グーグルマップだt

114:デフォルトの名無しさん
12/01/15 23:10:16.00
>>112
>jAVAsCRIPT
意味不ななぞなぞはよそでおk

115:デフォルトの名無しさん
12/01/15 23:10:37.88
失礼しました。
グーグルマップだと少し難しそうですかね?

116:デフォルトの名無しさん
12/01/15 23:12:30.34
グーグルマップでタイトルを
setTitle("TEST");
で変更できるとおもうのですが、
このタイトルを改行したいのですが
できますでしょうか。
setTitle("TEST/nTEST2");
これですと、TEST TEST2
と表示されてしまいます。

117:デフォルトの名無しさん
12/01/15 23:12:51.11
>>108です。解説ページ見つけました。自己解決しました。

118:デフォルトの名無しさん
12/01/15 23:17:10.65
>>102
デバッグ時にソースのないSDKのクラスを開いたときに出るメッセージでしょ
つまりデバッガの使い方が理解できていない

119:デフォルトの名無しさん
12/01/15 23:17:56.88
自己解決したらどう解決したのかもついでに書いて来なよ

120:デフォルトの名無しさん
12/01/15 23:21:26.91
99にはjavaで…とは書かれて無いな。
さすがにそこまでエスパーにはなれんよ。

121:デフォルトの名無しさん
12/01/15 23:24:18.06
>>116
改行=¥n

122:デフォルトの名無しさん
12/01/15 23:27:36.72
>>116
どこのグーグルマップだ?

123:デフォルトの名無しさん
12/01/15 23:28:15.15
>>106
2段目をtextviewにしてsetText()する

124:デフォルトの名無しさん
12/01/15 23:28:38.99
>>121
自分のパソコンで打つと
¥n が逆スラッシュnになってしまいます。

125:68
12/01/15 23:29:20.50
>>73

どうもです。
地図のような複雑な形に対応できるのかがわかりませんが、考えて見ます。

126:デフォルトの名無しさん
12/01/15 23:30:33.35
>>122
あ、グーグルマップではなく
アプリを起動させたときの上のタイトルのとこです。

127:デフォルトの名無しさん
12/01/15 23:50:20.42
>>67
キャッシュの方ですか?

128:デフォルトの名無しさん
12/01/15 23:53:39.02
民主党には朝鮮人など外国人のなりすまし、スパイが約90名在籍している
野田内閣は過半数が帰化人

野田はどうだろうか
韓国人から賄賂を貰い、韓国人の集いに出席している野田は

首になった蓮○はシャブで逮捕歴のある人間と仲が良いな。蓮○自身はやってんの?
い-6-1
テレビが言えない民主党のスポンサー=韓国北朝鮮
あとはもうわかるよな



129:デフォルトの名無しさん
12/01/16 00:05:39.23
Patternクラスを使おうとすると「ソースが見つかりませんでした」とでてエラーで落ちてしまうんですが、何故でしょうか。
やろうとしてることは、htmlソース取得後matcherを用いてhtmlリンクのみ抜き出そうとしています。
URLリンク(pgbox.grush.jp)を参考にしたんですが、うまくいきません。
よろしければご教授ください。

130:デフォルトの名無しさん
12/01/16 00:11:23.96
>>130
僕のプロクラムがうまく動きません。
どこでおかしくなっているかは言えません。
アホか貴様は

131:デフォルトの名無しさん
12/01/16 00:12:53.23
>>130
自己紹介乙

132:デフォルトの名無しさん
12/01/16 00:15:21.51
>>129
自分でデバッグしてね

133:デフォルトの名無しさん
12/01/16 00:20:13.10
アプリ配布時に使う証明書って一体何を証明するものなの?
なんで必要なの?


134:デフォルトの名無しさん
12/01/16 00:28:57.68
>>133
「証明書」という響きで利用者を安心させるため。
実際は役に立ってないが付けておくのがJava文化。

もし開発者のサイトで後悔鍵を配布していたら、
開発者が作ったapkなのか中華な偽アプリなのか一応判別はできる

135:デフォルトの名無しさん
12/01/16 00:36:51.33
なるほど
ありがとう

136:デフォルトの名無しさん
12/01/16 00:52:11.44
TableLayoutでボタンを敷き詰めた画面でフリック切り替えさせようとしてるんですが
ActivityのonTouchEventが発生しなくて、
ボタン全部にOnTouchListenerつけたら何とかできたんですが
タッチイベントでボタンとかが受け取っちゃうとそこで終わっちゃうんでしょうか?

137:デフォルトの名無しさん
12/01/16 01:41:10.98
>>136
上位まで返せば終わらない

138:デフォルトの名無しさん
12/01/16 06:52:00.82
Activityじゃない普通のクラスでgetSharedPreferencesを取るのってどうすればいいの?
getContextから取ろうとしてgetPackageName渡そうとしてダメだったりいろいろ不思議

139:デフォルトの名無しさん
12/01/16 07:12:24.01
>>138
contextがなきゃ無理では。
サービスでもBroadcastreceiverでもすぐにContextはとれると思うが。

140:デフォルトの名無しさん
12/01/16 07:52:42.64
>>133
アップデートのときにチェックされる
違う証明書だと一旦アンインストールしないとインストールできない

141:デフォルトの名無しさん
12/01/16 07:54:49.20
>>138
何でこんな設計にしたのか理解に苦しむけど
Contextはずっとついて回る
どこかのパラメータから貰わないと何もないところからは作れない

142:デフォルトの名無しさん
12/01/16 09:01:20.75
>>133
試したことないけど、キーストアファイルが違うと
アプリのアップデートが出来ないらしい。
そこらへんのセキュリティとかが、「AndroidSecurity」
という本に書いてあるので、ぜひおすすめ。


143:デフォルトの名無しさん
12/01/16 10:53:41.83
AアクティビティからBアクティビティに移動して、
戻るキーでAアクティビティに戻ったときに、Aアクティビティで処理させたいです。
しかし、戻ったときにAのonResumeもonRestoreInstanceStateも走らないので、処理するタイミングがありません。
ボタンを押したとき、とかでなく戻ってきたときに呼ばれるものはないのでしょうか。

144:デフォルトの名無しさん
12/01/16 11:03:50.65
startActivityForResult→onActivityResult

145:デフォルトの名無しさん
12/01/16 11:25:23.63
レイアウトについて質問です。
TableRow内にあるTextViewに任意の文字を表示するのですが、
TextViewの文字量次第でレイアウトが崩れます
URLリンク(iup.2ch-library.com)

文字量の制限を除いて、レイアウトの型崩れを抑える方法はないのでしょうか

146:デフォルトの名無しさん
12/01/16 12:52:12.47
>>123
ありがとう。
でも、TextViewにsetTextする方法は、
layout上に自分で配置したもののから
findViewByIdしてから実行する方法しか知らないのです。
listViewってitemを複数持っているから、
idで指定するのはできないし、どうやれば良いの??

147:デフォルトの名無しさん
12/01/16 13:38:36.19
EclipseのDDMS の FileExplorer上の操作(-ボタン) でファイルを消す事はできるんだけど、
ディレクトリを消そうとすると(-)ボタンがグレイアウトしてボタンを押せず、ディレクトリを消す事ができません

FielExplorerでどう操作すればディレクトリを消せますか?



148:デフォルトの名無しさん
12/01/16 13:50:35.47
アクティビティ間で値を受け渡そうとputExtraを使って
遷移先でgetintentしているのですが、値が受け取れません。

getStringExtraの引数が間違っている、というわけではなく
デバッガで見るとstartActivityするインテントには確かにputExtraした値がmExtrasのmMapに入っているのですが、
getintentで取得したインテントにはmMapには何も入っていないので、引数を何に変えても何も受け取れない状態です。

何か設定した値がリセットされるとか、getintent以外の方法で取得するとかといった方法があるのでしょうか。


149:デフォルトの名無しさん
12/01/16 14:10:25.95
>>148
mMapってなんだろうか
Serializableなものじゃないと渡せなかったはず

150:デフォルトの名無しさん
12/01/16 14:12:26.05
>>146
getViewイベントのconvertViewでfindViewByIdすればよい

151:デフォルトの名無しさん
12/01/16 14:34:27.55


ステルスマーケティングまとめ
A URLリンク(www.dotup.org)
B URLリンク(www.dotup.org)
 →  ステマの黒幕は ソニー(アニプレックス)、角川

関連キーワード はちま 清水鉄平(はちまの本名) KND 元ソニー会長出井伸之
        はちま管理人によるみかじめ料を払わない特定メーカーへの叩き
        まとめサイトは企業が運営 コメント欄も社員の煽り(が殆ど)
おまけ
2ch監視が仕事のスクウェア社員w↓
96 名前:番組の途中ですがアフィサイトへの転載は禁止です[sage] 投稿日:2012/01/16(月) 12:41:25.60 ID:X9dFbc830
proxy1.square-enix.co.jp - 2012/01/16 12:38:51 - Japan - Commercial(企業)
IP :61.195.58.8 (不明)
Referer :URLリンク(ipatukouta.altervista.org)
USER-AGENT :Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727; InfoPath.2; .NET CLR 3.0.04506.30; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)


【株式会社KND・清水鉄平】はちま起稿が特定され黒い関係が明らかに★78【黒幕を特定せよ】
スレリンク(poverty板)

152:デフォルトの名無しさん
12/01/16 14:47:39.16
一つのactivityから複数のインテントを発行する場合の処理の順番ってどうなってるんですか?

String url = "URLリンク(hoge)<)";
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
startActivity(intent);

こんな感じのソースだとwaitが効かないんですが。。。
やりたいことは時間差でブラウザを立ち上げることです。


153:デフォルトの名無しさん
12/01/16 14:49:38.75
>>150
正直、自分もmMapは良く分からんのですが以下のようにputするとそこに値が入るんですね。
startIntent.putExtra("1" , "1");
startIntent.putExtra("key" , "value");
startIntent.putExtra("test" , "test");

でも、遷移先でgetintentで取得したintentのmMapには何も無く
intent.getStringExtra("1");
intent.getStringExtra("key");
intent.getStringExtra("test");
ってしても全部nullしか帰ってこないんですね。


154:デフォルトの名無しさん
12/01/16 14:55:36.26
googleAPI使ったアプリを開発したい初心者はとりあえずこれでも読んどけばいいんじゃね?
URLリンク(www.amazon.co.jp)

155:デフォルトの名無しさん
12/01/16 15:33:29.10
URI 長すぎ
URLリンク(www.amazon.co.jp)

156:デフォルトの名無しさん
12/01/16 15:34:29.00
googleAPI と GoogleAppEngine は別物だぞ

157:デフォルトの名無しさん
12/01/16 15:39:13.17
>>152
もしかして、その呼び出しをすると、1秒たってからブラウザ立ち上がるって現象起きてない?
メソッドからOS側の機能使うと、
メソッド内で機能を呼び出してすぐ実行じゃなくて、
メソッドが終わったら、メソッド内で呼び出された機能を順番に実行するような動きが基本なんで、
どうしても、数秒後とかに動かしたいなら、
別にスレッドを準備して、時間差で動かす必要がある

158:デフォルトの名無しさん
12/01/16 15:55:07.86
>>157
ありがとう!
別スレッドから呼び出す事にします。

159:デフォルトの名無しさん
12/01/16 16:52:32.95
アプリのパッケージ名ってどうしてます?
やっぱり将来的にマーケットに登録しようとか考えてると、
jp.co・・とかから始めたほうが良いのでしょうか?
個人だとjpのあとに何を入れるべきかもわかりませんし。

160:デフォルトの名無しさん
12/01/16 16:59:09.36
>>159
おれは最初に読んだ本の影響で
my.application.○○
にしたままだわ

161:デフォルトの名無しさん
12/01/16 17:02:01.26
ドメイン取れよ

162:デフォルトの名無しさん
12/01/16 17:08:37.42
>>159
自分のドメインじゃなかったっけ?
取れそうな名前じゃないと意味ないんじゃ?

163:デフォルトの名無しさん
12/01/16 17:15:09.05
被んなきゃなんでもいいんじゃね?

164:デフォルトの名無しさん
12/01/16 17:25:43.73
>>160-163
ドメインはちょい気が重いんで(年間数千円かかる)、
URLリンク(jumbuck.cocolog-nifty.com)
ここを参考にして、Package BOFに登録してない名前を登録して使おうと思います。
jpから始めれば、世界レベルでほぼユニークでしょうし。

165:デフォルトの名無しさん
12/01/16 17:29:44.77
xxxがいいんじゃないかな。

166:デフォルトの名無しさん
12/01/16 17:31:58.06
govで

167:デフォルトの名無しさん
12/01/16 17:33:08.21
proドメインカッコいい

168:デフォルトの名無しさん
12/01/16 17:38:13.13
>>153
extra以外は同じ?
あと、LogCatに飛んでるインテントのログ出るよ。


169:デフォルトの名無しさん
12/01/16 17:53:41.09
>>158
waitじゃなくてThread.sleep使うんじゃない?

170:デフォルトの名無しさん
12/01/16 18:42:33.47
>>164
俺はドメイン取ってないけど Blogger のホスト名使ってたよ

171:デフォルトの名無しさん
12/01/16 19:08:12.17
>>162
dynとか無料のでいいじゃん

172:デフォルトの名無しさん
12/01/16 19:36:18.40
自分のGmailアドレス逆さしたらエエやん

173:デフォルトの名無しさん
12/01/16 19:50:00.34
誰か、NDK-r7+eclipseの環境でネイティブデバックできてる人いる?
もしいたら、環境構築からのやり方を教えていただきたい。

現状、デバックシンボルが見つからない状態なのと
デバック情報ファイルが*********.o.dという謎の状態になってるのが
怪しいとにらんでる状態で手詰まり。

174:デフォルトの名無しさん
12/01/16 20:23:57.62

ファイルパスからURIパスを取得する方法があったら教えて下さいまし…

175:デフォルトの名無しさん
12/01/16 20:49:00.12
ViewクラスのonDrawって強制的に呼び出せない?
それともonDrawに記述している処理を別に作って、都度呼び出すのが普通かな?
onTextChangedごとにonDrawで再描画したいんだよね

176:デフォルトの名無しさん
12/01/16 20:54:47.35
View#invalidate

177:デフォルトの名無しさん
12/01/16 21:51:05.02
普通のXML作成って、XML+スキーマファイル(.xsdとか)って感じなんですが、
AndroidにおけるXMLって、XMLの中に定義も含まれてるのでしょうか?

178:デフォルトの名無しさん
12/01/16 22:23:28.83
>>177
適当なサンプル見たらわかると思うけど、外部にある定義を参照する記述がxmlファイル中にある。


179:デフォルトの名無しさん
12/01/16 22:27:56.68
名前空間は使ってるところもあるけど全部じゃないしスキーマもないよ
定義なんて処理系が勝手に検証に使うだけで別に必須じゃない

180:デフォルトの名無しさん
12/01/16 22:36:02.52
>>175
invalidate

181:デフォルトの名無しさん
12/01/16 22:37:53.08
>>159
正直なんでもいい。
ただ恥ずかしいのはやめとけ。

182:デフォルトの名無しさん
12/01/16 22:38:14.57
このコードについて質問
URLリンク(ideone.com)
画面にタッチすると AlertDialog でメッセージを表示するだけの単純なアプリ

自作メソッド showMessage() を呼ぶ事により 1 発で Windows や DoJa のような
(ボタンを押すまで待つ) メッセージボックスを出したい

が、その中で View#showDialog() へ渡った制御が AlertDialog の実際の表示が
済む前に返って来てしまう
つまり画面には、コメント <1> の地点で "表示したよ" が表示された後にダイア
ログが表示されてしまう

それならと、AlertDialog でボタンが押されるまで dialogShown メンバをポーリング
しようとしてコメント <2> のコード (Thread#sleep()) を挟んだら、ハングアップして
しまった

何がまずいのか、どうしたらいいのかお知恵を拝借したい

183:デフォルトの名無しさん
12/01/16 22:38:33.43
>>159
俺は飼ってる猫の名前

184:デフォルトの名無しさん
12/01/16 22:43:13.97
>>182
いかなる理由があってもUIスレッドを止めてはいけない
閉じられたあとの続きの処理はsetPositiveButtonのonClickに書く

>>159
8文字くらいのランダム文字列

185:177
12/01/16 22:43:25.63
>>178
>>179
ありがとうございます

いまいちXMLの仕様について掴めないのですが、普通のXMLとは違って細かく定義作れるわけではないのでしょうか・・・


186:デフォルトの名無しさん
12/01/16 22:50:05.06
>>184
ありがとう、UI スレッドについては了解した
でも、目的は呼び出したらダイアログのボタンが押されるまで制御を返さない
メソッドの作成なので、setPositiveButton の onClick() じゃ適合しないんだ

187:デフォルトの名無しさん
12/01/16 22:55:32.07
>>186
どうしてもというなら呼び出しから別のスレッドでやるしかない
そんなアホなことするより、コールバックをパラメータとして受け取って
showMessageBox("兄貴と私", "ボディービル", new OnClickListener() {
public void onClick(DialogInterface dialog, int which) {閉じられた後の処理});
じゃいかんの
最後のパラメータはsetPositiveButtonの引数に渡す

188:デフォルトの名無しさん
12/01/16 23:07:01.22
>>159
こういう時のためのnameドメインだろ

189:デフォルトの名無しさん
12/01/16 23:10:27.04
>>187
うーん、どうも俺が考えている事はそのまま実現できなさそうなので、
もうちょっと考えを練ってみることにするよ

190:デフォルトの名無しさん
12/01/16 23:33:26.85
プログレスダイアログを消えないようにするにはどうしたらいいんですか?
縦横回転すると消えてしまいます

横に使いたいので横に固定したんですが007shは開いた状態にすると固定を無視して縦になり初期化されます
プログレスダイアログが消えたときに復活させるかonCreateをさせない方法を教えて下さい

191:デフォルトの名無しさん
12/01/16 23:50:37.02
左から画面の幅の30%だけ離れた位置にボタン置きたい時ってどうするのがベスト?
今はAbsoluteLayout使って、OnCreateの中でも解像度取得して位置指定してるんだけど
AbsoluteLayoutが非推奨なのが気になる

192:デフォルトの名無しさん
12/01/16 23:54:49.46
質問

MacOSXで開発しているけど、
エミュレーターで実行するときにエミュレーターのMENUボタンを押さないとプログラムが開始しない。
こういうものなのでしょうか?

193:デフォルトの名無しさん
12/01/17 00:04:47.09
>>185
何のXMLかによるね。
マニフェストやレイアウトに関しては、定義はきっちり決まってる。
独自のデータなら、勝手に定義すればいいよ。

194:デフォルトの名無しさん
12/01/17 00:20:56.10
>>189
俺も>>187のやり方でできるとおもうんだけど?何やりたいのかいまいちわかんないや

195:デフォルトの名無しさん
12/01/17 00:29:46.85
>>193
ありがとうございました。


HTMLだったら楽だったんですが・・・
テーブルみたいなのを組んでそこにボタン埋め込めたかったので


196:デフォルトの名無しさん
12/01/17 00:50:13.93
>>192
本物の携帯と同じく起動時は画面ロックされているので
MENUキーは画面ロック解除

197:デフォルトの名無しさん
12/01/17 00:56:10.10
>>196
感謝!そういうことなのか

198:デフォルトの名無しさん
12/01/17 01:04:10.78
>>191
・LinearLayout をいくつか入れ子にして android:layout_weight とかで 3:7 に調節する
・ViewGroup を継承して 30% 離れた位置にボタンを置く自前のレイアウトクラスを作る
・非推奨とか (゚ε゚)キニシナイ!!

199:デフォルトの名無しさん
12/01/17 01:04:10.81
>>186
呼び出した後に無限ループでも作ってダイアログの結果でループ抜けるとか。
意味あるのかわからんけど

200:デフォルトの名無しさん
12/01/17 08:01:19.08
Wikipediaのパロディサイトであるアンサイクロペディアの本家英語版、
Uncyclopediaの「Japan」の項が面白いと話題になっていた。
ざっと拾っただけで「首都は吉野家」「首相はハローキティで天皇はピカチュウ」
「国民の41%はオタクで53.2%は変態」「主な宗教はアニメやボーイズラブ」など言いたい放題だ。

もっともどれもアンサイクロペディアならではの愛のあるネタばかりで、
国外からここまではウォッチできないだろうという内容も少なくないことから、
ネットでは「いい感じに皮肉がきいてて面白い」「日本人だろこれかいてるの」などと、
英語がわかる日本人が書いたのではないかという疑惑まで出ていた。

ページ内の多くの英単語が日本語の発音に合わせて
ローマ字綴りで書かれているのもなかなかシュールで、
全文日本語訳が見てみたいところだ。

Japan(Uncyclopedia)
URLリンク(uncyclopedia.wikia.com)

URLリンク(internet.watch.impress.co.jp)

201:デフォルトの名無しさん
12/01/17 09:09:21.28
プログレスバー系の更新が上手くいかないんだが・・・

処理の流れは①ボタンをクリック ②Threadでダイアログプログレスバー表示・更新 ③検索関数起動 ④プログレスバーの値追加
何だけど、検索ツールが終わってからじゃないとバーが可変しないんだ

for(検索回数が複数あるため、最後までループ) {
dig.show;
new Thread(new Runable() {
public void run() {
mHand.post(new Runable() {
public void run() {
pgBar.setSecondaryProgress(p);
dig.setProgress(p);
dig.dismiss();
} }); } }).start();
search(loopCnt); //検索プログラム
p = p + 20; //バー変動
}

希望してる動作は、ボタンをクリックしたらダイアログプログレスバーを表示、
検索ループが1回終わる毎に、バーを更新して0→20→40→60といった形になってほしい
だけど、実際の動作は、検索終了後に一気に100%

何が悪いのだろう?

202:201
12/01/17 09:12:10.71
あ、すみません。
pgBar.setSecondaryPrgoress(p);は
ダイアログで表示させる前に、ただのバーとして作った奴でしたので
関係ない一行です。

203:201
12/01/17 09:18:11.42
すみません、プログレスバーの時は最初からバーゲージが出てるので上記の通り
更新されないでしたが、プログレスダイアログ+バーの場合
まずダイアログが表示されない感じです。
検索が終了後ダイアログが表示されます

204:デフォルトの名無しさん
12/01/17 09:22:42.86
>>203
そりゃdismissのせいじゃないの?
そういう処理はAsyncTaskのが楽だと思うけどね

205:デフォルトの名無しさん
12/01/17 09:27:26.22
というか、スレッドにするところがおかしくないか?それ。
dlg.showの位置にしろsearchの位置にしろ根本的になんか判ってない感じがするが

206:デフォルトの名無しさん
12/01/17 09:30:01.64
>>204
digmissを //でコメントアウトしましたが変わらず

①検索→※フリーズ見たいな状態→ダイアログが表示→Intentで別Activity画面へ偏移
このような処理みたいになってしまいます。
※部分の際に、ユーザーに対して今処理中だから待ってね的な画面を出したくて
ダイアログ表示を入れようとしてるのですが終わった後にしか出ない&Activity偏移するさいの
一瞬にしか表示されない・・・

Asynctask調べてみます。

207:デフォルトの名無しさん
12/01/17 09:33:51.86
>>205
JAVAは全部独学でやってきて今回初めてThreadを使うのですが、

A→B→Cと進んでいく処理を
A→B 
 →C
といった形になるんじゃないのかな?と思ってるのですが

本当はThread使う必要あるのかな?と思ったのですが
プログレスバーを調べてみると、リアルタイムにバー更新をするには
Threadが必要といったサイトが多かったので、導入しました。

208:デフォルトの名無しさん
12/01/17 09:58:25.20
>>207
Threadを使わなきゃいけないってのは、UIスレッドで処理中はUIが更新されないので
処理途中でUI更新するにはUIスレッド以外で処理しなきゃいけないって事。
今の状態だとUIスレッドで重い動作(search)をして別スレッドでsetProgressしてる。
多分何のためにThread使うのか理解してないからだとは思うけど。
あとdlg.showは一度でいいんだからループの外だろうな

209:デフォルトの名無しさん
12/01/17 10:01:33.23
>>207
検索プログラムとやら自体をスレッド上に持っていかないと

210:デフォルトの名無しさん
12/01/17 10:05:04.91
for ループごとにプログレスバーを書き換えればいいんだから、スレッド使わなくていいんじゃ?
それか別スレッドで検索かだけど、まずスレッドなしでやってみたら?

211:デフォルトの名無しさん
12/01/17 10:17:38.33
>Threadでダイアログプログレスバー表示・更新
これが間違ってるね

プログラムははじめ一つのスレッドで動いてる
それがUIスレッド
ダイアログプログレスバーはUIスレッドで動かすもの
これを動かすために別スレッドを作るのではない
で、別スレッドを作って処理するのはsearchを含むfor全体
このforの最中にときどきUIスレッドで動いてるダイアログプログレスバーを更新する
別スレッドからUIスレッドのUIを更新するときはまた特別な作法が必要でHandlerクラスを使う


212:デフォルトの名無しさん
12/01/17 10:27:38.64
詳しくは忘れたけど、javaのHandlerクラスとandroidのHandlerクラスがあって、>>201はjavaの方のHandler クラスを使ってる

213:デフォルトの名無しさん
12/01/17 10:32:55.01
基本的には、描画関連はメインのスレッドで行い、描画を止めたくない処理などに別のスレッドを生成する。
というようなノリでいこうず

214:201
12/01/17 10:35:48.71
なるほど、Threadの使い道は何となくは

>>212
一応importリスト見てみたら
import android.os.Handler;
しかなHandlerはなかったので、androidの方が使われてると思うのですが

>>210
Thread無しで、処理してるとやはり結果は変わらなかったのThreadを使って見てる感じです。

215:201
12/01/17 10:41:03.41
今修正してみたのですが

try {
dig.show; //ダイアログ表示
new Thread(new Runable() {
public void run() {
mHand.post(new Runable() {
public void run() {
for(複数回検索終わるまで) {
dig.setProgress(p); //バーの更新
search(loopCnt); //検索プログラム
p = p + 20; //バー変動
}}});}})).start();
}

といった形に直したのですが、ダイアログがやはり表示されません…

他の部分が何やら悪い処理をしているのでしょうか?
サーチボタン以外をクリックした際に、toastで○○をタッチしましたといった処理は
出るのですが、このサーチボタンの部分だけ上手く出ないのです


216:201
12/01/17 10:44:57.36
digに関してはグローバル変数として

private ProgressDialog dig = null;

onCrate内にて
dig = new ProgressDialog(MyActivity.this);
dig.setTitle("ProgressBar");
dig.setMessage("データを検索中");
dig.setMax(100);
dig.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);

という形で初期設定を行なっています。

217:182
12/01/17 10:44:58.51
すまん、やりたい事はこれなんだ
リソースの取得を試みて、もしリソースが見つからなかったらエラーメッセージを表示後
ただちに終了したい
Drawable resGetDrawable(String targetName)
{
 Drawable drawable = null;
 try {
  Resources r = getResources();
  int id = r.getIdentifier(targetName, "drawable", getPackageName());
  if(id == 0)
   throw new Exception("画像ファイル \"res/drawable-*/" + targetName + "\" が見つかりません。");
  drawable = r.getDrawable(id);
 } catch(Exception e) {
  showMessage("resGetDrawable", "次の例外が発生しました:\n\n" + e.toString());
  android.os.Process.killProcess(android.os.Process.myPid());
 }
 return drawable;
}
void doSomething()
{
 Drawable drawable = resGetDrawable("aaa");
 Bitmap bitmap = ((BitmapDrawable)drawable).getBitmap();
}
このコードのままではダイアログが表示される前に killProcess() が動いてしまって意味
無いし、>>187 のやり方ではダイアログが表示される前に resGetDrawable() の呼出し後
にその戻り値が使われてしまうので問題がある
resGetDrawable() の結果を if 文や try 文で判定するのは、煩雑になるのでできれば
やりたくない
>>199の言うように無限ループ作った結果が>>182だよ

218:デフォルトの名無しさん
12/01/17 10:46:03.76
内包の仕方が違うと思う
多分こんな感じ

try {
dig.show; //ダイアログ表示
new Thread(new Runable() {
public void run() {
for(複数回検索終わるまで) {

mHand.post(new Runable() {
public void run() {
dig.setProgress(p); //バーの更新
}});

search(loopCnt); //検索プログラム
p = p + 20; //バー変動
}}})).start();
}

219:デフォルトの名無しさん
12/01/17 10:51:24.30
>>215
Handler.postってのはHandlerに処理を委託する感じ。
HandlerはThread入る前のUIスレッドで作ってるだろうから
そこで処理するのはUIスレッドで行わなきゃいけないことだけ。
この場合はsetProgressだけだな

220:201
12/01/17 11:08:45.21
なるほど、HandlerはUIに直接反映したい動作を入れて
ThreadはUIが止まらないようにするための重い処理を入れる感じですね。
確かにこれをやると、高速で画面偏移が行われるようになりました。
ただ、このままだとサーチが終わる前にActivityが偏移してしまったので

try {
dig.show; //ダイアログ表示
 new Thread(new Runable() {
  public void run() {
   for(複数回検索終わるまで) {
    mHand.post(new Runable() {
     public void run() {
      dig.setProgress(p); //バーの更新
     }
    });
    search(loopCnt); //検索プログラム
    p = p + 20; //バー変動
   }
   Intent itt = new~~
   itt.addFlags~~
   startActivity(itt);
  }
 }).start();

で無事ダイアログ表示&バー更新&検索反映が出来ました。
ありがとうございました
}

221:デフォルトの名無しさん
12/01/17 11:11:22.68
×画面偏移
○画面遷移


222:201
12/01/17 11:20:03.78
せんいでしたね、恥ずかしい失礼しました。。

223:デフォルトの名無しさん
12/01/17 11:25:25.30
>>217
画像ファイルが見つかりません例外をそこでキャッチせずに、もっと外側のメソッドまで飛ばすといいんじゃない
それで一番外側のメソッドか、あるいは UncaughtExceptionHandler ででも拾って、ダイアログを表示
ダイアログが閉じられたら終了

224:デフォルトの名無しさん
12/01/17 11:48:32.67
>>223
もしかしてその方法って、resGetDrawable() 及びこれを呼んでるメソッド全てに
throws 付けて回らなきゃいけないって事かな
そういうの出来ればやりたくないんだけど・・・わがままかな

後、Activity#on***() には throws 付けられないみたいだから、resGetDrawable()
がそこから使われている場合は UncaughtExceptionHandler は使えないみたいだ

225:デフォルトの名無しさん
12/01/17 11:51:54.45
RuntimeException と Error とその派生クラスは throws 付けなくていい

226:デフォルトの名無しさん
12/01/17 11:52:55.68
HOMEに戻るとか、Activityを遷移するとか、
苑画面からはなれるタイミングで処理を追加したくて、
onPauseに処理を仕込んでるんですが、
最近画面が横になった時にも呼ばれてることがわかりました。
画面が回転していることを認識する方法か、
もしくは、遷移やHOMEに戻る場合のみに呼ばれるイベントがあれば教えて下さい。

227:デフォルトの名無しさん
12/01/17 11:56:07.40
>>226
画面を固定する

228:デフォルトの名無しさん
12/01/17 12:01:55.39
>>225
そうか、ありがとう
Java よく知らないまま書いてるものだから・・・

ところで、uncaughtException() 内部でダイアログが閉じられたら終了の判定をする
方法はあるんだろうか


229:デフォルトの名無しさん
12/01/17 12:20:38.15
>>228
こういう方法はどうだろう
エラー表示を別のアクティビティにする (android:theme 設定してダイアログの外見にしてもいい)
その別アクティビティを android:process 設定して別プロセスにする
エラーが発生したらその別アクティビティ (すなわち別プロセス) を起動して自プロセスは即座に死ぬ
自プロセスが死んでも別プロセスは生きてるからエラーは表示される

230:デフォルトの名無しさん
12/01/17 12:22:52.19
>>226
イベントは無いんじゃないかな、ただ回転したかならわかる

231:デフォルトの名無しさん
12/01/17 12:51:41.85
>>229
もうちょっと別の方法考えてみて、何も思いつかなかったらその方法で行ってみる
サンクス

232:デフォルトの名無しさん
12/01/17 13:05:47.28
>>226
調べるのがめんどくさいから具体的には書けないけど
回転すると基本的にはcreateしなおされる
AndroidManifest.xmlに何かを書いたらイベントが呼ばれるようになる

233:デフォルトの名無しさん
12/01/17 13:09:54.53
最近はこういう作りをするのが流行りなのか?
VBから流れてきたおっさんの俺にはちょっと理解不能…
ファイルをチェックする関数を作ってその戻り値でいろいろって考えてしまうし、いきなりexception投げて終了ってのも考えにくいわけだが、、、
時代に取り残された感が半端ないw

234:デフォルトの名無しさん
12/01/17 14:19:32.66
AndroidでロケーションARをやっている人っていますか?

235:231
12/01/17 17:37:54.19
>>229
結局いい方法が思い付かなかったので、その方法で行きました
名前は reportErrorAndExit() に変えた
スタックトレースをエラーメッセージに含める事で割と便利なメソッドになったよ
URLリンク(ideone.com)
URLリンク(up3.viploader.net)
ありがとうー

236:デフォルトの名無しさん
12/01/17 19:27:16.53
>>232
jniで確保したメモリも自動的に解放される?

237:デフォルトの名無しさん
12/01/17 19:53:25.47
されない

238:デフォルトの名無しさん
12/01/17 20:05:17.44
>>236
てか、マニフェストに android:configChanges="orientation"って
しておけば、画面が回転してもonPauseが呼ばれなくなる
それでいいんじゃないの?

239:デフォルトの名無しさん
12/01/17 20:10:34.54
横画面未対応で良いならそう思うわ

240:デフォルトの名無しさん
12/01/17 20:21:12.13
>>239
android:screenOrientationと勘違いしてないか?

241:デフォルトの名無しさん
12/01/17 22:08:35.88
ウィジェットにカメラのプレビューを表示したいんだけどどうにかなりますか?
surfaseviewがうまく動きません

242:デフォルトの名無しさん
12/01/17 22:30:30.30
┌──┬─┐
│     │  │
│     │  │
│     │  │
│     ├─┤
│     │  │
│     │  │
│     │  │
└──┴─┘


こういう図を作って、3つの穴の全てにそれぞれタップすると当たり判定があって
数値を書き込めるものを作りたいのですが、どうやって作ればいいのでしょうか?

ボタンとかテキストエリアとか配置してみたのですが、なんか相対的な(?)配置ばかりしか決められないような感覚が・・・

243:デフォルトの名無しさん
12/01/17 22:33:20.27
つテーブルレイアウト

244:デフォルトの名無しさん
12/01/17 22:41:35.08
scrollViewにtextView入れて使ってますが
scrollViewで再表示と同時にスクロールの位置をトップに合わせるには
scrollView.のどれを使えばいいでしょうか?

245:デフォルトの名無しさん
12/01/17 22:46:01.05
>>241
ウィジェットにsurfaceviweて使えないんじゃなかったっけ?
それが出来ないから動画流すウィジェットがないって、
前に読んだ気がする。

246:242
12/01/17 22:51:31.45
>>243
ありがとうございます。
HTMLみたいなテーブルレイアウトってできるんでしょうか
手元の本にはなかったので・・・・

247:デフォルトの名無しさん
12/01/17 23:06:04.69
>>244は scrollView.scrollToでできました。

248:デフォルトの名無しさん
12/01/17 23:32:50.40
>>246
みたいなが、どこまでを指すかわからんが、できると言っておこう。

249:デフォルトの名無しさん
12/01/17 23:33:56.15
テーブルレイアウトがのってない本って・・・・・・・
手抜き感はんぱねえな

250:デフォルトの名無しさん
12/01/17 23:40:39.69
>>246
何という本?


251:デフォルトの名無しさん
12/01/17 23:43:17.74
>>246
ひだりがわのセルを結合するみたいなことがしたいと思うんだけどテーブルレイアウトならできるよ

252:246
12/01/17 23:52:04.32
>>248
>>251
ありがとうございました。


>>250
Javaからはじめよう アンドロイドプログラミング インプレスジャパンです
テーブルレイアウトでググればこの本より詳しいサイトが出てきて買って損した気持ちです

253:デフォルトの名無しさん
12/01/17 23:56:23.37
Javaすら知らない人向けか
そういう読者向けの本なんだからそれはそれでいい


254:デフォルトの名無しさん
12/01/18 00:03:04.72
おれにとってはJavaのリファレンスは とほほ が一番わかりやすい

255:デフォルトの名無しさん
12/01/18 00:06:47.42
実際本よりネット検索のほうが役立つこと多いよね
本はサンプルをダウンロードするためのものになりつつある

256:デフォルトの名無しさん
12/01/18 00:17:43.23
Androidは最初ここで一通り勉強した
URLリンク(www.atmarkit.co.jp)


257:デフォルトの名無しさん
12/01/18 00:51:57.27
アクティビティAから表示に時間のかかるアクティビティB(viewクラスの読み込みなど)に移動するときにスムーズに見せるにはどうしたらいいですか?

なにもしないとAからBに行くときにAの画面でとまって処理がおわってからBに行くので

258:デフォルトの名無しさん
12/01/18 01:57:56.09
SDカード上のファイルって、けっこうすぐ壊れますか?

読み込みくらいでしか触ってないのにファイル長0で読めない状態になってしまったことがあります。

259:デフォルトの名無しさん
12/01/18 01:59:34.19
少なくとも、俺の人生の中で、SDだろうがCFだろうがMSだろうがSMだろうが、フラッシュメモリーと呼ばれる類いのものが壊れた経験は一度たりともない

260:デフォルトの名無しさん
12/01/18 03:22:05.30
分かってて使うもんだがノーブラはよく壊れる。ブランドでもsundiskはよく壊れる

261:デフォルトの名無しさん
12/01/18 04:11:01.11
俺の場合カメラのSDカードが9年で壊れた(年に30枚も撮らない)
PCのメモリーが4年で壊れた

262:デフォルトの名無しさん
12/01/18 06:04:04.25
classとかの書き込み速度って影響すんのかな。


263:デフォルトの名無しさん
12/01/18 07:11:10.32
【韓国BBS】日本は時給が高い!「うらやましい」
●スレ主:千年焼酎
駅前でのティッシュ配りが時給720円、マクドナルドが平日900円、土・日・祝日の勤務で時給1300円。日本に働きに行こう。

●あなたの中にでも
  放射能がなければ日本で仕事をしたい。

●ウィチン
  大学生900円以上、22時以後には1125円以上?物価の差はそんなに違わないのに、2倍以上。単純にうらやましい。

●dltnsrn
  当然じゃないですか。 日本がわが国より豊かな国で生活しやすい国なのに。こうしたことは小学生も知っているはず。

●キースハワードs
  時給が高いから、日本にはバイトだけで暮らすフリーターがいっぱい。

●コムンミル
  良い暮らしと、アルバイト代はあまり関係ないのでは。

●クチュプトゥン
  韓国は基本12時間、体力が無くなりへとへとになる時まで仕事をしてやっと生活ができるのに。

●dltnsrn
  (韓国は)それでいて最低賃金も低いところが多いです。

●ミョンタムジョンノネム
  わが国もバイトだけで暮らすことはできます。 ただし貯蓄ができないだけ。
URLリンク(news.searchina.ne.jp)

264:デフォルトの名無しさん
12/01/18 07:14:11.17
俺もそんなに時給がいいとこに行きたい


265:デフォルトの名無しさん
12/01/18 11:30:50.22
androidはプロパティファイル(properties)に定数定義して使用するとかできますか?

自動的に作られる project.properties は
「変更内容は消される」みたいなコメントがあるので無理なようでした



266:デフォルトの名無しさん
12/01/18 11:34:16.04
assetsに突っ込めば?

267:デフォルトの名無しさん
12/01/18 11:48:48.20
いかん
ねむい・・・

268:デフォルトの名無しさん
12/01/18 11:50:41.56
>>265
リソースでどう?
<integer name="TEISU">1</integer>

269:デフォルトの名無しさん
12/01/18 11:59:28.60
>>117
おまえなー、自己解決もいいけど、どうやって解決したか書いていけよ。
その解説ページのURL貼るとか、そんなに手間がかかるもんじゃないだろ?

プログラマーのコミュニティーつてのは、そうやって発展してきたんだよ。


270:デフォルトの名無しさん
12/01/18 13:48:18.81
>>269
いいこというなぁ

271:デフォルトの名無しさん
12/01/18 14:18:28.55
>>269
googleで解説ページをみつけました。

272:デフォルトの名無しさん
12/01/18 14:40:58.81
>>105
すでに解決済みならスマン。
AndroidのGoogle Maps APIのことだったら、自作するしかない。

参考に、osmdroidのScaleBarOverlayを載せとく。
URLリンク(code.google.com)

中央がずれたか、ズームレベルに変更があったら(drawメソッド)
スケールバーを描画する(createScaleBarPictureメソッド)。
地図中央横に1インチ間隔で2点のGeoPointを取って
distanceToで1インチあたりのメートル数を出して描画、という流れ。

まんまは流用できないけど、参考になれば。

GoogleMapはメルカトル図法なので、地図上下と中央とで誤差があるから
上のソースみたいにズームレベルで描画する/しないが設定できたほうがいいかも。

>>191
RelativeLayoutでLayoutParams#leftMarginを30%の位置に設定する、じゃダメ?

273:デフォルトの名無しさん
12/01/18 14:59:04.58
いかん
やはり眠い…

274:デフォルトの名無しさん
12/01/18 17:02:59.16
ソースコード上で16進数は0x1234 で表記できますが、 2進数は表記できますか?

int a = 11011010B;

のような事は可能でしょうか

275:デフォルトの名無しさん
12/01/18 17:10:53.77
できない。
Java7からは出来るらしいけど。
URLリンク(docs.oracle.com)

276:デフォルトの名無しさん
12/01/18 17:26:34.91
-target jsr14は?

277:デフォルトの名無しさん
12/01/18 17:39:21.36
>>274
普通に0x123でいけなかったっけ?



278:デフォルトの名無しさん
12/01/18 18:00:26.32
>>277
それ普通に16進じゃね?

279:デフォルトの名無しさん
12/01/18 18:03:08.08
2進16進は脳内変換できないとダメってことだ。

280:デフォルトの名無しさん
12/01/18 18:12:32.44
Activityがホームボタンとかで非表示になっているときに、
再び自動的に表示させたいんだけど、どうすればできるでしょうか?

281:デフォルトの名無しさん
12/01/18 18:20:39.29
8 4 2 1 8 4 2 1 ハァハァ…w
     ↓
0 0 1 1 0 1 0 1 に、2進数…ハァハァw
     ↓
- - 2 1 - 4 - 1 け、計算過程…ハァハァ
     ↓
- - 2+1 - 4 + 1 た、足すお!…ハァハァ
     ↓
    3  5       じゅ、16進数変換…ハァハァ

0x35だお!

282:デフォルトの名無しさん
12/01/18 18:25:54.97
>>280
むり

283: 忍法帖【Lv=18,xxxPT】
12/01/18 18:26:33.43
>>280
壷ロイドがそんな動きしてたような、おーぷんそーすだから見てみれば

284:デフォルトの名無しさん
12/01/18 18:32:23.80
了解。
ちょっと壷の中覗いてくる。

285:デフォルトの名無しさん
12/01/18 18:32:53.23
startActivity呼べばいつでも普通に表示させられると思うけど
ユーザーからしたら迷惑じゃね

286:デフォルトの名無しさん
12/01/18 18:34:08.91
>>274
int a = Integer.parseInt("11011010",2);
じゃダメ?

287:デフォルトの名無しさん
12/01/18 18:40:30.80
やるとしたらAlarmManagerに登録すれば出来るんじゃないか?
迷惑だとは思うけど

288:280
12/01/18 18:50:10.56
小さなメダルは見つからなかったよ。
onStopでサービスを動かして、サービスから再び呼び出す、
みたいな手段が今作ってるアプリに合ってるようなので、
そういう方向で対応することにします。

289:デフォルトの名無しさん
12/01/18 19:27:34.94
>>274
16進で書いて、必要ならコメントに2進表記もつけとくのがいいかと

290:デフォルトの名無しさん
12/01/18 22:24:45.86


ステマ相関図画像更新(1/17)
URLリンク(gazo.restspace.jp)
テレビや新聞、大規模なネットサイトで「今流行の」「今話題の~」「女性に人気の~」等と言われるものはほぼ全て
この画像上部、○○堂がコントロールしている。
  ・世間にどの程度流行らせるか
  ・流行に乗り遅れる(流行に乗り遅れさせる)人間をどのくらい作るか
  ・話題に乗り遅れた人間に対してどの程度の疎外感を与えるか
  ・いつその流行を終わらせるか
2chもステマ会場
URLリンク(www.dotup.org)

ちなみに ハリーポッターと賢者の石の 「石」とはテレビのこと(著者が執筆当時)
 ダイオード→半導体→シリコン→石
 賢者とはテレビを見る人間でも番組を作る人間でもなく、テレビを操る人間。


291:デフォルトの名無しさん
12/01/18 22:51:29.97
エミュレーターを実行するとしばらくして「failed to install sample.app~」と出てきて強制終了するのですがどうしてでしょうか?


292:デフォルトの名無しさん
12/01/18 23:06:40.05
sample.appのinstallがfailしたから

293:デフォルトの名無しさん
12/01/18 23:12:30.42
どうすれば成功するでしょうか?
ちなみにほかのプログラムは起動します

294:デフォルトの名無しさん
12/01/18 23:15:53.79
どなたかエスパーの方、>>293 がおさがしですよ

295:デフォルトの名無しさん
12/01/18 23:33:59.96
質問用のテンプレを優しい誰かが作ってくれるに違いない

296:デフォルトの名無しさん
12/01/18 23:50:15.73
■やりたいこと
Bluetoothデバイス接続時にメディア音量を一定の値に変更するアプリを作りたい

■試したこと
URLリンク(d.hatena.ne.jp)

■症状
ブロードキャストインテントが出ていないor拾われていない

■補足
PowerAMPというオーディオアプリは
Bluetooth機器の接続を契機に音楽自動再生を実現している

■環境
Android: 2.3.4
SBM005SH

■コメント
ぼすけて

297:デフォルトの名無しさん
12/01/18 23:54:09.30
これが天プレですね

298:デフォルトの名無しさん
12/01/18 23:55:03.55
パーミッションとかじゃないの
android.permission.BLUETOOTH とか

299:デフォルトの名無しさん
12/01/18 23:58:09.05
■やりたいこと
プログラムをエミュで起動させたい

■試したこと
アップデート、再起動

■症状
「failed to install sample.app~」というエラーが出る

■補足
ほかのプログラムは起動する、ソースにエラーは無し

■環境
Android: 2.2


■コメント
Help me!!


300:デフォルトの名無しさん
12/01/18 23:59:21.46
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-permission android:name="android.permission.BLUETOOTH" />

は入れてる。
ブロードキャストされているインテントすべてのログ取る方法とかないすかね
PowerAMPはなんのインテント契機にしてるんだろう


くそう、即出来るだろうと思ったのにぃぃぃ
くやしい

301:デフォルトの名無しさん
12/01/19 00:00:50.76
>>299
一度sample.appをuninstallしてもダメ?

302:デフォルトの名無しさん
12/01/19 00:08:42.25
>>301
アンインストールなんてあるんですね
やってみます

303:デフォルトの名無しさん
12/01/19 00:18:36.04
インテント名間違ってない?
リファレンスでは
android.bluetooth.adapter.action. とか
android.bluetooth.device.action. とか
android.bluetooth.headset.profile.action. になってるような

304:デフォルトの名無しさん
12/01/19 00:32:59.53
■やりたいこと
バックにまわったときにサーフェイスビューの描画またはサーフェイスビューのクラスの中の変数を保存しまた開かれたときに復元

■試したこと
DBに描画データを保存して復元
もっと簡単にできると思った

■症状


■補足
サーフェイスビュー 描画 保存で調べたがcanvas.save/restoreや画像として保存のことしか出てこない

■環境
Android: 2.3.3
SBM007SH

■コメント
よろしくお願いたします

305:296
12/01/19 00:40:18.61
"android.bluetooth.a2dp.profile.action.CONNECTION_STATE_CHANGED"
"android.bluetooth.intent.action.HEADSET_ADUIO_STATE_CHANGED"
"android.bluetooth.headset.profile.action.AUDIO_STATE_CHANGED"
"android.bluetooth.adapter.action.CONNECTION_STATE_CHANGED"
"android.bluetooth.intent.action.REMOTE_DEVICE_CONNECTED"

とかもろもろ試してるが
どれも拾えない
amコマンドで直ブロードキャストした際にはちゃんと拾えてる事は確認できてる。

BOOT_COMPLETEDとかメジャーなブロードキャストは拾えてるから
ブロードキャストの拾い方に問題はなさそうなんだがなぁ

306:デフォルトの名無しさん
12/01/19 00:52:14.88
質問です。
AlertDialogのsetItemsでリストをアラートで出したいのですが、
リストの中身をテキストではなく、画像にしたいのですが
どうしたらいいでしょうか?

307:デフォルトの名無しさん
12/01/19 01:14:34.11
>>306
最近テンプレ出来たらしいよ

308:306
12/01/19 01:52:40.37
>>307
最近ってことは、OS2.2だと難しいってことですか?

309:デフォルトの名無しさん
12/01/19 02:05:35.81
>>308
お前はなにか勘違いしているようだ

310:デフォルトの名無しさん
12/01/19 02:07:05.06
>>308
AlertDialog の setView 使えばできる、確か

311:306
12/01/19 02:19:16.54
>>310
ありがとうございます。ちょっと調べてみます。

>>309
ちょっと勘違いしてましたw APIではないんですね。
最近って言葉で早とちりしてました

312:デフォルトの名無しさん
12/01/19 03:27:26.53
レイアウトのXMLの中にあるViewがあって、
そのViewの中に画像があって、
その画像にonClickイベントを付けてたとします。

で、そのViewをアニメーションで場所移動すると
画像も一緒に移動するわけですが、
その画像をクリックしてもイベント発火せず、
画像が元に表示されていた場所をクリックすると
イベント発火するのですが、
ちゃんとイベントも移動(表現変だけど)させるのって
どうすればいいでしょうか?


313: 忍法帖【Lv=12,xxxPT】
12/01/19 07:10:09.69
>>312
アニメーションさせた位置にviewをもってくるか、アニメーションさせた位置にとイベントつけておく

314:デフォルトの名無しさん
12/01/19 09:40:18.88
>>305
これは試した?
android.bluetooth.adapter.action.STATE_CHANGED

315:デフォルトの名無しさん
12/01/19 10:13:13.52
androidアプリを非商用で出そうと思ってるんだけど
License部分の記載をどうしたらいいかググッてもよく分からん…

twitter4jやachartengineを使ってるんだが、両方共API部分は
改変していない
両方共コードライセンスはApacheLicense2.0を使ってる見たい
achart:URLリンク(code.google.com)
URLリンク(groups.google.com)
twitter4j:URLリンク(twitter4j.org)
apache日本語:URLリンク(sourceforge.jp)

この場合、achartの方は、apacheのLicenseコピペしてCopyright 2012~~~自分の名前
で貼り付けて
twitter4jの方は 2007と2011の人の下に、Copyright 2012~~~自分の名前
の2つ貼り付ける感じでいいのかな?

スレ違いだったらすまん、出来れば誘導お願いします

316:デフォルトの名無しさん
12/01/19 10:57:42.34
メニュー画面にA画面へのボタン、B画面へのボタン、、、といくつか遷移用ボタンを並べているんですが、
同時に押された場合、両方の画面が立ち上がってしまいます。
これはどのようにしたら一画面のみ立ち上がるようになりますか?
画面毎にActivityは異なります。

317:デフォルトの名無しさん
12/01/19 11:08:35.72
>>316
片方押されたらもう一方は押せないようにするとか

318:デフォルトの名無しさん
12/01/19 11:20:07.96
>>316
synchronizedと押されたことを保持するフラグを持っておけば出来そう。

319:デフォルトの名無しさん
12/01/19 11:27:13.72
バッテリーの持ちが悪いと言われましたがお手上げです
これは気をつけとけ!ってのありますか?

320:デフォルトの名無しさん
12/01/19 12:39:29.72
>>315
改変してないのに勝手に著作権者を名乗るなよ

321:315
12/01/19 12:41:01.49
>>320
お、じゃあ改変してないなら何も書きこまないでそのまま貼りつければいいだけなのかthx

322:デフォルトの名無しさん
12/01/19 14:18:34.62
>>321
そのままこれ使ってますって、
名前とリンクはっとけばいいんじゃ?

323:315
12/01/19 14:28:32.29
>>322
そうなのか…

324:デフォルトの名無しさん
12/01/19 14:44:48.75
ライセンス条項くらい読もうよ。

325:315
12/01/19 14:53:58.44
>>324
読んだけど理解できなかったんだ、リアルSEにもきいたんだが
そういうLicense系のは入れたこと無いしなワカンネって言われておわた
ググっても今一さっぱりだった

326:デフォルトの名無しさん
12/01/19 16:24:04.25
①スマートフォン本体のbackボタンを押して、前Activityに戻る時のActivityライフサイクル
②プログラム内でButtonを実装し、そのButtonが押されたときfinish();を呼び出して前Activityに戻る時のActivityライフサイクル
どちらも、onPause()→onStop()→onDestory()、の順でActivityを破棄しますか?
それとも、違うサイクル・・・?

327:デフォルトの名無しさん
12/01/19 16:42:20.26
同じ
だって Activity#onBackPressed はデフォルトで finish() 呼んでるだけだし

328:デフォルトの名無しさん
12/01/19 16:43:01.87
>>326
ログ吐き出せば?

329:デフォルトの名無しさん
12/01/19 16:57:24.21
少し前に作ったアプリが変更できなくなったのですが、何か情報をお持ちの方はいないでしょうか。

表示されるテキストを適当なものに変えたり、
唯一のアクティビティのoncreateでログを出すようにしてもログが出ない。(恐らくソースの変更が反映されてない。)
同様にoncreateにブレークポイントを置いても反応しない。というか何処においても反応しない。

プロジェクトをアンインストールして、端末、パソコンの再起動をしてapkを入れなおしても変わらず、
app_nameを変更するとステータスバーに表示される名前は変わる、ソース上で構文エラーを起こすと実行できなくなる。といった具合です。
実行すると必ずエラーになるソース例えば以下のようなソースをoncreateに入れてもエラーになりませんでした。
String a = "test";
a = a.substring(-10,100);

ですので、やはりソースが反映されていないか、
ほかのプロジェクトを実行していのではないかと思ったのですが、

app_nameでプロジェクト名は変わる(ホーム画面のアプリ名も変わる)ため、その可能性もありません。

プロジェクトをエクスポートして、ワークスペースから削除、インポートしなおして実行しても変わず手詰まり状態です。

330:デフォルトの名無しさん
12/01/19 17:15:52.05
Activityにはoncreateなんてメソッドは無いからなあ。

331:デフォルトの名無しさん
12/01/19 17:22:39.03
>>315
API(ライブラリ)を使ってる自分のソースにAPIのLicense表記をコピペしようとしてる?

多分そのままだと、自分のソースがApacheLicense2.0ライセンスでかつ
著作権はライブラリの作者だと宣言したことになるんじゃない?

332:デフォルトの名無しさん
12/01/19 17:25:46.89
>>327,328
ども、ありがとうございますm(_ _)m

333:デフォルトの名無しさん
12/01/19 17:48:52.98
すいませんご存知でしたら教えて下さい。
NDK側のCコードからアプリのパッケージ名を取得する手段ってありませんでしょうか?

334:デフォルトの名無しさん
12/01/19 17:52:32.45
>>333
パッケージ名はActivityとかのメソッドにあるんで、
それをNDK側から引っ張ってくることになる。

335:デフォルトの名無しさん
12/01/19 18:12:04.19
>>315
Androidの設定アプリでは端末情報-法的情報-
オープンソースライセンスに明記してるので
同じようにすればよいのでは

336:デフォルトの名無しさん
12/01/19 19:11:35.95
自作したアプリから
facebookに画像を投稿したいんだが
facebookのAPIつかわないとだめかな?

intentで画像渡すだけでいけるならそうしたいんだけど

337:デフォルトの名無しさん
12/01/19 20:30:56.78
>>336
facebook android sdk 使えば、facebookアプリの有無で勝手に分岐する


338:デフォルトの名無しさん
12/01/19 20:37:30.13
XMLで定義したマスタデータを使いたいですが、
SQLiteOpenHelperのonCreate でassetを呼び出す方法はありませんか?


339:デフォルトの名無しさん
12/01/19 21:15:47.82
文字列リソースを整理して利用する方法はありませんでしょうか?
今のところR.stringに全てまとめられますが、R.activityA_stringとかR.activityB_stringとかで参照できると理想です

340:デフォルトの名無しさん
12/01/19 21:32:05.15
>>339
Rを参照して自前の定数クラスを作ることはできる
public final class R2 {
public static final int hoge = R.string.hoge;
}
みたいな

xml の方も名前はなんでもよく、複数あってもいい
string_R1.xml, string_R2.xml みたな

あとは xml から R2 クラスを自動生成するツールでも書けば

341:デフォルトの名無しさん
12/01/19 21:39:42.54
>>339
自分はファイル分けて、ファイル名を名前の先頭につけたりしてる。
config.xmlだったら、name="config_foo"とか。

342:296
12/01/19 22:04:23.55
あばばば解決しますた。

BluetoothDevice.ACTION_ACL_CONNECTED

でした

>>314
レスサンクス

343:デフォルトの名無しさん
12/01/19 22:23:22.47
■やりたいこと
テスト実施時に常に正常にキー入力が行われるようにしたい。

■試したこと
int[] keys = {KeyEvent.KEYCODE_1, KeyEvent.KEYCODE_0, KeyEvent.KEYCODE_0, KeyEvent.KEYCODE_PERIOD, KeyEvent.KEYCODE_0,KeyEvent.KEYCODE_0};

for(int key : keys) {
sendKeys(key);
getInstrumentation().waitForIdleSync();
}
や、
sendKeys(keys);
getInstrumentation().waitForIdleSync();

といった方法を試しましたが効果がないようです。

■症状
テスト実施時にsendKeysでキー入力をエミュレートしているが
100.00と入力しているつもりが10.0とかになってしまう時があり
テストが通ったり通らなかったりする。
デバッグ実行にすると通る確率が極めて高い。

■環境
Android: 2.2
T-01C

■コメント
よろしくお願いたします


344:デフォルトの名無しさん
12/01/19 23:05:58.61
>>340
それだとただのintじゃね?


345:デフォルトの名無しさん
12/01/19 23:22:50.96
>>340
管理コストorツール作成コストがきつそうなのでやめときます・・・
>>341
やはりプレフィックスしかないですかね。ありがとうございます


346:デフォルトの名無しさん
12/01/20 00:11:04.20
>>343
テストコードが載ってないんで推測だが
runOnUIThread呼んだあと、waitForIdleSync呼ばずにsendKeysを呼んでるとか。

あと、sendKeysの後にwaitForIdleSyncは不要。
sendKeysの中で、最後にwaitForIdleSync呼んでるから。

ちなみに、エミュレーターでは動くの?

347:デフォルトの名無しさん
12/01/20 00:33:37.89
タブレットかスマフォか判定するのに最適な方法は何よ?

Small normale large xlargeだけでいけるのか?

348:デフォルトの名無しさん
12/01/20 01:13:59.05
C++でもいけますか?

349:デフォルトの名無しさん
12/01/20 01:14:33.62
>>348
何が?Androidアプリをつくるのが?

350:デフォルトの名無しさん
12/01/20 01:36:02.92
前画面にGLで描画するだけのアプリでなければJava必須と思ったほうがいい

351:350
12/01/20 01:36:35.80
×前画面 ○全画面

352:デフォルトの名無しさん
12/01/20 01:48:08.38
>>349
オーガズム

353:デフォルトの名無しさん
12/01/20 02:12:50.75
>>347
4.0未満はPhone UIとTablet UIが別だからバージョン見る
4以降ならcom.android.systemui.SystemUIServiceのソース嫁

354:デフォルトの名無しさん
12/01/20 02:13:09.00
>>347
android design に基準が書いてあるよ
dp単位でのスクリーンサイズによる。

ところでテレビにつなぐandroid端末や
プロジェクターにつなぐandroid端末のことも忘れるなよ


355:デフォルトの名無しさん
12/01/20 02:31:18.44
いまのPCがボロスペックだから、新しいの買おうと思うんだけど
エミュとかエクリプスが快適に使えるには、どんなスペックがいいかな?


356:デフォルトの名無しさん
12/01/20 02:59:32.15
eclipseはともかくエミュレータは快適には動かんよ

357:デフォルトの名無しさん
12/01/20 03:01:04.01
今のスペックは?
予算は?


358:デフォルトの名無しさん
12/01/20 03:20:26.38
>>356
そういうもんなのか

>>357
十年近く前のボロスペックだから言うのも恥ずかしい
とりあえずOS込み10万ちょっとで考えてる
モニタやら備品はあるからいいんだけど、どうすればいいのか途方にくれてます


359:デフォルトの名無しさん
12/01/20 03:37:29.98
>>358
第二世代Core i7にメモリ8GB積んでるがそれでもエミュは重いわ…。

360:デフォルトの名無しさん
12/01/20 03:44:57.19
今書いてるアプリが実機テストしかできないせいで、エミュを使わなくなってしもうた

361:デフォルトの名無しさん
12/01/20 03:45:31.81
Core i5またはCore i7
RAM8GB以上
あとは程々のを選んでおけば間違いない
これ以上は金かけても大差ない


362:デフォルトの名無しさん
12/01/20 03:47:28.98
エミュはVirtualBoxでx86版Androidを動かすか
実機で動かすかだな


363:デフォルトの名無しさん
12/01/20 07:53:28.21
>>359
俺は16Gつんだけど簡単な描画処理でも重い

364:315
12/01/20 08:40:51.22
>>331
いや、ライセンス表記させるActivity作って、その画面に
使ったAPIを先に書いて、その後に
さっきのCopy~から apachウンヌンが書かれてる本文 Licenseまでを
表示させるようにしようかと

>>335
root/ウンヌン書かれた後にapachの説明文入ってるから
やっぱこんな感じで良さそうね


thx

365:デフォルトの名無しさん
12/01/20 10:06:18.51
孤独に開発するのは飽きたので
だべりながらandroid開発しませんか
楽しく開発できたらいいと思います
ちなみに自分はあまり経験がありません
linuxやらデータベースに詳しい人も募集
zoneid1までコンタクトください


366:デフォルトの名無しさん
12/01/20 10:15:02.61
>>350
そうですか。

367:デフォルトの名無しさん
12/01/20 11:28:15.41
>>365
同じく。一人で作ってると着眼点が糞

368:デフォルトの名無しさん
12/01/20 11:30:11.08
なんで手前が糞なのを一人で作ってるからと勘違いするかね

369:デフォルトの名無しさん
12/01/20 11:31:57.29
>>367
差支え無ければ
コンタクトいただけませんか?
楽しく開発できればと思います


370:デフォルトの名無しさん
12/01/20 11:47:49.36
悪気はないんだが、
「当方Vo全パート募集」
のコピペを思い出したw

371:デフォルトの名無しさん
12/01/20 12:12:31.67
>>368
いやいや俺の場合だよw

372:デフォルトの名無しさん
12/01/20 12:21:30.60
>>368
RPG作ろう!
アクションゲーム作ろう!
二人合わさって
アクションRPGなんてどうかな?!
ってこじゃ

373:デフォルトの名無しさん
12/01/20 12:22:25.63
二人合わせていいものができるのは、一人でできる人が二人いた場合だけ。

374:デフォルトの名無しさん
12/01/20 12:27:35.98
>>363
16でもダメなんか…orz
快適に使うのは諦めよう。金がいくらあっても足りん気がしてきた(´・ω・`)

375:デフォルトの名無しさん
12/01/20 12:32:41.04
エミュを快適にする為のPC拡張するくらいなら、
白ロム買った方が安いからな。
エミュなしでいいなら1万くらいのCPUと4GBメモリで十分だし、
ついでにディスプレイ増やしておけば、開発しやすいし

376:デフォルトの名無しさん
12/01/20 12:35:10.11
>>374
PC買うなら実機買ったほうが安くね

377:デフォルトの名無しさん
12/01/20 14:05:37.18
>>376
確かにそうだな。
エミュにこだわる必要もないか。

378:デフォルトの名無しさん
12/01/20 14:05:49.74
さすがに10年前のPCよりは、快適になる。
メモリ16GB、SSD、モニタ2枚にしろよ。

379:デフォルトの名無しさん
12/01/20 14:11:31.53
>>374
i7第2世代の16GのSSDでもエミュの起動は早いけど操作が重たいから制限かけられてると思てた

380:デフォルトの名無しさん
12/01/20 14:40:35.28
BGM をループで流そうと思うんだが、ループ時の途切れが解消できないので困った

MediaPlayer を使ってるんだが、setLooping() を呼んだだけではどうしても途切れてしまう
setOnCompletionListener() ではループ処理が間に合わない
監視して正しい再生位置を設定しようにも getCurrentPosition() が嘘をつくのでどうにもならない

どうしたらいい?
ちなみに MIDI だとすんごい途切れるから、MP3 でやってる

381:デフォルトの名無しさん
12/01/20 14:53:40.95
Bluetoothでペアリング済みの端末同士って、発見可能モードへ移行しなくても接続可能なん?
ただでさえ300秒ごとにダイアログ出さなくちゃいけないし、ちょっと不便。すれ違い通信は無謀なんかのぉ…。

382:デフォルトの名無しさん
12/01/20 15:09:03.10
アプリが終了されるときを判定するメソッドなどはありますか?

SQLiteを使った、activity数枚を遷移するアプリを作っているのですが
activityが破棄されたときではなく、アプリが終了したときにdb.close()を実行させたいです。

383:デフォルトの名無しさん
12/01/20 15:31:30.57
>>384
dbは終了など待たないで使うときだけ開いて使ったらすぐcloseが基本
trycatchもわすれずに

384:デフォルトの名無しさん
12/01/20 15:43:33.24
>>382

385:デフォルトの名無しさん
12/01/20 16:24:54.15
>>384
ありがとうございますm(_ _)m

386:デフォルトの名無しさん
12/01/20 17:45:05.69
Android ハッカソンとか結構いろんなところで開かれてると思うけどな。
一人で開発寂しいならそういうの参加してみたらいいんじゃね?

あと、開発端末の貸出サービスのリモート版みたいなのが始まるみたい
URLリンク(news.mynavi.jp)

実機をライブカメラで見ながら操作ってwwww

387:デフォルトの名無しさん
12/01/20 18:32:47.87
>>380
mp3をやめてwavを使う

388:デフォルトの名無しさん
12/01/20 18:55:55.77
>>386
おお、すげーローテクだな。
なんか「一方ロシアは鉛筆を使った」のコピペを思い出して吹いた。

でも、結構いいんじゃね。
ゲームとかのレスポンスだったり、GPSやら各種センサーとか通話関連は無理だけど、
機種依存でよくある、画面の表示がおかしかったり異常終了になったりする等の
基本的な部分だったら確認するのに使えそうだ。

389:デフォルトの名無しさん
12/01/20 19:29:51.87
>>388
「限りなく実機そのもので」ってのとリモートを両立させようと思うと
そこらへんが落とし所だろうなとは思う。
あとは価格か。

390:デフォルトの名無しさん
12/01/20 19:43:40.39
指のロボットもつけてコントロールできるようになれば完璧だなw

391:デフォルトの名無しさん
12/01/20 19:50:14.02
>>387
マジっすか
確かに途切れなくなるけど、トータル 20 分以上あるものだから、音質的に妥協できる
16-bit 24 kHz Mono (384 bps) でも 20 MB 超してしまいんす
あと、サイズがでかくなったせいか、再生の開始に時間がかかるようになったよ
どうすればええかのう

392:デフォルトの名無しさん
12/01/20 19:51:52.84
20 分は嘘だった 9 分半ですた
あと 384 Kbps

393:380
12/01/20 20:08:20.70
あー、WAV でも途切れる曲は途切れるな
やっぱり MP3 で行きます

もし他に何かいい方法あったらよろしくです

394:343
12/01/20 20:22:26.83
>>346

返事遅くなって、ごめんなさい。

runOnUIThreadのあとにwaitForIdleSyncはいれてます。
sendKeysの後には不要なんですね、これは外しときます。

同じテストコードを 2.3のL-01Dとエミュレータで試してみたんですが
何回やっても正常に動きました…

T-01Cがだめなのかなあ、と思い始めた次第です。1



395:デフォルトの名無しさん
12/01/20 21:11:05.54
初歩の初歩で申し訳無いのですが、emulatorとadbへのPathが通らず困っています。

Win7(64bit)での開発環境を構築しようとしています。
最初、Program Files (x86)にADKをインストールしました。
その時点ではPathが通っていたのですが、
フォルダ名に半角スペースがあると後々トラブるかな?と思い、
C:\Android\Android-SDKというフォルダを作成し再インストールしました。
そうするとPathが通らなくなりした。

当然Pathも書き換えています。
JDKもEclipseも64bit版にしています。
考えられる理由があればご教授願います。
そもそもADKは32bitなので(X86)フォルダで無いとダメなのでしょうか?


396:デフォルトの名無しさん
12/01/20 21:33:31.22
onSaveInstanceState→onPause→onStop→onDestroy
→onCreate→onRestoreInstanceState→onResume
という一連の処理を、ボタンクリック時などに意図的に行いたいのですが
どうすればいいのでしょう?

397:デフォルトの名無しさん
12/01/20 21:49:32.02
>>395
pathを書き間違えてるだけでしょ。
pathをeditorにコピーして、見直してみなよ。
r16は半角スペースあっても動いてるね。


398:デフォルトの名無しさん
12/01/20 22:02:50.06
>>396
オーバーロードの中を別メソッドにして、ボタン押したらそれ呼び出してる。


399:デフォルトの名無しさん
12/01/20 22:16:30.24
>>398
よくわからないのが状態をを保存して復帰させるところです。
onSaveInstanceStateとonRestoreInstanceStateでは引数のBundleはどのようにあつかってますか?

400:デフォルトの名無しさん
12/01/20 22:33:24.63
>>393
音楽をフェードアウト、フェードイン

401:デフォルトの名無しさん
12/01/20 22:59:55.79
>>391
oggにしろ

402:デフォルトの名無しさん
12/01/20 23:08:15.37
>>399
View#saveHierarchyState とか View#restoreHierarchyState とかそのへん?

403:デフォルトの名無しさん
12/01/20 23:28:08.19
>>402
その辺のことなのかどうかもよくわかりません。

具体的にはViewPagerをつかっているのですが、
これ↓みたいにして無理やり更新すると、

this.onPause();
this.onStop();
this.onDestroy();
this.onCreate(null);

一番最初のページに移動しちゃうから、どうすれば前の
ページのまま更新できるのかなと。

404:デフォルトの名無しさん
12/01/20 23:31:06.79
>>402
View#saveHierarchyState と View#restoreHierarchyState
について、調べて試してみたらこれで解決しました。

ありがとうございました。

405:デフォルトの名無しさん
12/01/21 00:44:50.16
電話等のアプリの割り込みがあった場合surfaceviewが破棄されますが破棄されずに維持する又は破棄する前の状態の保存は可能ですか?
今は破棄のタイミングでアクティビティの変数にsurfaceviewクラスの変数の値を移して戻ってきたらアクティビティの変数からsurfaceviewクラスの変数に値を読み出しています
でもこの方法は重たいので他のアプリから戻ってきて描画をするときに時間がかかってしまいます

406:デフォルトの名無しさん
12/01/21 03:34:37.36
>>380,391
組み込みだからデコーダのバッファに限界があるでしょ。
MIDIが遅いのはデバイス初期化のコストが高いからじゃないかね。
中身GStreamerなんだからNDKに解放しろとは思う。

407:デフォルトの名無しさん
12/01/21 03:48:53.70
>>380
NDKでoggのデコーダでも組み込んで、デコード量を調節しながらデコードしてAudioTrackに吐けばいい


408:デフォルトの名無しさん
12/01/21 04:15:11.87
mp4の動画データの任意のフレームをBitmapにするようなAPIはありますか?

409:デフォルトの名無しさん
12/01/21 04:18:30.53
>>408
ない。だって任意のフレームがseekableだって保証されてないもの。

410:デフォルトの名無しさん
12/01/21 04:21:07.91
そういえば2.3以降はOpenALデフォだからNDKから叩けるよ

411:デフォルトの名無しさん
12/01/21 04:23:01.03
androidアプリから外部のRDBMSにセキュアにアクセスする手段はどんな方法がありますか?
アプリを利用する大勢のユーザーが存在する
それぞれユーザー登録してもらって個々のIDで個々のデータを格納します
例えばevernoteに近いアプリを作りたいと思っています
どうやってandroidからRDBMSにアクセスすればいいんでしょうか
差支え無ければご教授願います

412:デフォルトの名無しさん
12/01/21 10:44:29.88
>>408
MediaMetadataRetriever#getFrameAtTime で OPTION_CLOSEST を指定したら取れん? (ただしめっちゃ遅い)

413:デフォルトの名無しさん
12/01/21 11:53:12.36
>>411
まず、JavaプログラムからRDBMSにアクセスする方法は知っているか?
知らないなら(ry

414:デフォルトの名無しさん
12/01/21 12:04:41.40
>>413
レスありがとうございます
RDBMSのアクセスは独学のStrutsで何度も経験があります

LANやWAN越しでも使えるんですねありがとうございます

415:デフォルトの名無しさん
12/01/21 13:39:34.43
>>411
サーバ上のDBにユーザから直接アクセスを許すとかセキュリティ的にありえない。
悪意のあるクエリや更新をかけられたらどうするの。
普通はアプリケーションサーバにHTTPとかで独自のAPIを構築して、
ユーザにはソレ経由でのアクセスしか許さないようにする。
また、APIを受け取ったサーバ側は認証やバリデーションを行う。

416:デフォルトの名無しさん
12/01/21 13:47:28.43
データベース上にそれぞれのユーザを作って厳密に権限を設定管理しておけばあるいは
まぁやらないけど

417:デフォルトの名無しさん
12/01/21 13:47:49.07
画面上のあるボタンを押したら、Dialogが表示され、
Dialog内はlayoutのxmlで作成しました。
Dialog内はリストっぽくなっているのですが、そのリストの一項目を押したら、
処理後にDialogを閉じたいんですよね。
とりあえず、はしょったソースですが、どうしたら閉じることができるんでしょうか?

public class MyActivity extends Activity{
 //画面上のボタンを押したら、Dialog表示
 btn.setOnClickListener(new View.OnClickListener() {
  layout = inflater.inflate(R.layout.dialog,(ViewGroup)findViewById(R.id.dialog1));
  AlertDialog.Builder builder = new AlertDialog.Builder(MyActivity.this);

  LinearLayout ll = (LinearLayout)dialogLayout.findViewById(R.id.linear1);
  // Dialog上のlinearにOnClick処理
  ll.setOnClickListener(new View.OnClickListener() {
   @Override
   public void onClick( View v) {
    //ここで処理後に、Dialogを閉じたい。。。
   }
  });
  builder.setView(layout).show();
 });
}

悩み続けて疲れました。おねがいします。

418:デフォルトの名無しさん
12/01/21 13:51:06.64
show の戻り値をどこかに取っておけばdismissを呼べる

419:417
12/01/21 13:59:51.21
>>418
うぉぉぉぉぉぉぉぉ!消えた!!!!!
そーか。。。理解できました。ありがとうございます!!

420:デフォルトの名無しさん
12/01/21 14:50:11.88
Threadの配列って不味いかな
今んとこ不具合は起きてないからそのままだけど将来的にマーケットに登録したいから危ないなら仕様変更したいんだけど

421:デフォルトの名無しさん
12/01/21 15:01:23.08
不味い理由は?

422:デフォルトの名無しさん
12/01/21 15:20:57.34
マーケットで1万DL達成したんですが、週1くらいで「Caused by: java.lang.ClassNotFoundException:」が上がってきます
ビルド通った時点でありえないと思いますが、対処法ってありますか?

423:デフォルトの名無しさん
12/01/21 15:51:38.26
「仕様です。」っていう

424:デフォルトの名無しさん
12/01/21 15:54:00.68
「ただちに」っていう

425:デフォルトの名無しさん
12/01/21 17:01:15.79
でってう

426:380
12/01/21 17:10:35.06
みんなありがとー

>>400
最もやりたくねえwww

>>401
うお、途切れなくなった、何で?
MP3 と同じ圧縮オーディオじゃないの?

>>406
MIDI の場合、ループする毎にわざわざデバイス解放しちゃってるんかね

>>407
NDK って難しくないん?
俺にもできる?

>>401で一応解決したけど、OGG ってどの端末でも再生できるの?
少なくとも俺の MEDIAS N-04C の取説には書いてなくて、でも再生はできた

427:デフォルトの名無しさん
12/01/21 17:23:49.28
>>422
1万すげーな。
どのクラスで起きてるかわからんけど、AndroidのAPIのバージョン違うと起きる時ある。2.3で追加されたクラスで、コンパイルに2.3使って、1.6もサポートした時ね。
オレは、キャッチして、その機能はサポートされてません、みたいなメッセージで逃げてる。


428:デフォルトの名無しさん
12/01/21 17:24:56.88
wavとかmp3は処理が重くてラグが発生するからタイミングにこだわりたいアプリには向いてない。

SEとかBGMループとかサクサク動かしたい場合oggにするのが吉。ゲームの効果音とか

429:デフォルトの名無しさん
12/01/21 17:34:02.47
自分で外部Storageに作成したtextファイルを1行ずつ読み込もうと
していますが、Eclipseに従って try - catch を生成していったら
下記のようになってしまいました。
1つの try- catch にまとめられないか苦戦していますが、
結局Eclipseに怒られてしまい、下記に戻ってきます。
こんなソースになるものでしょうか? file は new File(String) で正しく作っています。


try {
BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(file), this.STR_ENCODE));
String lineData = null;
try {
while ((lineData = reader.readLine()) != null) {
// 1行読み込み
}
} catch (IOException e)
e.printStackTrace();
} finally {
try {
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (FileNotFoundException e) {
e.printStackTrace();
}

430:デフォルトの名無しさん
12/01/21 17:57:30.04
Androidのライフサイクルについて教えてください。
ActivityのonStopはどんな状況で実行されるんでしょうか?
端末の空きメモリが少なくなった場合とかですか?

Activityのメンバー変数をonCreate()で初期化してますが、
onStop()などが走った場合は、メンバー変数はGCされたりしますか?

onStop() -> onSaveInstanceState() -> onRestart() -> onStart() -> onRestoreInstanceState() -> onResume()
Activityのメンバー変数はonSaveInstanceStateで保存したほうが良いでしょうか?
よろしくお願いします。

431:デフォルトの名無しさん
12/01/21 17:59:05.96
>>427
なんとGoogleMapです
(/system/framework/com.google.android.maps.jar)


海外のフォーラムにも同様の問題がありましたが結論は
「再インストールしてもらう」だったような・・・

432:デフォルトの名無しさん
12/01/21 21:18:49.60
>>415
そうですよね、DBの接続をソースにはかけませんよね
独自APIを作ったことがないのでどんなものか・・・

>>416
データベース上にユーザーを作る方法はどうして「まぁやらないけど」になるんですか?
独自APIを実装せずに済むこと、androidソースにDB接続をかけることというメリットが感じられるんですが実際はどうなんでしょうか

433:デフォルトの名無しさん
12/01/21 21:50:52.90
カスタムテーマのStyle.xmlについて質問です。
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="CustomLight" parent="android:Theme.Light">
<item name="android:buttonStyle">@style/CustomButton</item>
</style>
<style name="CustomButton" parent="@android:style/Widget.Button">
<item name="android:background">@drawable/button</item>
</style>
</resources>
こんな感じでButtonに設定した@drawable/buttonのスタイルをImageButtonにも適用したいのですが、なんて書けばいいでしょうか。
よろしくお願いします。

434:デフォルトの名無しさん
12/01/22 01:11:46.99
復帰してもonRestoreInstanceStateが呼ばれない原因はなにがありますか?
ホームに行く時にonSaveInstanceStateは呼ばれてます
エミュでホーム→戻るという簡単な操作しかしてないですが

435:デフォルトの名無しさん
12/01/22 01:27:41.61
>>430
テストアプリでメソッドをオーバライドしてログ出力でも書いとけば
どんなタイミングで呼ばれるかは体感的に分かるよ。
ていうか分かっとけ

436:デフォルトの名無しさん
12/01/22 01:28:23.23
>>434
システムによってkillされてないから。Activityのインスタンスが死なずにそのまま再度onStartするだけなのでリストア不要

437:395
12/01/22 01:50:10.32
>>397
諸事情で返信遅れました、回答ありがとうございます。

念のため、ファイルのプロパティからパスをコピペしましたが無理でした。
r16は半角スペースあっても動いてるとの事なので、再度アンインストールしてから、
(x86)フォルダにインストールしてPathを通してみます。
ADBも(x86)フォルダに移動させたらPathが通ったので、これで解決できるかと思います、
ありがとうございました。

Pathが通らなくなった謎を、解決できなかったのは多少残念ですが・・・w


438:デフォルトの名無しさん
12/01/22 02:31:36.88
>>436
ありがとうございます

439:デフォルトの名無しさん
12/01/22 03:59:04.27
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="URLリンク(schemas.android.com)">
<item android:state_pressed="true"><layer-list><item><shape
xmlns:android="URLリンク(schemas.android.com)"
android:shape="rectangle">
<gradient android:angle="270" android:startColor="#b7ed36" android:endColor="#649016" android:type="linear"/>
<corners android:bottomRightRadius="10dp" android:bottomLeftRadius="10dp" android:topLeftRadius="10dp" android:topRightRadius="10dp"/>
<stroke android:width="2dip" android:color="#649016"/>
</shape></item></layer-list></item></selector>

このスタイルをボタンに適用するとxmlエディタ上では綺麗にボタンが表示されるのですが
エミュレータ、実機上では何も表示されなくなります
適用しない場合デフォルトのボタンデザインで表示されるのは確認しています
↑のxmlのどこの記述がおかしいのでしょうか?

440:デフォルトの名無しさん
12/01/22 04:00:06.01
ソースの貼付けが汚くなってしまった・・・すみません

441:デフォルトの名無しさん
12/01/22 08:00:53.40
橋下市長 在日外国人の固定資産税減免を原則廃止へ

大阪市の橋下徹市長は20日、市が在日外国人の集会所や労働組合の事務所などを対象に
実施している固定資産税の減免措置を原則廃止する方針を明らかにした。
大阪市では労働組合の土地や福祉施設、在日外国人の集会所、マンションに併設された児童の遊び場などを対象に、
固定資産税を減免。生活保護受給者の土地・家屋などにも適用しているが、
こうした減免措置について、橋下市長は「支出の意味を(市の担当者が)意識しなくなる」と指摘し、「固定資産税の減免は原則なし。」とした。

ただし市では、すでに朝鮮総連の関連施設への減免措置見直しにも着手しており、
今回の橋下市長の指示を受けて今後、補助金の形でも大幅削減となる可能性がある。
URLリンク(sankei.jp.msn.com)

442:デフォルトの名無しさん
12/01/22 10:46:30.78
>>439
android:state_pressed="true" の <item> だけしかないから
押されてないときは絵がないのでは?
eclipse上のデザイナなんか信用しちゃだめだ

443:デフォルトの名無しさん
12/01/22 12:54:14.18
ねえ、誰か新作アプリ作ってる人居る?
一斉に公開してダウンロード数勝負しない?


444:デフォルトの名無しさん
12/01/22 13:01:09.26
for (int i = 1; i <= num; i++) {
 String name = "hoge"+i;
 int id = getResources().getIdentifier(name, "id", getPackageName());
 ImageView iv = (ImageView)this.findViewById(id);
 iv.setOnClickListener(new View.OnClickListener() {
  @Override
  public void onClick(View v) {
   String name2 = "hogehoge"+i;←ここで i を使いたい
   int id2 = getResources().getIdentifier(name, "id", getPackageName());
   ImageView iv2 = (ImageView)findViewById(id2);
  }
 });
}

上記のようなケースはどうしたらiを使うことができるんでしょうか?

445:デフォルトの名無しさん
12/01/22 13:08:10.44
iをクラスのメンバ変数にする


446:444
12/01/22 13:23:55.28
>>445
結局それしかないんですかね。なんかスマートじゃない。。w
どもっす

447:デフォルトの名無しさん
12/01/22 13:36:07.29
別にそこで使わなくてもいいでしょ
for (i = 1; i <= num; i++){
final String name = "hoge" + i;
final String name2 = "hogehoge" + i;←ここで使えばいい
ってfinal知らない?


448:444
12/01/22 13:40:07.01
>>447
あ、そっちで入れたらいいのか・・・
どもです。

449:デフォルトの名無しさん
12/01/22 13:42:47.91
>>446
URLリンク(developer.android.com)()

450:デフォルトの名無しさん
12/01/22 13:58:00.88
>>435
おおきに

onStop()などが走った場合は、メンバー変数はGCされる場合もありますか?
そこが一番知りたいんですが。

451:デフォルトの名無しさん
12/01/22 14:41:37.53
>>443
まだ初心者過ぎて公開まで行かないけどジャンルを晒したほうが勝負しやすいんでない?

452:デフォルトの名無しさん
12/01/22 14:52:09.97
>>429
例外の種類ごとに処理を分けないなら全部Exceptionで受ければイイんじゃね?

try {
 …
} catch (Exception e) {
 e.printStackTrace();
}

453:デフォルトの名無しさん
12/01/22 15:19:38.31
>>452
ありがとうございます。
仰る通りですね。

reader.close() や finally を気にしつつ
例外 catch をまとめようと思います。

454:デフォルトの名無しさん
12/01/22 15:21:37.88
今javaを勉強してる者です。
androidアプリ開発でプログラミングデビューした人って結構いるのかな?
そういう人は本やらサイトやらで学んだんだよね。
そういう人たちはどのくらいjavaを理解してるんだろ?やぱテキストとかの例題をちょいと手を加えたりくらいかな?

455:デフォルトの名無しさん
12/01/22 15:39:26.47
eclipse HELIOS で開発しています。

layoutの編集画面に、「Theme」を選択する
コンボボックスがあります。

画面キャプチャ:
URLリンク(www.dotup.org)

これを変更すると、プレビュー画面のテーマ
(背景色やフォント色など)は確かに変わるのですが、
実機に流し込むとそのテーマが適応されていません。

と言いますか、「Theme」を変更したところで
xmlのどこにも変更が入りません。
「Theme」は、コンボボックスだけ置いてあって、
実際には何も機能していないのでしょうか?

456:455
12/01/22 15:40:16.23
× 適応
〇 適用

457:デフォルトの名無しさん
12/01/22 16:02:57.97
はい
あれはエディタ上で (もし適用した場合の) 見た目を確認するためだけのものです
同じレイアウトを場合に応じて異なるテーマで読み込むこともできますから、
実際に実行時にどのテーマを適用するかはレイアウト自体とは無関係です
テーマは AndroidManifest.xml で設定してくだしあ

458:455
12/01/22 16:04:05.77
>>457
やはりそうでしたか。
ありがとうとございます。

459:デフォルトの名無しさん
12/01/22 16:15:38.48
スレリンク(poverty板:3番)

460:デフォルトの名無しさん
12/01/22 17:12:12.76
>>450
参照が切れてないデータはそもそもGCの対象にならない。

461:デフォルトの名無しさん
12/01/22 17:20:40.22
>>454
人の事を気にして何かしら変化あるのかね?
他人は他人、自分は自分だろ。

462:デフォルトの名無しさん
12/01/22 18:27:17.19
初心者でもわかりやすいサンプルがたくさん載ってるサイト教えて下さい

463:デフォルトの名無しさん
12/01/22 19:09:04.78
そんなレベルの人はあきらめたほうがいい

464:デフォルトの名無しさん
12/01/22 20:59:31.04
×わかりやすい
○コピペしやすい

コード例をみて何やってるか分からない人はWebにあるサンプルとか使わないでください。
質問されても迷惑なので。

465:デフォルトの名無しさん
12/01/22 21:22:26.80
backキーを押したとき通常は一つ前ににアクティビティがあればそのアクティビティに移動しますが一つ前にアクティビティがある状態でアプリを終了させる方法はありますか?
まだ初めて少しなので専門用語などがわからずわかりにくい内容ですが簡単に言うとどんなにアクティビティを移動してもbackで一発終了させたいです

466:デフォルトの名無しさん
12/01/22 21:31:45.54
見捨てないで~(><)

467:デフォルトの名無しさん
12/01/22 21:33:13.01
アンドロイドデベロッパーズっていうサイトがすごいよいよ

468:デフォルトの名無しさん
12/01/22 21:35:48.81
>>465
一発でやる方法はない。

469:デフォルトの名無しさん
12/01/22 21:41:05.37
>>465
次のアクティビティをstartActivityするときに前のアクティビティをfinishしておけばよいのではないでしょうか

470:デフォルトの名無しさん
12/01/22 21:43:49.74
>>468
一つ一つ戻っていくんですか?

一発ではなくてもbackキーを一回押しただけで終了させる方法があれば教えてください

471:デフォルトの名無しさん
12/01/22 21:47:47.72
startActivity()のあとか、startActivityForResult() でも使えばいいんじゃないの。
つーか、ググりが足りないと思うけど。

472:デフォルトの名無しさん
12/01/22 21:52:36.82

就活中
(p)URLリンク(livedoor.blogimg.jp)

就職後
(p)URLリンク(livedoor.blogimg.jp)

街の人(やらせ業者)募集中です



473:デフォルトの名無しさん
12/01/22 22:09:04.33
>>469
かなりいい方法でしたが次へ行くタイミングよりfinishのほうが早くなってしまい>>471さんの方法を使いました

>>471
ぐぐりかたがたりなかったようです
おかげで上手く動作させることが出来ました

474:デフォルトの名無しさん
12/01/22 22:35:05.92
ファイルマネージャ系アプリからファイルの関連付け(というか普通のタップ)で実行する場合、
file:// の実パスが渡る場合と content:// で渡ってくる場合の二種類があるようです。
この2つはどういう基準で選択されてるんでしょうか?

475:デフォルトの名無しさん
12/01/22 22:56:07.20
>>474
そのファイルマネージャーが勝手に決めてるんじゃない?
コンテンツは、コンテンツマネージャーに登録してあるとかで。なければ、ファイル。


476:デフォルトの名無しさん
12/01/22 22:58:40.73
SSDにubuntuインストールして、android OSのビルドしようかと思うんだけど、
ビルド中にカキコすぎて壊れたりとか?
1ヶ月ぐらい使えればいいんだけど


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