Androidプログラミング初心者質問スレ Part6
1 :
デフォルトの名無しさん :
2011/02/20(日) 00:13:21.51
2 :
デフォルトの名無しさん :2011/02/20(日) 00:19:38.15
このスレッドは天才チンパンジー「アイちゃん」が 言語訓練のために立てたものです。 アイと研究員とのやり取りに利用するスレッドなので、 関係者以外は書きこまないで下さい。 京都大学霊長類研究所
EditTextで確定時に確定後の文字列もしくは確定時のエンターキーのイベントを取得するにはどのようにすればいいでしょうか?
バッテリーの残量を通知領域の画像に表示させたいのですが、 100%なら100%という画像を残量分作っておかないとダメなのでしょうか?
5 :
デフォルトの名無しさん :2011/02/20(日) 03:41:41.05
無線LAN、SSID「hoge」 WEPキー「123456789abcd」 に接続させたい場合、下のconfig設定だけだとこんなエラーが出てしまうんですが、 どこが間違っているかわかりますか? かなり苦戦しているのでよろしくお願いします。 ERROR/wpa_supplicant(14098): Line 0: Invalid WEP key 0 '123456789abcd'. (中略) ERROR/wpa_supplicant(14098): Set_key: Wrong Key ----------------------------------------------------- String SSID="hoge"; config.SSID = "\"" + SSID + "\""; config.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.NONE); String[] wep = {"123456789abc"}; config.wepTxKeyIndex = 0; config.wepKeys = wep; wifiManager.addNetwork(config); wifiManager.saveConfiguration(); wifiManager.updateNetwork(config); 実際には実在するSSIDとWEPキーでやっています。
>>5 以下でどうだろう。
>wifiManager.addNetwork(config);
>wifiManager.saveConfiguration();
>wifiManager.updateNetwork(config);
wifiManager.enableNetwork(config.networkId, true);
Activity上にDigitalClock(標準コンポーネント)を配置しようと思っています。 DigitalClockは、デフォルトでは秒数まで表示してしまうのですが、時分のみ表示されることは可能でしょうか? お手数おかけしてすいませんが、ご存知の方、教えていただけるとありがたいです。 よろしくお願い致します。
描画について質問させてください. 作戦ボードのアプリを作ろうと思っています. ただ、今の作りだとプレイヤーをタッチで動かすたびに コートも再描画しているため無駄な処理が多いです. コートにもオプションとして、色を変えたりする機能をつけたいので 画像としてではなくあくまで描画して表示させたいです. プレイヤーとコートのように、 ある背景描画の上で特定のものを動かす際の描画はどのようにやるのが 最適なのでしょうか.毎回全部描画しないといけないのでしょうか?
>>8 TestSurfaceViewのコンストラクターにSurfaceViewを渡すって変じゃない?
現状 android のエミュレータで、プログラマブルシェーダは動かないという認識であっていますでしょうか?
>>10 確かに変ですね。
ネットでxmlでSurfaceViewを配置する方法を見つけてそのまま使用していました。
ですがタッチイベントには関わりが無いようでした。
TestSurfaceView内でタッチイベントを取得取得したい場合はどうのようにすればいいでしょうか?
13 :
12 :2011/02/20(日) 17:54:00.82
自己解決しました。 xml内のSurfaceViewの記述が間違っていました。
ADTでXMLファイルウィザードだとリソースタイプの選択に colorとdrawableとrawがないけどこれって何か意図があるんですかね?
edittextを使わずにViewを継承したクラスでソフトウェアキーボードを表示するにはどうすればいいですか? こんな感じでやろうとしています @Override public boolean onTouchEvent(MotionEvent event){ requestFocus(); inputmanager.showSoftInput(this, InputMethodManager.RESULT_SHOWN); return true; } @Override public boolean onCheckIsTextEditor(){ return true; } @Override public InputConnection onCreateInputConnection(EditorInfo outAttrs){ return new BaseInputConnection(this,false); }
Alt+バックスペースキーで,入力中の内容の全削除ができますが, あれと同じことをプログラム的にする方法ってありますか? とりあえず以下のようにキーイベントを送ってみましたがうまくいかなかったです. InputConnection ic = getCurrentInputConnection(); long eventTime = SystemClock.uptimeMillis(); ic.sendKeyEvent(new KeyEvent(eventTime, eventTime, KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_DEL, 0, KeyEvent.META_ALT_ON)); ic.sendKeyEvent(new KeyEvent(SystemClock.uptimeMillis(), eventTime, KeyEvent.ACTION_UP, KeyEvent.KEYCODE_DEL, 0, KeyEvent.META_ALT_ON));
プログラミングの前の段階での質問で申し訳ありません eclipseでAndroidの設定をするときにSDKのアップデートが必要なんだけど SDK Manager.exeを起動すると大量のアップデートが出てきた これは無料でできるのですかね?
19 :
5 :2011/02/20(日) 23:31:19.85
>>6 ありがとうございます。
wifiManager.enableNetwork(config.networkId, true);
を追加したところ、
ERROR/wpa_supplicant(14098): Set_key: Wrong Key
はでなくなりました!ありがとうございます。
しかし、WEPキーのエラーは消えず、接続できていません
ERROR/wpa_supplicant(14098): Line 0: Invalid WEP key 0 '123456789abcd'.
いろいろ調べたところ文字コードの問題かな?とも思ったんですが、
eclipseでUTF-8にして記述しているのがいけないのでしょうか。
どなたかご存じの方よろしくお願い致します。
Tabに関しての質問です。 2つの「表示」「追加」というTabの項目を作りました。 「表示」ではデータベースからデータを取り出して データを表示させるActivityを表示させてます。 「追加」ではデータベースにデータを追加できるActivityを表示させてます。 最初に「追加」でデータを追加して 「表示」でたった今入力させたデータを表示させたいんですが Tabを作る時に「表示」のonCreate()が実行されていて 「追加」で追加した後に「表示」で表示させようと思っても古いデータしか表示されません。 「表示」を選択するたびにそのActivityを更新したいんですがどうすればいいんですか?
カスタムダイアログを実装しようとしているのですが、ダイアログの表示する位置はどうすれば変更出来ますか?menuダイアログみたいに、下からせり上がってくるのが作りたいんですが。
>>20 onResume に更新処理かけばいいんじゃね?
23 :
17 :2011/02/20(日) 23:48:45.21
>>18 ありがとうございます
意味がわかりません
Reason: Executing service というエラーは、どのような 状態から発生するのでしょうか?ぐぐっても有力な情報がみつから ないので、教えを頂けませんでしょうか
まずはどこでそういうメッセージが出てるのかくらい書いてくれ。
28 :
26 :2011/02/21(月) 18:42:56.72
>>27 javaの例外ではないので特定できませんが、サービスの処理が終了して
しばらくたつとこのようなエラー(Reason: Executing service)が出ます。
logcatに出力されています。
ほとんど実機で出ていて、エミュレータでは確認できませんでした。
>>28 その直前辺りにANRとか出てる?ServiceでBroadcastReceiverを登録したりしてる?
クイック検索バーみたいな一行のEditTextは,ハードウェアキーのEnterを何か特別扱 いしているのでしょうか? InputMethod上のonKeyDown()で,Enterキーイベントを処理してtrueを返しても,その あとさらにEnterが入力されたように動作するのですが.たとえば,変換確定のつもり でEnterを押したら,確定処理は確かにするんだけど,ついでにブラウザが起動して検 索を始めてしまうみたいな感じです. エディタアプリとかだとならない(余計に改行が入ったりはしない)んですよね.
>>30 少なくともクイック検索の入力欄はエンターで確定しても検索には行かない
もう一回エンター押したら検索行くけど
>>31 あれ,そうなのですか.じゃあやっぱり俺が悪いのか……
と思ってまたいろいろ試してみたところ,onKeyDown()だけでなくonKeyUp()
でもちゃんと入力をスルーしたらうまくいきました.
ありがとうございます.
In-app Billingのサンプルってもう動かせる? さっき公開鍵いれてみたけど、Can't make purchasesって言われて購入ボタン押せないんだが。。。
ウィジットにテキストを表示させる場合 状況によって変化させたいのでxmlではなくプログラムで書きたいのですが どのように書けばいいのでしょうか? アクティビティは使わないのでアプリと同じような書き方では表示できません><
>>34 RemoteViewsからTextviewを取得してsetTextで変える
36 :
34 :2011/02/22(火) 13:37:54.82
質問させてください。 アクティビティが存在するかどうかプログラム中で調べる方法はありますか? ActivityNotFoundExceptionの例外処理で知る方法は知ってますが, できれば前もって知りたいのです。
先生方質問させて下さい。 学習用にキッチンタイマー(一定時間後アラームを鳴らすソフト)を作成しています。 通知をダイアログで表示させたいのですが以下の問題点で詰まっています。 Activity1 : 時間の設定とカウントスタートボタン Activity2 : Style Theme.Dialogを設定している通知画面 処理の流れ A1スタートボタン押下→AlarmManager生成→ (時間経過後)Wakelock取得 KeyGuard解除→A2表示 問題点 A1スタートボタン押下>HOMEキー押下(>スリープキー押下)、時間経過まで待機すると A1は表示されているが、A2が表示されない点 (BACKキー押下で一瞬ダイアログが見えて、消えます。ボタンを配置していると押せます) Intent、WindowのFlagやAlarmManagerからの起動方法(A1→Serviceとか→A2)など 色々試しましたが、どうも違うようでした。お手上げです。 原因、もしくは解決方法がわかる方がいましたら教えて下さい・・・
>>38 Alarmに投げてるPendingIntentはどんな感じ?
>>39 例えば音声認識機能をそれが可能な端末のみで提供したい
(対応していない場合はボタンを隠したい)ので、
RecognizerIntentでアクティビティが起動できるかどうか
確認したいのです。
>>41 なるほどPackageManagerのqueryIntentActivitiesで対象Intent一覧を取得すれば
いけるんじゃないかね
43 :
28 :2011/02/22(火) 16:04:19.33
>>29 返答が遅れて申し訳ない。
ANRログが出力されています。
44 :
41 :2011/02/22(火) 16:19:23.25
>>42 ありがとうございます。ちょっと試してみます。
>>40 AlarmManagerに設定しているPendingIntentは、こんな感じです。
Intent i = new Intent(Activity1.this, Activity2.class);
i.setFlags( Intent.FLAG_ACTIVITY_NEW_TASK );
PendingIntent pi = PendingIntent.getActivity(this, 0, i, PendingIntent.FLAG_CANCEL_CURRENT);
AlarmManager#set(
AlarmManager.RTC,
System.currentTimeMillis() + 設定時間,
pi
);
>>43 で、Serviceの方はどうなの?BroadcastReceiver#onReceiveとか
Service#onStartで時間かかる処理やってるんじゃないの?
wifi接続のエラーが解決しません… wepキーが 123456789abcd だとして、 config.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.NONE); String[] wep = {"123456789abc"}; config.wepTxKeyIndex = 0; config.wepKeys = wep; として設定してます。しかし、 ERROR/wpa_supplicant(14098): Line 0: Invalid WEP key 0 '123456789abcd'. がエラーlogに出てしまいます。 キー自体は何度も確認したのであっているはずです。 文字コードもJISにしてみたりしてもだめでした。 何度も質問してしまって申し訳ありませんが、どなたか解決方法ご存知の方いらっしゃいましたら、アドバイスをお願いします。
俺には違っているように見えるんだが、疲れてんのかな…。
49 :
28 :2011/02/22(火) 19:05:55.28
>>46 BroadcastReceiver#onReceiveは行っておりません。
サービスはonbindとunbindを繰り返し処理しています。onstartは使ってないです。
どのサービス処理も5秒とかからないですし、Reason: Executing serviceが表示される
のはサービスの処理が終わってしばらく時間を置くと極稀に出てきます。
onbindとunbindだけでは完全にサービスを終わらせる事ができないのでしょうか?
ちなみにserviceの中でさらにスレッドを呼び出して処理しています(これも5秒以内に終わる処理ですが)
>>49 ソースをコピペした方が早そうな気がする。
>>49 onbindとunbindとスレッドの呼び出し方法をおおまかにコピペしてみて。
今日は先生が多くて頼もしいな
コンパイルできたのか? とかいうんじゃないぞ そっと見守るんだ
54 :
デフォルトの名無しさん :2011/02/22(火) 20:23:20.63
こっちで聞いたほうがいいか。 VMWareのAndroid x86でデバッグできないんだけど ADBHOST設定してゲストAndroid立ち上げて adb kill-server adb start-server adb devices でデバイスのリストがないんだけど他にやることある?
初心者です。 Android開発環境設定通りにして新規でAndroidプロジェクトを選んだのですが プロジェクト名などを入れても ×An SDK Target must be specified.と表示され 次へや完了ボタンが非アクティブになって作れません。 これはどこをどうすればいいのでしょうか?
x86側: setprop service.adb.tcp.port port番号 kill adbdのpid win?側: adb connect x86のipアドレス:port番号 とかは?x86使ったことないから適当だけど。
57 :
55 :2011/02/22(火) 20:49:14.96
あ、ビルド・ターゲットのとこに何もなく選べなくなっています。 ちゃんとandroid-sdk-windowsのフォルダは選んだんですが…
58 :
55 :2011/02/22(火) 21:49:22.93
Android\android-sdk-windows\platforms の中身が空っぽでadbというファイルがないのはいいんでしょうか? いろいろアップデートはしてみたんですが。
>>55 セットアップが完了してない。
> Android開発環境設定通りにして
どこを見て何をしたの?
60 :
55 :2011/02/22(火) 22:03:18.26
61 :
55 :2011/02/22(火) 22:13:14.61
android adb ない でググって 6番目に出てくるブログとかです。(個人ページのようなので) adb.exeの意味はわからないのですが。
>>47 public String[] wepKeys
Up to four WEP keys. Either an ASCII string enclosed in double
quotation marks (e.g., "abcdef" or a string of hex digits (e.g., 0102030405).
とあるので、
123456789abcd
ではなく、
"123456789abcd"
ではなかろうか?
>>61 参照している手順が古いような気がする。
EclipseのウィンドウメニューにAndroid SDK and AVD Managerとかない?
そこで開発ターゲットの環境インストールと、仮想デバイスの作成する。
詳しくはあなたが参照した手順よりも、もっと新しいバージョンを解説してる
ページを探してください。
64 :
55 :2011/02/22(火) 22:53:06.83
もう少しやり直してみます。
良ければ教えてください。 SDカードにアプリを保存して使った場合、そのアプリをアップデートしたら、保存していたデータが消えたりする事ってありますか?
66 :
47 :2011/02/23(水) 04:55:37.02
>>48 あああ…すいません。疲れているのは自分のほうでした…レスの書き間違えです。。
>>62 ありがとうございます。
String[] wep = {"123456789abcd"};
を
String[] wep = {""123456789abcd""};
にするということでしょうか?
明日実際に試してみます。
>>66 "\"123456789abcd\"" じゃね?
まぁまずは落ち着け
ウィジットのonUpdate内で Date date1 = new Date(); としたら()の中にint入れろというエラーがでました。 現在の日付を取得する場合は何も入れないでいいんですよね? どう書けばいいのでしょうか
フィルターかけてエラーメッセージを解釈すると訳分からんから、 エラーメッセージをそのまま貼り付けてくれ。
>>69 この行に複数マーカーがあります
- 行ブレークポイント:hogehoge [行: 31] - onUpdate(Context,
AppWidgetManager, int[])
- コンストラクター Date() は未定義です
ダブルクリックで↓がでる
+引数を追加してDate(int, int, int)に一致させます
+引数を追加してDate(long)に一致させます
>>70 それはjava.util.Dateじゃなくてjava.sql.Dateをインポートしてるから。
72 :
70 :2011/02/23(水) 08:25:51.31
>>71 ぎゃぼーできました><
ありがとうございます><
>ぎゃぼー なんか懐かしいなw
74 :
49 :2011/02/23(水) 10:32:26.88
>>51 ゲームなのでループ内で呼び出しています。
// サービスにバインド
if(XXXXXXXService != null && !XXXXXXXService.isServiceResult()) {
bindService(intent, serviceConnection, Context.BIND_AUTO_CREATE);
}
if (XXXXXXXService != null && XXXXXXXService.isServiceResultEnd()) {
HashMap rsMap = XXXXXXXService.getResultMap();
if(rsMap != null && rsMap.size() > 0 &&
rsMap.get(GameConst.KEKKA_CODE) != null &&
GameConst.KEKKACODE_NG.equals(rsMap.get(GameConst.KEKKA_CODE).toString())) {
changeGameState(GAMEXXXXXXXXXXXXXX);
} else {
changeGameState(GAMEXXXXXXXXXXXXXX);
}
unbindService(serviceConnection);
}
PCスペックは高いほうだと思うんだけど、3.0のエミューレーターが重すぎる… 何か設定でメモリ割り当てとかできる?
>>74 bindService直後にserviceって触れたっけ?
77 :
74 :2011/02/23(水) 14:24:25.69
>>76 直後じゃ無理なので再度ループして戻ってきた際にサービスがあれば
サービス内のパラメータをチェックして処理が終わるとunbindする
仕組みです。
1本100円のアプリが 100本売れれば1万円 1000本売れれば10万円 1万本売れれば100万円 10万本売れれば1千万円 100万本売れれば1億万円 夢が広がリンク\(^o^)/
現実には5本しか売れないうえ、、1本クレームで返金
android端末自体でandroid開発はできますか?
ま、一千万の上がわからないやつには無縁の世界だわなw
これですか Javaとは違うのかな Java+eslipse並のことはやはり無理なんですかね?
>>81 ワロタwww
1億万円て小学生の発想だよな
万消すの忘れただけだお(´・ω・`)
お前みたいなksが、ソースコピペってバグだして 修正忘れただけだお(´・ω・`) とかほざきやがるんだ…猛省しろ!
たまにソースコピペしたら全角スペースがまじってるのってわざとなのか?w
Webからコピペしてるなら HTMLの知識が足りない人が空白開けたいだけじゃないの
MSDNなんて関数の()に全角混じってやがるからなぁ
>>74 for文で回して何か判定して処理してるけど、
bind中にunbindされたり、unbind中にbindされたり、
あるいは2重にbind、unbindが呼ばれないって保障はあるの?
91 :
74 :2011/02/23(水) 18:59:33.69
>>90 処理が終了すると立てるフラグで判定しています。
このフラグがたっていた場合Unbindしたり、bindしたりします。
ログを見る限りだとbind unbind destroyが1回づつ呼ばれているので
大丈夫です。
bind unbind destroyが終わってしばらくするとエラーが発生
してしまうので非常に悩んでいます。
>>91 色々聞いたけど大丈夫だって言ってるから全く分からんわ。
onBindでスレッド起こして何かしてるって言ってたけど、
unbindする時にそのスレッドはどうなるの?
エミュレーターが重くてしょうがないんですが、 エミュレーター上で裏に行ってしまったプロセスを殺す方法はないでしょうか? 実機ならマーケットからTaskControlとかそういうのを落としてくればいんでしょうけど。
ホームアプリのようにフリップするにはどうしたらいいのでしょうか ViewFlipperはちょっと動きが違うようです。ページチェンジが発生したときのみ アニメーション切り替えを行うみたいでした。 指でドラッグしてる間は指の動きに付いてきて、離したときに閾値を超えていたら 切り替え、超えていなかったら戻るみたいにしたいのですが
>>96 そのようにコーディングしてください、としか
99 :
54 :2011/02/23(水) 21:46:03.29
>>56 THX
デバイスみえた。
x86側:
setprop service.adb.tcp.port XXXX
ホスト側(win):
set ADBHOST=xxx.xxx.xxx.xxx
adb kill-server
adb start-server
adb devices
TCPセクションが確立できてなかったのかも。
>>75 まあqemuだからねぇ。
そういえばqemuのアクセラレータあったよね?なんていったっけ?
昔試したら青画面が出てそれ以来触れたことないけど。
なんかx86のWindows上で動くAndroid環境(つまりqemuでなくx86のandroidシステムをWinアプリとして動かす) ってあったようなきがするんだけど、どうなったんだろう
UMPC持ってるのでそういうの欲しいなあ
BlueStacksのことか?
>>100 > そういえばqemuのアクセラレータあったよね?なんていったっけ?
kqemeの事かな?
結局AndroidMarketまで使えるのはまだないのか‥
エミュレータって状態の保存はできないの? できるなら毎回起動するよりは早い気がするんだけど
110 :
54 :2011/02/24(木) 02:06:12.57
>>108 gsm.operator.*とgsm.sim.operator.*をsetpropするとか?
111 :
54 :2011/02/24(木) 02:15:53.40
ああ、あとro.build.fingerprintもいるね。
112 :
47 :2011/02/24(木) 06:21:25.50
>>67 ありがとうございます。
またどつぼにはまるとこでした。
仰せのようにすることでWEPキーのエラーはなくなりました。ありがとうございました。
しかしまた別のエラーが…
ERROR/wpa_supplicant(14098): Line 47: WPA-PSK accepted for key management, but no PSK configured.
ERROR/wpa_supplicant(14098): Line 47: failed to parse network block.
−−−−−−−−−−−−−−−−−−−
config.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.NONE);
これでWEPに指定してるはずなのになぜWPA-PSKがでてくるの…
そろそろ死にたい(´・ω・`)
113 :
74 :2011/02/24(木) 11:56:52.06
>>92 スレッドに対してサービスのオブジェクトを渡して、
スレッドの処理が終了すると、サービスのオブジェクトへ終了を通知
する仕組みなので、その通知がない限りunbindすることはないです。
115 :
38 :2011/02/24(木) 16:43:47.84
>>38 やっと自己解決しましたので一応報告を。
Activityのandroid:taskAffinityを設定することで、
期待通りの動きをしてくれるようになりました。
ドキュメントやソースを読むのは大事ですね・・・
WindowsXP上で下記のページを参考に
http://d.hatena.ne.jp/goriponsoft/20110212/1297510921 Android-x86の環境をセットしようとしたのですが、
8. VirtualBoxネットワークブリッジの設定
で[ローカルエリア接続]と[VirtualBox Host-Only Network]をブリッジ接続すると
PCのインターネット接続が切れてにっちもさっちも行きません。
いろいろとググった結果、[CATVモデム]→[LANカード]+[PC]という直結の環境だと
マズイような気もしますが、まだよく判りません。
上のページのやり方で上手くいってる方いましたら、接続環境などをお教えいただけ
れば、と思います。よろしくお願いします。
>>98 自前でBitmapの座標かえつつ表示して閾値こえたか拾ったりしないといけないのでしょうか
そういうクラスは無いんですかね
>>96 何回かここでも出てるけど明確な情報はなかったと思う
Launcherのソース公開されてるんだから見てみりゃ分かるけど、自力でごりごり
120 :
54 :2011/02/24(木) 23:54:02.96
>>116 VMwareのほうが簡単だぞ。
普通にVMwareインスコしてふつうにゲストOSインスコして普通にデバッグするだけ。
仮想環境側の設定はGPU使うように設定するだけ。
121 :
116 :2011/02/25(金) 00:22:01.96
>>120 返答ありがとうございます。
とりあえずVirtualBox&Android-x86が外に繋がらないだけで、
eclipseで実行できるまではいけたので、これでがんばってみようと思います。
122 :
14 :2011/02/25(金) 00:38:43.31
>>112 まだ無理なのか(´・ω・)
以下でどう?
config.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.NONE);
config.preSharedKey = "123456789abc";
wifiManager.addNetwork(config);
wifiManager.saveConfiguration();
wifiManager.updateNetwork(config);
wifiManager.enableNetwork(config.networkId, true);
エラーログを吐いてるところ(たぶん)抜粋。
なんでかWPA-PSKが有効になってPSKがセットされてない?
-------------------------------------
static int wpa_config_validate_network(struct wpa_ssid *ssid, int line)
{
int errors = 0;
if ((ssid->key_mgmt & WPA_KEY_MGMT_PSK) && !ssid->psk_set) {
wpa_printf(MSG_ERROR, "Line %d: WPA-PSK accepted for key "
"management, but no PSK configured.", line);
errors++;
}
return errors;
}
JavaSEとの違いなんだけど Java2D -> android.graphics.Canvas IIO -> なし JavaSound -> なし JOGL -> JSR 239 てかんじ? 音声ファイルや画像ファイルの自前デコードとかできないの? あとOpenGLで文字を描画する方法がないんだけど単にビットマップに文字書いてテクスチャ貼りつければいいだけだよね? なんかJOGLみたいに2Dと3D混在させたら遅くなるとか罠はないの?
ノートにSDK3.0入れてエミュ起動させると そのノートがAndroid3.0タブレットとして使えるんじゃね
エミュレータだと重すぎて話にならん
重いのは起動するときだけであとはサクサクじゃね
どこがどうサクサクなのか教えて欲しいわ
後のせだろ
RemoteViewsでstring.xmlの文字を設定するにはどう書けばいいのでしょうか?
130 :
129 :2011/02/25(金) 11:40:37.90
補足 setTextViewText(R.id.TextView01, "TextView01"); ↑ この部分をstringsで指定したいんです。
解決しないので教えていただきたいのですが 下記のエラーはどのような場合に出力されるのでしょうか? 02-25 11:46:35.369: ERROR/ActivityManager(2440): ANR in org.example.renaisimugame 02-25 11:46:35.369: ERROR/ActivityManager(2440): Reason: Executing service XXXXXXXX/.XXXXXXXXService 02-25 11:46:44.115: DEBUG/dalvikvm(3975): GC_EXTERNAL_ALLOC freed 223 objects / 8352 bytes in 52ms
132 :
131 :2011/02/25(金) 12:21:58.13
自己解決。。うーん、でも時間がかかる処理がないのになぜ落ちるかわからない – main thread (“event thread” / “UI thread”) が 5 秒以上反応しない – BroadcastReceiver が 10 秒以内で終わらない – 典型的には... • ネットワーク操作 (ダウンロードなど) を main thread で行っている • 時間がかかる 'disk' 操作 (最適化されていない SQL とか) を main thread で行っている
AsyncTask内で更にAsyncTaskを使用してhttpの通信をさせているのですが、 呼び出した子タスクが全て完了したか親タスクで確認するにはどのように実装するのが最適でしょうか? 現状、子タスクにpublicなstatusを持たせて、親タスクにてwhile回して完了まで待機させてます。
134 :
132 :2011/02/25(金) 12:38:24.50
Service内でAsyncTaskを呼び出して、処理が終わると サービスへ結果を返し、さらにActivityに結果を返し、OpenGLで動いている 画面状態を変更するというような処理をしていますがANRが出てしまいます。 OpenGLで常に描画していて(ロード中画面)もANRは出るものなのでしょうか? 出るとしたらどのような対処が必要でしょうか? 02-25 11:46:35.369: ERROR/ActivityManager(2440): ANR in org.example.renaisimugame 02-25 11:46:35.369: ERROR/ActivityManager(2440): Reason: Executing service XXXXXXXX/.XXXXXXXXService 02-25 11:46:44.115: DEBUG/dalvikvm(3975): GC_EXTERNAL_ALLOC freed 223 objects / 8352 bytes in 52ms
>>96 android.widget.Galleryは見た?
137 :
129 :2011/02/25(金) 13:41:44.37
>>136 むきゃーできました><
ありがとうございます><
イラっとくる
いとうあさこ乙
むきゃー ごめんむきゃー
千明せんぱーい
serviceをへのbind時に設定する値によって処理を切り替えるよう にして、serviceを使いまわすというやり方はあまりよくないのでしょうか? intentに処理Aを行うように設定 ↓ AServiceへbindし、処理Aを実行 ↓ AServiceをunbind ↓ intentに処理Bを行うように設定 ↓ AServiceへbindし、処理Bを実行 ↓ AServiceをunbind このような使い方をするよりはサービスを複数個用意したほうが よいのでしょうか?ちなみに処理AとかBはサーバへの処理です。
>>142 内部の処理をどの程度共通化して使うかによるのではないかなぁ
分岐して読みにくくなるなら分けるべきだろうし
>>143 返答有難う御座います!
内部処理を分岐する方向でサービスは1つで
共通化できる部分は共通化して粒度を見て判断しようかと思います。
そもそも、バインドで処理を実行するのがおかしくないか?
サービスってそんなに起動、停止繰り返すもんかね。
スレッドのことをサービスだと思ってるんじゃまいか
あら、いつの間にか3.0が出てたのか しっかしホント早いよなー
getMeasuredWidth() と getWidth() の違いって何でしょうか? buttonで取得してみましたが全く同じ大きさになります。 どのように使い分けをするのでしょうか。
getMeasuredWidth()のコメント見れば分かる 英語だから俺にはわからんかったが
過去のSDKのダウンロードについて教えてください 今、CentOS 5.5 x86_64の開発用WSに、Android SDKをインストールしようと思っています でSDKのページに行くと、android-sdk_r10-linux_x86.tgzがダウンロードできるのですが、 上記CentOS 5.5のカーネルのバージョン(2.6)が、r10の対象(2.7)よりも古いため、 SDKに同梱されているエミュレータの起動でエラーとなります ただ以前のr5かr6の頃は、2.6のカーネルの対応版で、その時はエミュレータが起動して いたので、その当時のr5のアーカイブがほしいと思っています SDK Archives内には1.6以前のものしか置いてないようなのですが、それ以降のものを ダウンロードできるURLがあるなら教えてください
Win7 64bitで開発してる方っておられます? 何か不便な事あれば教えてほしいです
multi
エミュレータで android:configChanges="orientation" って効いてる? 実機だと効いてるんだけど、同じアプリをエミュレータに送って Ctrl-F12で画面回転するとonDestroyが呼ばれてる気がする…。
半円の描画方法について教えてください. 2点指定の座標(x1, y1), (x2, y2)が与えられていて、 その2点間が直径になるような半円を描画したいです. Path#addArcにて addArc(RectF(x1, α, x2, y2), 180, 180)) とすればよいのかと思い試してみたのですが、楕円っぽくなってしまい うまくいきません 何か半円を描く方法があれば教えてください.
αって何よ
>>157 RectFのtopの部分になるのですが、
描画したい半円の大きさに合わせて調整しよう思い、
任意の数値を入れる予定です。
(記載せずにすみませんでした)
この手のAPIはたいてい矩形に内接する円弧を描く 正円が描きたければRectFは正方形を指定 その上で描画開始と終端の角度を指定
>>159 ありがとうございます.
矩形に内接であるという基本的な事を理解していませんでした.
正方形にしたら正円になりました.
>>155 デフォルトだとエミュレータはスライド式のハードキーが付いてる設定
hardkeybordhiddenか何かも必要
通常のJavaのようにimg画像を複数用意できますか? メモリはあまり多くとりすきるのはやめたほうがいいですか?
できますが、とりすぎるとすぐOutOfMemoryErrorになります ご利用は計画的に
ですか‥
>>116 が解決したので自己レス
ローカルエリア接続を共有にすればブリッジ接続もいらず
IP値だけで行けるだけの話でした。お恥ずかしい限りですorz
166 :
デフォルトの名無しさん :2011/02/27(日) 11:50:41.58
指定時刻にタイマーの処理を行う方法について質問です。 現状、Serviceの中でHandlerのスレッドを起こして、 指定時刻と現在時刻の差分を取ってからHandler#postDelayedの 引数に指定しています。 またスリープ中に止まらないようにWAKE_LOCKも使用しているのですが、 決まった時間に1回だけ発動するタイマー処理として、この方法は 正しいのでしょうか?WAKE_LOCKを使わない方法とかありますか?
>>166 何も常駐しないのであれば、それでもいいかもだけど
普通はAlarmManager使うと思う
Androidで携帯端末相互に通信するようなプログラムを作りたいんだけど、 端末の個々識別ってどうやってやりますか? 個々にIPアドレスが割り振られているわけではないとは思いますが、 MACアドレスで接続先の識別、指定でできたりするんでしょうか?
169 :
デフォルトの名無しさん :2011/02/27(日) 15:36:57.15
>>167 AlarmManagerというのを使うんですね。ちなみに
タイマーが存在する間はServiceとして常駐させてます。
常駐する理由はHandlerをキャンセル出来るようにするためです。
AlarmManagerだとWAKE_LOCKの処理は要らないんですね。 処理方法見直してみます。
171 :
デフォルトの名無しさん :2011/02/27(日) 20:42:34.03
すいません、GalaxySのエミュってもうあるんでしょうか?
それに近いものならできる
>>104 ああこれ記事が古いんだな2009
中のAndroidのイメージのバージョンも古いということか
新しいのどっかないかな
作ったアプリをWIN側からSDカードに書き込みそれをAndroid側から使うというようなことはできますか? あるいはそれに近い橋渡しはできませんか?
175 :
171 :2011/02/28(月) 02:57:19.35
やはりまだ出てないようですね・・・失礼しました。
SDK2.2で絵文字の表示は出来ますか?
>>168 そういうのってbluetoothじゃだめ?
>>174 なにをしたいのかがわからない
adb installとか
adb pushじゃだめなの?
何かAndroid端末を開発機として買おうと思ってるんだけど 安くて、自分でbuildしたAndroidOSをインストール出来る 実機で何かいいのありますか? Wifiさえ使えればOKで、G3回線は使いません。 結局ヤフオクでHT-03Aを買うのがいいのかな?
GalaxyS GalaxyTabなら、AndroidSDKから何でもできるよ 公式サイトからSamsung Kiesをダウンロードする必要あり
>>181 なるほど、ありがとう。
申し分ないけど、ちょっと高いなあ。
使ってる携帯をMNPで乗り換えするなら
割引き価格の1万9千円くらいになる?みたいですね。
開発機と割り切ったものなら数千円でなんとかならないかなと
考えてましたが、HT-03Aでも1万2千ちょいするみたいですし・・・。
Dev Phoneがもっと安ければなあ。
AndroidのSDカード内にあるアプリをAndroidのターミナルから手動でインストールできますか?
>>177 実験的なもので、携帯回線を使用したandroid同士のP2P通信をやってみたいんだ
だから、重要性はないんだけどできるのかなーって思って質問したんだ
引き続きご助言いただける方お願いします
>>185 androidIDもMACもrootで書き換え可能だったはず
androidで端末ユニークなのってSIMのIDだけじゃない?
IMEIがあるじゃん。書き換えたら逮捕だし。
>>187 実際にAndroidのAPIから取れるのは
不揮発にかきこまれたIMEIそのものではないけどな
単純にP2Pに「実験」がしたいというレベルなら、端末に割り当てられたIPを直接入力して試せばいいんじゃないの?
そもそもこれは、「割り当てられたIPをP2P上に配信して端末特定するにはどうしたらいいでしょうか?」という話なの?
>>185 が何を質問しているのかがわからないんだけど……。
>>186 >>187 それぞれに割り振られた固体番号使うって事?
>>189 自分でも、上手く言えてないのは分かってるんだが、
ネット上で他のスマフォを接続先に指定するのに何を使ってるのかなと
この言い方じゃ変わらんかorz
wifi下で行えば、ローカルに割り振られたIPで、できるか
つい携帯回線上でやるのに目線が行き過ぎて見落としてた
ローカル下で試してみるthx
191 :
189 :2011/03/01(火) 01:12:45.76
>>190 ネットワークレベルではIP以外には無いと思うんだけど……。
別に3GでもグローバルIPは割り当てられるでしょう?ただ、固定でないと言うだけで。
で、固定でないから特定の端末のIPを取得するにはどうしたらいいのか?っていう話に発展すると思うんだ。
ローカルで試してみればいいや、って話だとたぶん上でレスした人たちはずっこけていると思うよw
MACアドレスなら固定じゃまいか
ただ、通信部分までサーバ経由したらP2Pとは言わなくなっちゃうね……。 ロビーサーバは用意するとして、グローバルIPが割り当てられないのはSPモードかな? とすると、P2PではSPモード端末同士ではコネクションが張れないってことになる。 SPモードでNAT越えの手段として有効なのってなんだろうね。 UDPホールパンチングとか試した人っている?
ラージスケールNATでグローバルIP貰えないキャリアもあるよ。 今後はほとんどそうなって行くんじゃないかな?
UPnPは通してくれなさそうだなぁ STUNくらいは通って欲しいね
無い袖は振れないから、グローバルIP配れないのは仕方ないけど。 その場合、別途IPv6にも対応して欲しいなぁ……。 #そして、端末によってIPv6対応してないとか出てくると
AndroidってIPv6スタック積んでるの?
>>194 いや、だからそこまでしてP2Pにするメリットねーからクライアントサーバ型にすれば? と言っている
単純に好奇心で実験してるんだったらそれはそれで良い事だとは思うけど、
ソースレベルならともかく、実装方法どうするかって段階で質問するなって感じ
アンドロイドエミュレーターでListViewのアイテムを選択する動作ってどうやったらいいのでしょうか 具体的に言うとどうやったらonItemSelectedイベントが起こるのでしょうか 今はエミュレータの方向パッドを押すとonItemSelectedが起こるのですが マウスではどうやればいいのか分かりません
>>200
今一言ってる事が理解できんが…
マウスポインタで、アイテムクリックじゃないの?
onItemSelectedイベントでデバッグメッセージを出力するようにしてるんですが マウスでクリックしてもメッセージ出力されないんです で、マウスでクリックした後に方向パッドを押すとメッセージが出力されています なのでクリックしただけではonItemSelectedイベントは呼び出されないみたいなんです
http://tutorial.jp/prog/android/andman.pdfを見ながら勉強してます 。
ちょっとわからないところがあるんですが。61ページの
private void startSecondActivity() {
final EditText edittext1 = (EditText) findViewById(R.id.edittext1);
final EditText edittext2 = (EditText) findViewById(R.id.edittext2);
final EditText edittext3 = (EditText) findViewById(R.id.edittext3);
String s1 = edittext1.getText().toString();
String s2 = edittext2.getText().toString();
String s3 = edittext3.getText().toString();
Intent i = new Intent(this, SecondActivity.class);
i.putExtra("org.example.putextra.s1", s1);←
i.putExtra("org.example.putextra.s2", s2);←
i.putExtra("org.example.putextra.s3", s3);←
startActivityForResult(i, 0);
}
}
の矢印した部分でのorg.example.putextra.s1は、どこで宣言されてることになるのでしょうか。
よくわからないので、どなたか解説をお願いいたします。
>>199 思考ゲームで話してるだけだからメリットとかは正直どうでもいいな。仕事なわけでもないし。
でも、通信内容次第ではクラサバよりP2Pの方がメリットがある場合があるから何とも言えないよ。
扱うものが音声・映像をとかだと、それに耐えるサーバ用意するのも大変じゃない?お金的にもつらいし。
組んでからこの方法は駄目でしたとか悲しすぎるから、実装方法の段階の疑問もOKだと個人的には思うけどなぁ。
ただ、もっと具体性のある形で質問してもらえると話が離散しなくて良いよね。
>>204 宣言じゃなくて、格納データのキー名。文字列でしょう?
やってることはハッシュにデータ格納しているみたいなこと。
>>205 そこは自分で試行錯誤するとこじゃね?
少なくとも初心者スレでやる問答ではないし、
このスレでの質問の回答としては現実的な所で
>>189 ,
>>199 みたいになるぜそりゃ
>>202 タッチ操作ではonItemSelectedイベントは発生しない(IS01は除く)
タッチしてもタッチした行は選択状態にはならないよね?
>>207 んー、質問者が試行錯誤でNAT traversalの手法を編み出せる可能性は考慮してなかったなぁ
初心者スレとしては、なんだかわからないけど難しそうっていう印象を与えることには成功したと思うよw
少なくともNATの考慮、端末の一意IDの考慮なんてことも主題としてあげられたし、質問スレとしても誠意がある対応ができたんじゃないかな?
P2Pなアプリは結構みんな作りたくなるので定番の手法があるといいね。
すみません、音声認識で出てくるダイアログ?を オフラインで表示させることは可能ですか? RecognizerIntent はネットワークに接続していないと使えないみたいなので・・・。
解析はGoogleのサーバでやってるはずだから無理
213 :
185 :2011/03/01(火) 11:36:34.27
なんか、私の思慮不足でご迷惑をおかけしてすいません とりあえず、ローカル環境下で自分のやりたいことができるかを試してみて、 そこからどうしていくかを考えて生きたいと思います。 皆様、ありがとうございました
tableRow1のheightを100pxに設定して、その中にimageButton(実縦200px)を並べたら 自動的に高さが100pxに縮小されて表示されるようにしたいです。最悪は上下カットの100pxでもOK。 Layoutを使って配置したらボタンが縦200pxで表示されてしまいます。※全ボタンのheight:match_parent 期待した結果には一々全部のボタンのheightに100px設定するか、ソースで配置するしかないのでしょうか?
>>214 scaleTypeをfitCenterにするんじゃだめなん?
double 型から int 型への変換するとき DecimalFormatでstringにしてからintに戻すのと キャストで int i = (int) d;というようにするのではどちらがいいのでしょうか? とあるサイトではキャストは危険だから極力使わないほうがいいと書いてありましたので。
>>216 Intger.parseIntではだめなのか?
>>217 解決しました。
Math.roundを使ってみます。
>>216 わざわざ文字列にするとかありえない。
普通はキャストを使うよ。
>>216 大きい数が扱える型からそれよりも小さい数しか扱えない型へのキャストは危険というか
下手したらデータが飛ぶから要注意
それだけの話かと
>>209 ピュアP2Pなら定番はDHT
だけどその前に質問者の根本的な知識が足りて無いと思う
何でそこでDHTの話になるんだよ 根本的なとこで話についてきてねえだろw
>>215 fitCenterを試してみましたがやはり表示サイズは変わりませんでした。
うーん、ミスらしい所もわからないし、もうソースで配置します; どうもありがとうございました。
andoroid機自身でJavaコンパイルできるようになる日はいつになることだろか
コンパイルまではできるけど、classファイルからdexつくるとこの ツールがないんだよな。dxとか。
質問させてください。 Proguardを有効にしてコンパイル(Export Signed Android Package)したいのですが, 以下のエラーが出て,完了できません。 - Proguard returned with error code 1. See console - 'C:\Program' は、内部コマンドまたは外部コマンド、 - 操作可能なプログラムまたはバッチ ファイルとして認識されていません。 - '-jar' は、内部コマンドまたは外部コマンド、 - 操作可能なプログラムまたはバッチ ファイルとして認識されていません。 見てすぐ,パスを通し忘れてるんだろうかと思い, SDKのtools,platform-tools,tools\proguard,\tools\proguard\bin などにも通したのですが,結局成功しませんでした。 何が間違ってるのでしょうか? 環境は,Windows 7/SDK R10(API11)です。 proguard.cfgは別に新規プロジェクトをつくってその中のものを流用しています。 proguard.configのパス指定は間違ってません。
>>226 パス自体に半角スペースが含まれているなら、""(ダブルコーテーション)で挟んで指定。
>>224 アンドロイドタブレットがあるんだから、それ使ってコンパイル出来るようになっても良いよな
ウィジェットアプリを作成しています ImageViewにdrawableのリソースを変数に入れたR.drawableを指定して割り当てているのですが Android2.2では正常に動くものが、1.6でdrawableがずれてしまいます 具体的にいうと、a1.png, a2.png, a3.pngがあり、 a1.pngを表示させようとするとa2.pngが表示されてしまう状況です 1.6ではR.drawableをint[]に入れることがまずいのでしょうか ちょっとエスパー必要かもしれませんが、思い当たることがある方、 アドバイスよろしくお願いします
230 :
226 :2011/03/02(水) 10:49:12.89
>>227 ありがとうございます。
そんな基本的なミスをorz・・・と思いつつ,半角スペースが入っている
パス全てにダブルクォーテーションを付けて再起動したのですが,
解決しませんでした。
ログを詳細に出すようにしても,Proguard関連で別に
何か出てるようでもなく・・・。
何かパスを通し忘れてるのでしょうか。
>>230 エラーを単純に見ただけだど、どう考えても途中に空白があるフォルダにあるコマンドを"つけずに動かそうとしてる
SDKを入れたフォルダがそうなら移動してみれば?
>>230 素直に半角スペース無しで再インストールすれば?
233 :
230 :2011/03/02(水) 12:11:18.03
>>231 >>232 ありがとうございます!
SDKの場所を移動させてうまくいきました。本当に助かりました。
ボタンの長押しが連打になるようにできますか?
>>234 タップの回数をカウントすればできるでしょ?
236 :
234 :2011/03/02(水) 13:20:27.09
DatePickerのアップダウンボタンみたいに 押しっぱなしにするとClickイベントが連続して発生する動作です。 つか、それならソース見ろって話ですね。。。 失礼しました。
ウィジェットをタップしたときアクティビティを起動させてたいのですが どう書けばいいのでしょうか? onUpdateの中にかけばいいのですかね
SDK Manager.exeが起動しません 黒い画面が一瞬現れて消える状態です javaのバージョンは最新です どうすればいいでしょうか?
ブロードキャストとサービスの違いがわかりません><
規則的な名前のイメージボタンを大量に使用したいのですが、 ButtonImage BT1, BT2, BT3 〜 BT30; と延々と宣言するのが面倒なので下記のような関数を作ってみましたが、うまく動きません。 private void makeVar(String base, int k){ //makeVar("BT", 30); のように使用 int i; String name; for(i=0; i<=k; i++){ name = String.valueOf(i); name = base + name; ImageButton = name; //★ } } ★の所で"ImageButton cannot be resolved to a variable"とeclipse上で×マークが出ます。 変数宣言に変数の値って使えないのでしょうか? 何か楽に大量の宣言ができる方法があれば教えて頂きたいと思います。
>>240 ImageButton = name; //★
ImageButton の型は?
>>240 配列使っては?
ImageButton[] buttons = new ImageButton[k];
for (int i = 0; i < k; i++) {
buttons[i] = new ImageButton(this);
}
// buttonsは後で利用
>>241 あっ、そうか、型が違うから通るわけがないですね;
>>242 なるほど、配列を使えばいいんですね。
型が違うのは分かったけどその後どうするかでつっかかっていたので助かりました。
どうもありがとうございました。
エミュレーター入れてAndroid3.0を起動しようとしたら 重くておそくて、まったく使い物にならないレベルでした。 2.2にいたっては、頻繁に強制終了。 みなさんの環境でも同様でしょうか? あまりにエミュレータが使い物にならないレベルで驚いたんですが Androidは実機使って開発があたりまえなんでしょうか?
実機が前提。 エミュだと実機と操作感が違うからどうにもならない
>>244 2.2 のエミュは普通に使えてるよ。 i7 MacBookPro
実機とエミュは必要に応じて使い分けてる。
まぁかなり糞重いけど5年位前のPCで使えてるよ 強制終了とか使い物にならないとかはない 一体何使ってんの?
3.0は格段に重いからな。 プレビュー版とくらべればマシになったが。
3.0がOSとして重いというか、高解像度のディスプレイのエミュレーションが重いんだけどね
ARMごとソフトでエミュレートしてたらそりゃ重いだろ。 JITが付く前のAndroidだとXEONの5000番台ですら実機の3倍くらい遅かったような気がするぞ。
まともに動くなら欲しいかも。
>>249 そう。だからOSのVerとかより、apiレベルは2.xのまま解像度低いavdつくって動かすと
けっこう普通に動く。ただ解像度が低いからピクセル単位の動作が確認できないw
setListAdapterを使用して表示してる画面にあるボタンを押すと、 新たにsetListAdapterが動くのですが、 元々あった表示が消えてしまいます。 1つのActivityに対して、複数のsetLidtAdapterを使用しては ダメとかありますか?
254 :
253 :2011/03/03(木) 09:06:20.26
ボタンを押したらうごくsetListAdapterを消したところ、もともとあった表示は消えなくなりました。 ので、一つのActivityで使えるsetListAdapterは、一つだけ? 一つのActivity内で、それぞれ違うアダプタをセットしたい場合は どうすればいいのでしょうか。
255 :
253 :2011/03/03(木) 10:26:44.80
解決しました。
>>253 ー255
質問の書き方も解決の書き方も酷いな
端末を横むけたときにエミューレータだとonCreateが走ってボタンに表示されてる 文字も縦横切り替わるのですが、実機だとなにも起こりません。 加速度センサつかって切り替わり拾ってLinarLayoutの向き変えたりは できたのですが、Buttonに表示されてる文字の向きを変えたりするには どうしたらいいのでしょうか。
258 :
841 :2011/03/03(木) 14:39:28.77
257ですがandroid:screenOrientation="sensor"で解決しました。すいません。 質問すると解決するの法則
Graphical LayoutのOutlineの中のボタン等のプロパティからボタンの大きさや位置、 マージン等の変更は出来ないのでしょうか? 数字を入れるとエラーになってボタンが消えてしまいます。
プログラミング経験なしの初心者です。
ボタンを押すと「HelloWorld」と表示するアプリを作りました。
メニューを作り、設定の画面を作り、PreferenceActivityの
ListPreferenceで文字サイズ、文字色、背景色リストまで作りました。
これを「HelloWorld」に反映させたいと思っています。
レイアウトのmain.xmlでTextViewは次のように記述してあります。
<TextView
android:id="@+id/TextView01"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:textColor="@android:color/black"
android:background="@android:color/white"
android:textSize="9pt"
/>
「=」の後を変更すればいいと思っているのですが、
どうすればいいのか分かりません。
"@string/xxxx"みたいに簡単にいかない?
調べたところ、PreferenceManagerとSharedPreferencesで
設定値を取得できるようですが、メインの.java(HelloWorld.java)
からじゃないと反映できませんか?
ソース
ttp://www.dotup.org/uploda/www.dotup.org1392847.zip.html
>>260 android:text="HelloWorld"じゃ駄目なの?
262 :
260 :2011/03/03(木) 22:12:59.04
>>261 それだとボタン押さなくても表示されちゃいますよね?
Layoutで複数のButtonを配置して、Button押しで登録された効果音が鳴るものを作っています。 毎回SEが鳴りきってからでないと次のSEは鳴らせないようにしたいので、 再生と同時に全Buttonを"Button.setClickable(false);"にしてみました。 しかし試すとどうも"setClickable(false)"状態でもタッチされた事は認識+保持されるようで、 再生後"setClickable(true)"で戻すとそれまでタッチされていたSEが一斉に再生されます。 一時的にButtonを文字通り「表示されているだけ」とさせる事は可能なんでしょうか?
>>262 えっと、君がやりたいことは、ボタンを押したらTextViewにHelloWorldって表示したいってこと?
TextView textView = (TextView) findViewById(R.id.TextView01);
textView.setText("HelloWorld");
こんな感じ?
265 :
260 :2011/03/03(木) 22:53:30.23
>>264 それは既に出来てるんです。
表示される"HelloWorld"の文字サイズ、カラー、背景を
設定画面でユーザーが設定したものに変更したいんです。
それを.javaのソースコードで記述するんじゃなくて、
main.xmlをいじって簡単に/data/data/パッケージ名/shared_prefs/ファイル名.xml
から引き出す方法がないか質問してるんです。
SharedPreferences sp = getSharedPreferences("file_name", MODE_PRIVATE);
int id = sp.getInt("id", -1);
String name = sp.getString("name", "");
これで引き出せるのは調べました。
質問するまえに、まともな日本語を書けるようになれよw
PreferenceManager#getDefaultSharedPreferences使えば いいんじゃないのか。
>>265 レイアウトのxmlに何か呪文を書けば、プリファレンスの値を参照できるのを期待してる?
それなら無理。
onCreateでゴリゴリとコードを書くべし。
269 :
153 :2011/03/03(木) 23:23:53.98
>>265 ムリ。
どうしてもやりたければ、カスタムビュー作って、attr.xmlとかも定義してゴリゴリ書く。
文字装飾はspannableでやる。ただしフオント依存の部分は制御できない(太字か。自分でフォント用意して使う場合はまた別)。
270 :
260 :2011/03/03(木) 23:30:30.71
>>268 >>269 無理なのですね。
"@○○○/key"的なものがあるのかと思いました。
コードを記述します。
ありがとうございました。
>>269 まだ始めて数日なので知らない単語ばかりです。
勉強します。
実機のCPUクロック周波数を取得するAPIありましたら、教えて下さい。 一日Android developer 見てたけど、見つけられなかった。
二日見たら?
最近は中学生が携帯のプログラミングするようになったんかぁ
>>273 まあ15才からのAndroidプログラミングって本もあるくらいだし
知らなかったwww
>>274-277 答えになってねぇw
Android System Info や setCPU が表示してるから、
何かしらの方法がありそうなんだが…。
>>279 ありがとう。
残念ながら、既にそれは試した後。
processor と boroMIPS位しか有益な情報がなかった。
wiki で armのページ見たけど、全てのCPU に対してMIPS 記載 がある 訳じゃないしね。。
LinuxのCPU情報見るのが
>>277 の方法なのに、
Linux上で動いてるAndroidではそれ以上の情報が取れるとお思いで?
>>281 Linux だと、クロック周波数も表示される。
けれど、Android では表示されない。
やってみ?
一人だけレス番のずれている奴がいるような。
んじゃあ別の方法で取得してるんじゃないの
俺だッ!!
いいえ私です
カーネルとかハードに近い部分の情報は Androidの資料じゃなくてLinuxの情報探したほうがいいぞ AndroidSystemInfoみたけど、cpufreq出してるだけだろ
どのActivityのときにもMenuに出てくるようなグローバルなMenuを作ることはできますか? 各Activityにその都度自前でそうしたMenu項目を加えてやらなければならないんでしょうか?
>>288 Activityのサブクラスで、共通なメニューを作成する onCreateOptionsMenu() をoverrideして、
それを全ての画面で使えばできないかな?
あ、なるほど。ありがとうございます。 menuリソースのほうをごにょごにょするほうばっかり考えてて そっちには頭がいきませんでいした。 やっぱりグローバルMenu的なものは特にAndroidには用意されていないんですね。
>>291 自分で作ったやつしかエミュにインスコできないよ
え、できるのΣ apkファイルをどこに入れればいいの?
androidのjavaってsetが使えないのでしょうか? エラーがでます。 data.set(hoge);
>>293 Web版マーケットでInstallボタンを押したときの画面だべ。
298 :
291 :2011/03/04(金) 15:04:54.09
エミュレータにアプリをインストールできる ≠ マーケットからアプリをインストールできる
エミュレータにインストールできるアプリって野良アプリだけでしょ マーケットからはできないんじゃ
Android Marketからインストールするのは不可。 他人が作ったか自分で作ったかに関わらずapkファイルがあれば可能。 LAN経由、USB経由、SDカード経由ともに やり方はandroid adb install とでもぐぐれば例は出てくる。 まずそれ見てから聞いてもいいんじゃない?
>>296 どのクラスについての質問?
クラスが分からないと答えようがない。
304 :
296 :2011/03/04(金) 15:43:21.27
>日本で作成したアカウントは、SMSの設定ができないようです。 端末の国を見てUI変えてるだけだから出来はするんだけどSIMに紐付けされたアカウントがないと出来ないしエミュや仮想環境だとどっちにしてもできない。 今のところ野良しかインストール出来ない・・・という事にしておくんだ。
>>304 その4行には構文エラーは無いから
それ以外のところで構文エラーがあるんだろうね。
import が java.util.Calendar ではないというオチでは?
308 :
296 :2011/03/04(金) 16:37:58.35
別の場所(privateの中)に書いたらエラーが消えました。 レスどうもです。m(__)m
>>295 /data側にpushして、pm install
App Inventorってどこですか?
失礼 App Inventorのスレってどこですか?
あるURLに対して、HttpURLConnectionでHTTPリクエストを送った場合と、 ブラウザでリンクをクリックしてHTTPリクエストを送った場合の挙動が何故か違っていて困っています 試しに、プロキシをかませて通信内容を傍受してみても、どちらもHTTPリクエストの内容は全く同じ物です(もちろんヘッダも) また、ブラウザが画面遷移して更にHTTPリクエストを送ったりもしておらず、ブラウザのjavascriptやプラグインも全てOFFにしています 全く同じHTTPリクエストを送っているのに何故サーバーサイドの動作が異なるのでしょうか?
自分自身もAndroidは初心者だが・・・ どこでサーバーサイドの動作が異なると判断したのでしょうか? 本当に同じHTTPリクエストを送っているのでしょうか? サーバ側は同じリクエストを受信しているのでしょうか? サーバ側は同じレスポンスを送信してはいないのでしょうか?
同じじゃないからだよ。 低知能のクズは同じに見えていても、厳密には同じじゃないんだよ。
ああ、リクエストIPアドレスにより動作が異なっている可能性もゼロではないです。 (まずないと思うけど)
>>315 「リクエストIPアドレス」とはなんぞや?
>>312 まず挙動の違いを具体的に
あとはヘッダを受信したサーバのログをうp
>299 >300 >301 >305 >309 通常の方法だとandroid marketのはインストール不可なんですね。 今は実機ないですがapkファイル入手できたら裏技ためしてみます。 ありがとうございました。
>>318 とある野良アプリを使うと、マーケットにあるアプリをDL出来る。
別にadbを使う事が全てでは無いわな。
>>317 自分はjavaもandroidもプログラミングも初級者ではないです、仕事も8年SEやってます
あなたたちが想像しているような凡ミスはやらかしていません
この問題も原因を1週間調べ尽くしています、もっと根の深い込み入った問題があると思います
とりあえずプロキシでは信用出来ないのでWiresharkでパケットを監視してみようと思います
それでもサーバーサイドが受け取っている物は同じなので意味は当然ありませんがね
あーまじで2ch役にたたねー、お前ら全員くたばれ
323 :
デフォルトの名無しさん :2011/03/05(土) 09:47:29.24
>>322 なんなんだお前はwww
まあ、大変でしょうが、お仕事頑張ってください
>>322 まあ、そもそも2chの「Androidプログラミング初心者質問スレ」で質問しようと
考えてしまうところがw
プロは2chで質問なぞしない、 それが必要なレベルの人間ははただの給料泥棒
>>322 サーバサイドで受け取っているものが全く同じな場合、
Androidは関係ないということがわからないSE経験8年の人乙
というかパケットキャプチャすらしていないと。一週間何をやっていたのやら… すいませんもう触りません><
全く同じなら、結果が変わる訳がない。 8年やっててもそのくらい分からんのか
そこまで束になって噛みつかんでも。 ヒントがあれば―と、思ったんちゃうか?
実はPOSTとGETで違いました、とか。 8年生でそれは無いか
ウダウダ言っている暇があったらURLとログを出せよ。 8年やってて解決に必要な情報の提示すら出来ないとはどれだけ無能なんだよ。
>>322 相手をムキにさせて回答を引き出そうとする技術は優秀みたいだが、
いかんせん回答するには情報量が少なすぎる。
Eclipseに慣れてないんですがNetbeansで開発する方法ないですかね?
オレの経験から言うとたいてい凡ミスなんだが だいたい素直にHttpClient使えよ
>>334 "android netbeans"でぐぐってみるはどうかな?
できました。実行からエミュの起動まで。 サンクスです。
久々に活きの良い釣り餌だったのに乗り遅れた
本当に同じリクエストだったとしても、どんなシステムなのか全く分からない以上、サーバのレスが違う原因なんて推測できる訳がない。 極端な話、受信時刻でレスを変えるシステムなら違うのが当然なわけだし。
いやいや釣りだろw 捨て台詞まで決まったから後釣り宣言待ちってところだな
Javaのrepaint()にあたる描画させるためViewのonDraw呼ぶメゾットはどんなのですか?
invalidate()
ワロタwwww
メゾット 【現象】 ・リゾットが食べたかったのか、メゾネットに住みたかったのかは不明だが、 オブジェクト指向の話題を扱う場面において、オブジェクト指向を理解して いる以前に、コンピュータでプログラムを組むということ自体が向いていな いと思われる連中が好んで使う「メソッド」の誤用例のひとつ。
IMEで日本語、英語、数字記号の切り替えが出来ますが、 日本語だけ切り換えられないようにするにはどうすればよいでしょうか? inputTypeを色々と試してみましたが、どうしても日本語IMEに 切り替わってしまいます。
答えじゃないけど、 パスワード欄でIMEが効かないと辞書に入れてるパスワードを 違う欄で入れてコピペしなおさなきゃいけないのが面倒くさい Androidの場合はマッシュルームが効かないと同じことが言える
>>349 基本的にinputtypeで指定した挙動を処理するのは
使ってるIME次第だから、なんとも言えない。
OpenWnnのソースを検索してきたら?
>>350 XPERIAのブラウザでパスワード入力する時に
アルファベット<=>数字記号で切り替わるのですが、
これは何か特殊な事をしてるんでしょうか。
>>350 IMEによって挙動が違うんですか…。
暇がある時にソース見てみます。
オレもIMEで日本語入力不可にする方法知りたいです レポよろ
日本語を選択不能にするより、QwertyKeyListenerあたりをパクるなり継承するなりして、 入力された日本語を無視する方が確実じゃない?
前に公開停止になったツイッターのソフトがあったけど それオープンソースになったって聞いたけど、どこで落とせる?
>>356 ツイッターじゃなくて2ちゃんだった、すまん
ツボロイドだったかな?
普通に作者のサイト見ればあるよ
ソフト名+ソースでググれないカスが何をしたいの?
このgdgdっぷりは異常wwww
なぜかツイッターロボに見えちまった
画面サイズは何を基準にしたらいいのだろう 800x600 640x480
なるべく解像度に依存しない組み方をするべき
個人で有料アプリを販売する場合、住所を自宅の住所のままでの登録になってしまうのですが 他の方も個人での登録をする場合は自宅の住所で登録されているのでしょうか?
実機の情報を取得すればいい。
実機はIS01持ってるんだけどどうもウィジェットの表示がおかしいなと思ったら オリジナルサイズなんだな1×1が80×80で表示される ほんのわずかだとは思うけどこういうヘンタイ機種にみんな合わせて作ったりしてる?w
>>366 2.0未満のOSなんて、切り捨てても問題ない。
今はOSver幾つ用で開発するのが一番いいの? 2.2から速くなったからやっぱり2.2?
1.6は相手にするだけ面倒だけど、2.1はいまだにガンガン売れてるんだから、 対応したほうがいいんじゃない?
すでに日本でも世界でも1.6は少ないかもしれないが 世界の少ないのシェアはまだまだバカにできない 稼ぎたいならまだ1.6に合わせるよ
1.6で対応で特に弊害もないかあ
2.xで作った結果1.6で問題なく動作するなら対象から外す意味はないけど、
>>370 見ちゃうと1.6をターゲットに見据えて開発始めるのは馬鹿らしいな
てか何をターゲットにするかなんて作るものによって自ずと決まるでしょ 1.6の範囲で作れる案件をわざわざ2.1で作る意味はない
みんな実機あってもエミュレータ使うことあるんですか?
>>376 そりゃゴメン。
自分が見てた時期は、そんな事しなくても良かったんだが。
アプリは作者ありきだから仕方ないね。
>>377 Android Marketの仕様変更があっただろ
>>364 俺も気になる...
そろそろ登録しようと思ってるんだが。
調べると,住所の途中を省いたりごまかすとかなんとか。
金銭のやり取りするんだから住所くらいちゃんと書けよ
住所はグーグルまでで一般公開するわけじゃないんでしょ?
IDE : Eclipse(ver 3.6.1) ADT Plugin :10.0.0 eclipseにインポートしたサンプルプロジェクトのres内にあるxmlファイルを展開すると 以下のようなエラーを生じてしまい、Android Layout Editorが起動しません。 org.eclipse.wst.sse.ui.contentassist.StructuredContentAssistProcessor.access$9 (Lorg/eclipse/wst/sse/ui/contentassist/StructuredContentAssistProcessor;) Lorg/eclipse/wst/sse/ui/contentassist/AutoActivationDelegate; 解決策としてADTのverをダウンさせる方法をネットで見つけたのですが指定のzipファイルが見当たらず困っている状況です ブログ等を見るとADR ver9.X.Xのzipファイルを公式からDLしたとの文章が見受けられるのですが・・・ ご存知の方いらっしゃれば教えてください。
よくわからんけど eclipse -clean は当然やったんだよね?
>>381 そうなの?今はそうなってるのかな?
昔は住所まで公開だったらしいが。
>>380 金銭のやり取りをするのはグーグルとであって消費者とするわけじゃない。
ユーザに公開する住所だけは公開しても良い範囲で書く、とかでいいんじゃね? Googleの方(連絡先情報)だけはちゃんと書いて。
同人誌の奥付に住所を書くとストーカー被害にあう時代だからな
公開の名前もHNでいいの?
↓こう書いてんだから、ユーザに公開されるだろ >公開ビジネス情報 (購入者に表示) >この情報は、購入者からの問い合わせに使用されます。 ちゃんと書いていないと特定商取引法に引っかかるのでは?
例えばVectorなんかで住所表示してるかっていうとしてないしな。 本名も書いてないし。有料の場合であっても。
アマゾンマーケットプレイスの例を挙げると アマゾンはマッチングと代金徴収代行するだけで あくまでも消費者と出品者の間の商取引だよ
Vectorはページ掘っていけば本名は出ちゃうね
結局どうなんだろ。 ヤフオクは個人の場合はそういう表示は要らないけれど、 あれはいつでも買えるとかそういう話じゃないしね。
結局ユーザーがどうしても(メール以外で)直接作者とコンタクト取りたいときは Googleを通していけばいいという感じなのでは?
>>322 もう見てないかも知れないけど
User-Agent が違うんだろうな
祭に乗り遅れたぜ
UI ThreadでThread.sleep()を使うことはできますか? できるならどんな書き方か簡単に教えて下さい。
>>397 出来る。
質問するより
java thread.sleep サンプル
とかでググった方が早いよ。
どうもThread.sleep()で普通にできました。 しかしThreadは定義してないのにThreadがUI Threadを示すことになってるんですかね。 動いたのでいいですけど。
ここってプログラミング自体の初心者用でもあったのか
>>399 > しかしThreadは定義してないのにThreadがUI Threadを示すことになってるんですかね。
リファレンスに書いてありますが、Thread.sleepは現在実行中のスレッド(このメソッドをコールしたスレッドとも言えます)をスリープさせます。
> 動いたのでいいですけど。
正しい知識を身につけておくと後々応用が利きますよ。余計なお世話ですが。
わかりました、どうもありがとうございます。
>>400 プログラム自体の初心者がAndroidになんかに手を出したら大変なことになるw
JavaのようにまずImageに描画してそれをCanvasに貼るというようなことをしたいのですが Image img = createImage(100,100); Graphics g = img.getGraphics();; g.drawLine(0,0,50,50); androidではこの辺どのようになってますか? 参考urlでもお願いします。
405 :
デフォルトの名無しさん :2011/03/07(月) 14:17:24.97
Javaのようにっつーか普通にいっしょ。 1. View#onSizeChanged() あたりで Bitmap screenBuffer = Bitmap.createBitmap(w,h,Bitmap.Config.RGB_565); みたいにバッファ用のBitmap作る。 2. new Canvas(screenBuffer) で作ったCanvasに普通に描画 3. View#onDrawで canvas.drawBitmap(screenBuffer,0,0,null); とかするだけじゃね?
なるほどBitmapですか。 やってみます。ありがとうございます。
>>396 サーバー側が受信するデータが同じということなので、第三者から助言できることは無い。
408 :
253 :2011/03/07(月) 18:26:20.82
音声認識のダイアログ?をオフラインで使用するのは無理みたいですが、 それにかわるようなもの(大雑把ですみせん。)ってないですか?
何がやりたいのか書いた方がいいんじゃない?
>>396 だいたい、本職の人間がこんなところで質問するはずがない
411 :
デフォルトの名無しさん :2011/03/07(月) 19:16:17.59
>>410 んー答える事の方が多いけど、たまに質問もするよ。
JAGのMLとかだとめんどくさいし。
本人が本職だと思ってるだけなんだな。 なんちゃってぷろぐらまってやつですね。 同僚にはお荷物とか呼ばれてたりするアレです。
413 :
デフォルトの名無しさん :2011/03/07(月) 19:23:08.96
がーん、そうだったのかぁー w
414 :
408 :2011/03/07(月) 19:43:12.01
>>409 ありがとうございます。
録音ボタンを押して、マイクに向かって喋ったら、それをSDカード内のフォルダにファイルとして保存しています。
ですが、録音ボタンを押しても、ボタンの色が変わるだけで、使っている人は、いつ喋っていいのかわからないかなと思いました。
ので、喋っている声をきちんと拾っている、ということが分かれば使いやすいと思ったのですが、それに変わるようなものが、見当たらないので質問させていただきました。
voice dialer ただし英語のみだけど…
再描画で onDrawの外からinvalidate();呼ぶとstaticコンテキストから呼ぶことはできませんと怒られてしまうのですが onDrawの外から呼ぶことはできないのでしょうか?
417 :
408 :2011/03/07(月) 20:51:44.45
>>415 ありがとうございます。
明日やってみます!
>>416 onDrawの外からじゃなくてstaticコンテキストからは呼べない
そろそろ春休みか?
そうですか。
テーブルレイアウトの中にラインレイアウトを入れることはできますか?
Androidプログラミングを覚えるのにお勧めの本を 教えてください。
>>424 書籍といってもピンキリ。
値段が高いから良い書籍とはい言い難い。
大きめの書店で片っ端から見てみた邦画良いよ。
和書でAndroidのいい本は殆どないって知り合いの天才プログラマがゆってた!
あ。Android Hacksは悪く無いらしいよ!
これから始めようってやつには薦められないだろ
良質なリファレンスがオンラインにあるのになんで紙の本なんか読もうとするんだろう
TIPS集みたいな本は立ち読みで覚えればいいと思う。
432 :
デフォルトの名無しさん :2011/03/08(火) 02:49:55.16
質問です System.exit(RESULT_OK); でアプリ自体を終了させられるという事を見かけたので使ってみたのですが、 普通にfinish();と同じようActivity1つずつしか消せないようで、アプリ自体を終了させる為にはどうすればいいのでしょうか?
433 :
デフォルトの名無しさん :2011/03/08(火) 02:53:03.74
というかアプリ自体を終了というのはAndroidの仕組み的にはしないほうがいいんだろうか・・・と思い、 Androidの思想的にはActivity作成毎にカウントしていって終了させる場合はカウントした数だけfinish()させるようほうがいいのでしょうか。
全activityに対してbroadcastでメッセージ投げて受け取ったら finishじゃダメ?
ああ、できるかどうかじゃなくて思想か。 思想的には上から順に消していくのが正しいんじゃない かと思う。
IS01 で通話ボタンでアプリ終了するけど どうやってるの?
>>433 でもActivityひとつだけのアプリで確実にfinish()してても
アプリケーションの管理からみると強制終了ボタンが有効だったりする
>>433 カウントする必要は無いだろ、スタックに積まれてるから上が閉じたら自分を閉じる
>>436 独自カスタマイズ
>>
アクティビティを全部閉じてもプロセスは残ってる
アプリの終了をコントロールしたいなら 生成されてるApplicationクラスを意識せんとあかんのじゃない? そこまでするとAndroid的にどうなの、って気もするけど。
>>439 通常は終了させなくていい、
アクティビティもサービスもブロードキャストも実行中で無いアプリは
システムが空きメモリを必要とした際、優先的に終了される。
終了させるようにしたらバッテリーのもちがよくなったというのなら、
それはそのアプリの問題(画面を閉じているのに裏で動いてる、ウェイクロック解除し切れてない等)
>>440 だよなあ、
自アプリの終了をコントロールする方法を考えるより
きちんとリソース解放するよう作るほうが
お作法的にも作りやすさ的にも簡単な気がする。
>>441 げ、ついにQtでAndroidアプリかけるようになったのか
おもしろそうだなぁ
>>441 Qtかあ。あんまり好かんしポーティング意外では使う機会ないかな。
そもそもポーティングもしないけれど。。。
もとはといえば
>>441 の原型がまともに使えるようになるまでに
Androidのさわりだけ勉強をしとこうと思ってJavaをはじめたんだけど
なんかAndroidを知れば知るほどQtでどこまでできるのか疑問になってきたw
教えてください あるアクティビティ内を上中下の3段に分けています。 LinearLayoutの中にLinearLayoutが3つあるような状態です。 上と下はそれぞれ上下にはりついて、 真ん中は残りのエリアでセンタリングしたいのですが どのようにすればいいのでしょう? 真ん中のLinearLayoutのandroid:gravityをfill_verticalにしてみたりしたのですが 上によってしまいます
>>447 つandroid:layout_weight
449 :
447 :2011/03/08(火) 14:31:46.02
>>448 真ん中のみ android:layout_weight="1"
3つとも android:layout_height="wrap_content" で
うまくいきました。
ありがとうございます。
通常のOSで終了する場合、「戻る」を何回か押せば勝手に終了になるよね ただアプリによっては裏で起動したままのもあるから どういう処理の違いなんだろうか onCreateだけの場合は「戻る」だけで終了になるよね?
質問させてください。 現在HorizontalScrollviewを使って横長の画像をスクロールさせて描画しています。 通常ではビューの左端と画像の左端が一致して、右にスクロールさせて続きを見ていきますが、 これを逆にして、画像が表示させたときにはビューの右側と画像の右側が一致していて 左にスクロールして続きを見ていくようにしたのですが、何かやり方はありますか? 画面を表示したタイミングで自動的に右端まで事前にスクロールさせておけばよい?
>>443 これ今日たまたま立ち読みしてきたんだが最後に筆者プロフ見て
8歳小学生最年少ライター♀って…
俺: ハハおもろいジョークやな…え、ほんとに8歳?(内容を見返す)
いやーこれは8歳にはかけないだろう。新種のネカマなのか?
しかしこういう真面目にプロフ書くとこにこういうのありなのか?…
と思ってしまった どうなってるのこれ…
Androidのandroid.graphics.Cameraを使うために簡単なワールド座標系を作りたいんだけど それってOpenGLES使わない方法で出来る? Camera反映してもCanvas使ってる以上スクリーン座標になっちゃってCameraを生かせない。
前Linuxの本読んでたら18歳というのがあった それはほんとらしかったが時代は変わったなあとオモタよ
バージョンの違う同じアプリを端末内に共存させることは可能ですか?
昔は17歳が16進数だったりしたからなぁ。
>>458 むり。
パッケージ名変更すべし。
>>452 通知領域に表示する画像はリソースIDしか指定できないから無理
>>460 それなら、テキストも画像もリソースに置いとけばいいんじゃないの?
>>462 だから、アイコンをリソースIDでしか指定できないって言ってるのにどうやってテキスト渡して、それをアイコンの画像のところに描画すんだよ
>>463 リソースIDって書いてあるからres/stringsやres/drawable
にリソースとしておけば良いのかと思ったんだが違うのか。
画像は自分で用意した電池の画像の上に100%って書いたやつ。
・・・明日ちょっとやってみよう。
通知アイコンを表示させない方法わかる方いますか? アイコンを設定しないと通知自体が表示されないし、透過アイコンだと見えないけど隙間ができるし… 実装されてるアプリの挙動を見てるとカスタム展開ビューを使ってる気はするが…
apkをリアルタイム生成して、外部リソースとして読み込めばいいんだけどね。
質問させてください。 LinearLayoutでorientation="horizontal"にすると配下にあるTextViewは横に並ぶと思います。 例えばLinearLayoutの配下にTextViewが10個あって6個目で画面の横幅一杯になったときに 「改行」というか左下に7つ目以降のTextViewを持ってくるようなことはどのようにやればいいでしょうか? 現状では7つ目以降は画面からはみ出してしまい、スクロールさせないと見えない状況になっています。 GridViewで画面幅を考えて一列のTextViewの数を制御するのも考えましたが、 エレガントじゃないと思います。
468 :
デフォルトの名無しさん :2011/03/08(火) 23:43:58.22
サンプルのBuckup Agentがbmgrから呼び出されるときと、 呼び出されない(angetのonCreateが呼ばれない)ときがあるんだけど、 なにゆえ?
469 :
デフォルトの名無しさん :2011/03/08(火) 23:44:52.60
ごめんBackup Agentだった
adb shell bmgr runやっても動かないって話なら バックアップ設定がONでも同期がOFFだとだめ
471 :
468 :2011/03/09(水) 00:01:00.27
>>470 レスありがとうございます。設定は確認済みです。
全く同じソース、同じAVDを使っていても、bmgrで
backup Agentが起動するときと起動しないときがあるのですが
何か原因わかりますでしょうか?
ログになんか出てるんじゃないの?
テーブルレイアウトの中にラインレイアウトは入れられましたが ラインレイアウトの中にテーブルレイアウトを入れたらエラーがでました。 どうすればいいでしょうか? やりたいのはスクロールビューをかましたいだけなんですが 何故かテーブルレイアウトに入れるとエラーになります
自己解決しますた xmlに書けばいいのね
現在アプリの設定画面を作成しているのですが、 設定画面でチェックした設定が電源を切るとチェックがはずされています。 はずさせない方法はないでしょうか? 設定画面の作成にはPreferenceActivityを使用しています。
>>475 xmlをここにコピペできる?
何かコードは書いてる?
「電源」って実機?エミュレータ?PC?
>>476 電源は実機で、GalaxySを使っています。
以下のようなxmlで設定を行なっています。
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen
xmlns:android="
http://schemas.android.com/apk/res/android ">
<PreferenceCategory android:title="@string/title">
<CheckBoxPreference
android:key="@string/checkbox"
android:title="@string/checkbox_title"
android:summary="@string/checkbox_summary"
/>
</PreferenceCategory>
</PreferenceScreen>
あとはアクティビティの生成時に上記の設定をaddPreferencesFromResourceで読み込んでいます。
478 :
468 :2011/03/09(水) 03:38:37.76
異常系の時のログしか取れませんでいた。異常系はいかになります。 //bmgr backup パッケージを実行時 DEBUG/AndroidRuntime(463): >>>>>> AndroidRuntime START com.android.internal.os.RuntimeInit <<<<<< DEBUG/AndroidRuntime(463): CheckJNI is ON DEBUG/AndroidRuntime(463): Calling main entry com.android.commands.bmgr.Bmgr DEBUG/AndroidRuntime(463): Shutting down VM INFO/AndroidRuntime(463): NOTE: attach of thread 'Binder Thread #3' failed DEBUG/dalvikvm(463): GC_CONCURRENT freed 100K, 72% free 289K/1024K, external 0K/0K, paused 4ms+2ms DEBUG/jdwp(463): Got wake-up signal, bailing out of select DEBUG/dalvikvm(463): Debugger has detached; object registry had 1 entries //bmgr backup run実行時 DEBUG/AndroidRuntime(473): >>>>>> AndroidRuntime START com.android.internal.os.RuntimeInit <<<<<< DEBUG/AndroidRuntime(473): CheckJNI is ON DEBUG/AndroidRuntime(473): Calling main entry com.android.commands.bmgr.Bmgr DEBUG/AndroidRuntime(473): Shutting down VM INFO/AndroidRuntime(473): NOTE: attach of thread 'Binder Thread #3' failed DEBUG/dalvikvm(473): GC_CONCURRENT freed 100K, 72% free 289K/1024K, external 0K/0K, paused 3ms+2ms DEBUG/jdwp(473): Got wake-up signal, bailing out of select DEBUG/dalvikvm(473): Debugger has detached; object registry had 1 entries アドバイス頂ければ幸いです。
>>477 特に問題なさそうだね、、、、
前にkeyの値を重複して設定するミスをしておかしくなったことがあったけど、
自分が思いつくのはその程度かな?
とりあえずエミュレータでも確認してみては?
それと、/dataの下にあるプリファレンスのファイルの中身を起動前後で確認して
再起動と本当に関連があるのか確認してみては?
480 :
デフォルトの名無しさん :2011/03/09(水) 04:53:46.86
たまにメニューボタン長押しでキーボードだして検索できるリストビューありますが あれはどうやって実現しているのでしょうか。 簡単ですか?
>>477 getPreferenceManager().setSharedPreferencesName();
やってなくて、保存されてないんじゃ
ラインレイアウトじゃなくてリニアレイアウトな
レイアウトのxmlについて質問なのですが、 ボタンを横に5つ並べて、その下にimageviewを1つ配置しようと思います。 LinearLayoutのvarticalにLinearLayoutのhorizontalを置いてその中にボタンを置いて、 それを閉じて imageviewを置きましたがクラッシュしてしまいます。 このような書き方はできないのでしょうか? 正しく書くとすればどんな感じになるのか教えていただければと思います。
xml晒せばいいのに
>>484 それで出来ると思うけど。xml書いてみ
めっちゃどうでも良いけど、何で画像なのか凄い疑問に思った。
わろた
でも見やすいから画像のほうがいいな
でも試してやることはできないけどさ
>>488 そんな現象起きないな。
別の実機やバージョン違いのエミュで試したり
項目の数を増やしたり減らしたりしてみてよ。
sdkは最新だよね?
494 :
475 :2011/03/09(水) 17:24:59.43
エミュレータで動作させたところ、電源を切っても設定は保存されていました。 また、同じ動作をさせるアプリをもう1つ作成して確認しましたが、設定は保存されていました。 実機のGalaxySで今のところ発生しているようです。 それと設定がはずされていたのは署名付きapkファイルを転送してテストしていたのですが、 これは何か関係はないでしょうか?
初歩的な質問で悪いけど アンドロイドのメニュー押して、設定画面の様なデザインのActivityって何て呼ばれてるの? 名称が分からんので教えてくれ。
>>494 署名は関係無いと思うよ。
署名してないapkはそもそも動かないし。
WebViewにアプリから値を渡してWebViewで表示している サイトで認証処理を行いたいのですが、値の渡し方がわかりません。 サーバ側のDBに値を渡してWebからDBを参照という方法は思いついた のですが、やり方が遠回りすぎな気がしているので アプリからWebView起動時に値を渡してWebサイトで参照する方法 (リクエストで渡すなど)がありましたら教えていただけないでしょうか?
>>498 JSONObject使えばいいと思うよ
>>501 これ、応急処置で回避するにはどうしたら良いのかな?
getSharedPreferencesでname変えれば良い?
>>498 クエリで渡す、cookie経由、js呼んでそっちで認証、httpで先に
認証済ます(普通はこれか?)、後は思い付かん・・・。
cookie経由は、ググったら同じことやってる人いたぜ。
認証だからauthenticationクラスに適当なメソッドあるんじゃないの
Eclipseからアプリを実行すると正常に動くんだけど マーケットにアップしてそれをダウンロードして動かすとバイブでエラー。 どうすればいいのか心当たりある人います?
506 :
デフォルトの名無しさん :2011/03/10(木) 00:18:41.77
SDKのバージョンを上げたらadbがUSB接続の携帯を認識出来なくなりました adb.exeはパスを書き換えたので起動するし、 携帯の設定などは変えていないし、ドライバも問題なく動いているし、 試しにドライバを入れ直したり、 新しくadbをダウンロードして置き換えても動きませんでした どうしたら、認識出来るようになると思いますか?
507 :
デフォルトの名無しさん :2011/03/10(木) 00:24:03.06
Androidアプリで一発当ててポルシェを買いたいんですが、どうすればいいんですか?
508 :
デフォルトの名無しさん :2011/03/10(木) 00:45:09.55
>>507 懸賞アプリを作って一等をポルシェにして
自分が一等をとれるように仕組めばおk
>>507 君がポルシェに当たって慰謝料もらえばいいと思うよ
アプリ作らなくていいのでお手軽だよ
String data = aa + " たす " + bb; " たす "をstringsで指定して日本語と英語に対応したいのですが どのようにstrings.xmlから対応させればいいでしょうか? strings.xml <string name="plus">たす</string>
512 :
デフォルトの名無しさん :2011/03/10(木) 01:32:04.04
values strings.xml <string name="plus">plus</string> values-ja strings.xml <string name="plus">たす</string>
自己解決しました String txt = getString(R.string.plus);
514 :
511 :2011/03/10(木) 01:36:35.31
>>512 どうもです
フォルダの仕分けもやってみます
フォルダ・・・? どうも理解してるのか不安w
プロジェクトに新たにリソースの読み書き行うクラスの実装がうまくできません。 .javaファイルを新たにsrcに追加し,そこにクラスを書いてメインクラスでインスタンス化させて使うという方法を考えているのですが。 アクティブ画面でボタンを押す等のイベントに応じてインスタンスを経由して読み込みを行おうとするとunexpectedlyと表示されます。 アクティブを追加する訳ではないのでマニフェストへの登録ミスなどの問題ではないと思うのですが。 駄文ですみません。
>>516 誰にも話が通じないと思う。
追加したクラスのソースと、正確なエラーメッセージをアップできる?
518 :
498 :2011/03/10(木) 11:20:28.09
>>499 値を渡して認証したいだけではなくて、認証結果をWebでそのまま表示
させたいのです。
JSONで認証してランダムなIDを取得しにWebアクセス時にGETで渡して
認証とかも考えたのですが、セキュリティ的に疑問なのでやめました。
>>503 JavaScriptで固定識別等を渡して認証するならシンプルだと思いました。
これもセキュリティ的に大丈夫なのか疑問が残りますが。
httpclientを間に挟んでcookieを引き継ぐとか やったことないけど
521 :
デフォルトの名無しさん :2011/03/10(木) 13:19:45.20
Android2.3.3のAVDの設定→プライバシーに「データのバックアップと自動復元」という項目が表示されないんですが エミュレーターだと表示されないんでしょうか?
>>520 事故解決。
単純にMainActivityでHandlerを噛ませたらいけました。
523 :
520 :2011/03/10(木) 13:29:02.51
エラーは出なくなったけどUIが固まるのは回避できなかった・・・orz
524 :
498 :2011/03/10(木) 13:43:24.06
>>523 AsyncTaskならわりと簡単に実現できそうですけど。
525 :
デフォルトの名無しさん :2011/03/10(木) 14:29:26.14
UIを」に並べたいのですが LynearLayoutだと左から、または上から並べちゃうのでなかなかできません。 一番合理的な方法ってなんですか? 端末の差やソフトキーの有無はUIはそのままでコンテンツの大きさを換えて対応したいです。
RelativeLayout
527 :
デフォルトの名無しさん :2011/03/10(木) 14:48:45.36
>>526 やっぱそうなっちゃいますか。
くそう! 逆順に並べるプロパティくらいあれよ!
528 :
516 :2011/03/10(木) 14:55:14.28
文章だけでは伝わらないと言われたので書いてみました。 ↓メインクラスファイル(Main.java) package jp.hoge; public class Main extends Activity{ private Foo foo; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Button button = (Button)findViewById(R.id.button1); button.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { foo.output(); } }); }} ↓srcに新たに追加したクラス。(Foo.java) package jp.hoge; import android.util.Log; public class Foo { public void output(){ Log.d("MyTag(DEBUG)", "Foo.java"); };} Mainクラス側でbuttunに関連付けているボタンを押すと、Fooクラスのインスタンスfooからoutputメソッドを呼び出し、 LogCatに"Foo.java"と表示できるようにしたいのですが。エミュレータで実行してみるとLogCatには ERROR/AndroidRuntime(398): java.lang.NullPointerExceptionと表示されます。 これで伝わるでしょうか・・・
>>528 インスタンスと言ってるけど、newしてないからインスタンスは生成されてないわな
もし、ソースを簡略化するときにミスっただけだとしても、NullPointer の割り込みは単なるケアレスミスだから、
LogCatのメッセージを頼りにしてソースとにらめっこしてくれとしか言えん
それだけ書かれるとfooをnewしろとしか・・・
ここAndroid初心者スレだけど、プログラミング初心者スレじゃないんだよ
SurfaceViewを使った描画のリアルタイム更新処理で unlockCanvasAndPost(c); により開放と描画の更新がされる、とありますが 確かにタイマー割り込みで呼んだメソット先にて public void draw(int x) {//xは8ずつ増やして呼ばれる Canvas c = holder.lockCanvas(); c.drawLine(x, 0, x, 200, p); holder.unlockCanvasAndPost(c); } とすると連続して更新されますが メイン処理の中で for(int x=0;x<200;x+=8) { holder.unlockCanvasAndPost(c); c.drawLine(x, 0, x, 200, p); holder.unlockCanvasAndPost(c); //ここに0.2秒のウェイト(スリープ)処理を入れてある } と処理が連続している中では unlockCanvasAndPost(c); を使っても連続更新はされません。 最後に全部描画した後で一気に全ての線が表示されます。 この後者の方法ではリアルタイム更新はできないのでしょうか? 他のやり方はありますか?
androidのSurfaceViewでスレッド立てて、そこの中でcanvasのdrawBitmapをループで100個ぐらい呼んで負荷テストしたんだけど fps30位しか出ないんだけど、俺の作り方が悪いの?それとも標準での限界? ちなみに20-30程度なら大体50-60fpsで動いてる。 実機はギャラSで試してる。
パフォーマンスが必要ならNDKを使え。 Javaだけじゃ無理。
>>528 インスタンスの作り方を一から勉強しなおしてこい
>>532 描画の更新をしてるのは誰なのか一から勉強しなおしてこい
描画職人の朝は早い。
>>534 どの部分をC++に落とすべき?
そんでその場合ってGLES使わないと無理?
安物のノートパソコン使ってる超初心者なんですが 実行して「成功」とか出ても エミュレータが時刻と鍵の画面までしか行かないんですが 単にパソコンの性能不足でしょうか?
>>541 ロック画面なだけ。
ロックを解除すればおk
>>542 どうもありがとうございます
助かりました
>>518 どうしてもセキュリティが大事ならセキュアな通信手順を
使うしかないね。少なくともインターネット上に
パスワードを流そうとする限りは。
Androidの初心者スレなのに最近Android関係ない話ばっかだな
アプリ作成スレの方がもっと酷いと思うけどね
>>540 2枚のsurfaceviewを重ねたらどうだろうか。
SurfaceViewのメインループが一週40ミリ秒〜50ミリ秒で、30FPSぐらいなんだが これって遅すぎなん?
>>547 下敷きsurfaceview て事ですかね?
明日試してみます、ありがとうございます。
SurfaceViewって一度何か描いちゃうと二度と透過できなかった気がする
>>550 bitマップ配列操作してもだめなのかな?
>>550 確かSurfaceView使ってる場合には、Androidのウィンドウその物の背景を透明にする設定使った記憶がある
ただ、透明になった背景を塗りつぶして、
その上にSurfaceView置いて、さらにSurfaceViewをってのはやったことないから
出来るかどうか分からない
HTMLの特殊文字である"&"を"&"に変換してくれる APIは標準では存在しないよね?
&を&に変換するAPIがないのか質問しているのでは。
おっと化けた。android.text.HtmlクラスのtoHtmlメソッド使えば良いのでは?試して無いけど。
557 :
432 :2011/03/11(金) 08:58:32.45
>>434 ,435,437,438,439,440,442
遅くなりましたがレス感謝
今一理解しきれてないのですが、
>全activityに対してbroadcastでメッセージ投げて受け取ったらfinishじゃダメ?
これはIntentの事なんでしょうか? あれまだよく分かってないのですがどこか分かりやすいページ等あったら教えてもらえないでしょうか?
とりあえず、カウントしなくてもいいってことは開いてるおおよそのActivity数分
適当にfinish()してやれば乱暴にはなるけど終了させられるって事なんでしょうか。
>>533 描画面積がどんくらいになるか換算してみて。
昨日の540です。 結論からお伝えすると、以下の様になりました。 surfaceview × 2(+グループビュー) で対応出来ました。 気がついた点として… ・Activity に対してテーマ(-1や-2)を指定しないと、 下のViewが透過しません。 ・グループビューへのadd 順は重要。 助言下さった方々、ありがとうございました。 因みにview への書き換えは何度も出来ていました。
androidエミュがサクサクまでいかなくてもストレスなく使えるスペックってどのぐらい? MacBookAirの11インチじゃ厳しい?
>>554 間違えた。"&"を"&"に変換するAPIね。
apache.common.langにはあったけど、
標準だと見つからない。
2chはHTMLエスケープシーケンスを変換しちゃうのか…。 &amp; なら全角だから変換されないだろう。
>>560 2.3のだとi7 870で少しもたつく
これでおおかた予想はつくはず
ぶっちゃけ実機買った方が安くつく
566 :
デフォルトの名無しさん :2011/03/12(土) 09:56:38.78
リストビューのカスタムが複雑すぎます
>>565 激しく同意。Android x86も重いし。
楽曲情報の取得について教えてください. 現在、sdcard内の楽曲情報を取得しています. タイトル アルバム名 アーティストなどは MediaStore.Audio.Media.EXTERNAL_CONTENT_URI にqueryを投げて取得することができましたが その曲のGenreの取り方がイマイチわかりません.. MediaStore.Audio.Genres.Members〜あたりを使うのだと思うのですが 使い方がよくわかりません. よろしければ、その曲のGenreの取り方を教えていただけないでしょうか.
skypeのサービスを終了するアプリを作ってるんだけどどうしたらいいんでしょうか? ActiviyManager.getRunningAppProcesses()を使ってpidを取得して Process.killProcess(pid)じゃうまくいきませんでした。
古いPCでの作業に嫌気がさして買い替えを検討してます エミュレータやコンパイル、デバッグで一番必要となる部分はCPU、メモリ、HDDの読み書き速度のどれでしょうか 全部がハイスペックなものが買えればいいんですが余裕がないので。。
>>572 うーんやっぱりそうなっちゃいますか・・・
具体的にCPUをC2D1.8GhzからCi5の2.3Ghz(どっちも2コア)、HDDからSSD、のどちらかしかアップグレードできないとしたらどっちを優先すればいいですか
SSDかCPUかはHDDのスペック次第
そりゃCPUだろ
>>574 ,575
レスありがとうございます
HDDは5400rpmのものです
5400rpmだとキャッシュは多くても16MBか・・・微妙なところだな・・・ SSDにしたらIDE操作時の引っかかりは少なくなる CPUにしたらビルドが速くなる お好きな方をどうぞ。
SSDにした方が体感速度は圧倒的に速くなると思う
>>557 ごめん、そうIntent。
broadcastReceiverでググったらいっぱいヒットするよ。
誰かがIntent("end")投げる(自分はfinish) > みんなが
receiveしてfinish() する。
endは"パッケージ名"+".end"とかなら他のアプリとは
かぶらないはず。
やったことないからうまく行くかはわからないけど。
あとは監視Serviceでも立ち上げてそいつに任せるか。
どちらにしろ、スマートじゃないしandroidアプリらしく
ないと思う。アプリ(Activity)終了、リソース解放は
androidに任せましょう。
>>571 エミュレータを使うならとにかくCPU速度
CPUに一票。
>>570 残念。どの方法を使ってもダメだよ。APIよくみてみ。rootedだったら別。
>>568 >激しく同意。Android x86も重いし。
貧弱な構成だな。x86なら仮想環境で何不自由なく動いてるが。
それ1.6だろ。 まぁ、問題ないが、2.2は重い。
javaにもバッファーアンダーランみたいなのある?
>>585 確保しているバッファ領域外にアクセスしようとすれば、発生するでしょ。
>>586 out of boundsで未然に防げますね。うそつき。
589 :
デフォルトの名無しさん :2011/03/13(日) 16:16:25.32
OnClickListenerの実装方法ってどれが一番いいんでしょうか? 本とかサイトを参考にしてるんですが、書き方が結構まちまちなんです。 1..こんな感じでかく button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { } }); 2.implementsする 3.ボタンのプロパティOn Clickにメソッド名を書く 書き方がおかしいかもしれませんが。。。
俺は一貫して1でやってる
>>589 protected OnClickListener button1ClickListener = new OnClickListener() {
・・・
};
って感じでクラスのメンバにして、onCreateでイベントにバインドしてる。
>>589 Android 1.6以降なら、断然3だと思う。
>>588 それはVMの全機能が完全に正常に動作している、という前提での話
それが正常に動作せず、メモリ周りの問題が起こる、というケースは
本家OracleのJava VMでも起こってるし、Dalvik VMでも防げない
ということで、何かあってもExceptionが出て終わる、という前提での
コーディングはしてはならない
>>593 >ということで、何かあってもExceptionが出て終わる、という前提での
それ以外の前提を持ち込めましたっけ?SEGVがJavaから検出できる?
>>588 ByteBufferだと範囲外にアクセスするとSIGSEGVでリセットかかった
>>594 アクセス前にレンジチェックしろってことじゃね?
通常の配列やListはフレームワーク側でチェックして例外投げてるから二重チェックになるけど
独習JAVAとAndroid2.1プログラミングバイブルって本買ったんだけど他に「これは持っとけ!!」な本ありますか?
まずその2冊を読んでから考えればいいのに。
そうだな。その2冊をやってる内に辞めるだろうからな
>>599 この勝手に翻訳のページほとんど翻訳進行してないよね?
>>603 こまかい中身までは知らないけどフラグメントとかローダとか最近のも追加されてるじゃん
翻訳に頼るなってこと
>>603 そのリンクだとわかりにくいけど/jp/までに削ると履歴が出るよ
一時期はInventorの翻訳してた
Activityとかの主だったクラスの説明までやってくれると嬉しいけど贅沢は言えないな
あと女子部の誰かがブログに翻訳をあげてるけど
統合すればいいのにと思った
動画再生できるところまではできたけど、LAN内のPCにある動画ファイルをストリーミング再生する方法がわからない・・・ iPhoneでいうAirVideoみたいなやつ作りたいんだけど
リモート操作じゃなくてandroidからパソコンをを参照して、画像とか動画を再生するようなプログラムってできませんか?
ES File Explorerとかみたいな奴? sambaとかで共有にアクセスする感じで行けると思う。
610 :
608 :2011/03/14(月) 15:31:32.34
>>609 おおーこういうやつです!!
smbに接続するためのクラスとかってSDKに入ってますか?
jcifs持ってきて利用すればよろし。
612 :
デフォルトの名無しさん :2011/03/15(火) 18:06:50.33
NDKを使ってコンパイルをしようと思っていますが cygwin上で$ javah -classpath bin -o jni/<header名.h> を入れると bash: javah: command not found と出てしまいます。 何かパスを通し忘れているのでしょうか? お分かりになる方ご教授お願いします。
何かもなにも、javahへのpathだろ?
614 :
デフォルトの名無しさん :2011/03/15(火) 18:37:54.65
>>613 そのパスの通し方がわからないので困ってます。
環境変数に追加ならなんという名前でどこを指定すればいいのか、
それともbashrcにexport追加とかだとどう記述すればいいのか。
このあたりがわからないです。
ご教授お願いします。
OpenGL ESを使った割と大きめのプログラムを実行すると called unimplemented OpenGL ES API というエラーが出るのですが、エラーの出ているOpenGLコマンドの名前を特定する方法内ですか? これだけではどこでエラーになってるのかさっぱりわかりません。
GLESでの描画の時してる時にCanvasクラスで文字出したいんだけど、そういうのって可能?
Bitmapに描画してからテクスチャ化 もっと良い方法があれば、自分も知りたい
>>617 GetErrorかGetShaderInfoLog関数
>>611 jcifsってLGPLだから使っちゃうとマケプレ配布できないよね?
なんで? GPLに商用利用不可なんて項ないだろ
オンラインでバイナリ配布する場合は「同じ方法で」ソースを開示する必要がある マケプレではそれができない
説明にgithubとかのリンク付けるだけじゃダメなん?
GPLV3の場合はDRM外しも提供しないといけないから、さらに無理。 ストアからダウンロードした物を改変して、 任意の端末にインストールできる手段を提供する必要あり。
jcifsはLGPLだけどアンドロイドアプリとして配布する場合LGPLのソース非公開特例条件を満たせないから 全体にLGPLが適用される点も注意
cifs client providerを別アプリにしてそこのソースだけ公開してしまえばGPLだろうがLGPLだろうがいけるけどね
質問です。 以下のようなことをしたいのですが、実現方法をご教示下さい。 よろしくお願いします。 [やりたいこと] Service -(Broadcast Intent)-> BroadcastReciever -> 通知用Activity(Dialogテーマ) という形でIntentを受信したら、他のアプリがの画面が表に出ている時でも、 ポップアップみたいな形で通知ダイアログ(ウィンドウ)を表に出したい。 通知用ActivityはDialogテーマで、背景は透過させたい。 (例えば、ホーム画面でBroadcastを受信したら、ホーム画面を背景に通知用Activityを表示) [現状] 今はIntent受信後、通知用Activityの表示自体は上手くいく。しかし、 その背景がメインのActivityになってしまう。 manifestで通知用ActivityのIntent-Filterにandroid.intent.action.MAINを 指定して通知用ActivityをメインActivityにしてやると、通知用Activity に限っては思い通りの動作になるが、今度はLauncherからアプリが起動 出来なくなってしまう。
629 :
628 :2011/03/16(水) 18:34:43.38
>今度はLauncherからアプリが起動出来なくなってしまう。 これについては、追加するところ間違ってました。
>>628 MAINのActivityはバックグラウンドに回り込んだらfinish()で
閉じる仕様にしてしまうとかどうだろう?
そうすると今度はMAINがフォアグラウンドにあった時、
Intentを受け取るとMAINが閉じてしまうけど。
632 :
628 :2011/03/16(水) 20:12:19.56
>>630 ありがとうございます。
邪魔ならfinish()で消してしまえば良かったんですね。目からうろこです。
>Intentを受け取るとMAINが閉じてしまうけど。
MainのActivityで、onResumeとonStopでフォアグランド状態を保存して
おいて、MainのActivityでもbroadcast Intentを受け取るようにしておき、
Intentを受け取った時点で、Mainがバックグラウンド状態の時のみfinish()
を呼ぶという実装にして回避しました。
これで何とかなりそうです。
ありがとうございました。
Homeランチャーアプリを作りたいのですが まずは何から始めたらよいですか?
>>633 質問するときに適切な情報提供をきちんとしないと、
見た人がエスパーじゃない限り回答出来るわけがないってのを知る事。
大儲けできるアプリを作りたいので何を作ればいいか教えてください
>>636 他人を出し抜ける頭を持ったパートナーを作る
638 :
デフォルトの名無しさん :2011/03/16(水) 21:39:50.71
スタンドアロンのPCのエクリプスへ、ADTを持っていきたいです。 ADTを記憶装置で持ち運びできませんでしょうか。 そのとき、どこでADTをダウンロードすればよろしいでしょうか。 ちなみに、別のPCのエクリプスを持ってきても、動作しません。
639 :
デフォルトの名無しさん :2011/03/16(水) 21:44:58.32
ちなみに、SDKのセッティングも、まだです。 ダウンロードと解凍は、できたのですが・・・。
設定が終わったらそのままコピーしろ
>>636 教えられるようないいアイディアがあったら自分で作るわw
643 :
デフォルトの名無しさん :2011/03/16(水) 22:53:22.05
コンパイルエラーでSDKディレクトリにdx.jarが無いって怒られるんだけど androidをインスコしたディレクトリのplatforms\android-8以前はtoolsってディレクトリがあって そこにdx.jarがあるんだけれど platforms\android-9以降にはtoolsディレクトリが無い これは俺のインスコが失敗している?
platform-tools\libにあるよ
645 :
デフォルトの名無しさん :2011/03/16(水) 23:18:50.77
SDKとADT、どこのディレクトリに入れるんでしょうか。 両方とも解凍は済みましたが、設定がうまくいきません。 適用やOKが、灰色のままなんです。
646 :
デフォルトの名無しさん :2011/03/16(水) 23:30:09.32
>>644 platform-tools\libにも無いんだけどやぱ入れなおしたほうがいいかね
>>645 (do not unpack it) って書いてあったの読んでないだろう
ダウンロードするだけじゃなくて説明も読みたまえ
onTouch(View v, MotionEvent event)で、Viewを移動させようとしています。 MotionEvent.ACTION_DOWNやMOVEを検知しViewを移動させることはできました。 しかし、ACTION_UPへの分岐が反応しないことがあります。 と言うより反応しない事の方が多いです。 eclipseのデバッグモードで確認すると、指を離したイベントは検知されているのですが…… 何が原因か教えていただけないでしょうか?
フォーカスは該当Viewになってる? 最低限のソースでの挙動は?
>>651 1.DOWN→該当Viewを半透明
2.MOVE→該当Viewを移動
3.UP→該当Viewを半透明から元に戻す
該当Viewをタッチすると半透明になってちゃんと指の動きについてきます。
しかし、3の元に戻す処理が起こらなかったり起こったり……
returnはtrueです。
失礼しました ADWランチャーのようなHome画面を変更できるようなアプリを作りたいのですが Javaを勉強するのはわかりました、よさげな本やサイトがあれば教えていただきたいのですが お願いします
>>652 UPに来る途中で横取りされてない?
Log.vを怪しい(そうな)所へ入れてみればどうだろう。
adwやlauncher proを超えるスーパーホームを作って大儲けしたいのでどうすれば越えられるか教えてください
>>655 プログラミング以前にアイデアが重要だと思うよ
>>655 どうぞ頑張って下さい。
儲けたら此処で鼻高々にあなたの自慢話聞いて差し上げますw
SlidingDrawer を使って、画面下から上へ表示させるようにしているのですが、 上に引っ張ると、一番上までいってしまうのを、画面中央までにすることは可能でしょうか。
659 :
658 :2011/03/17(木) 14:23:05.53
topOffset に値を設定することで解決しました。すみません。
いえいえ、報告御苦労様です。
いいってことよ
NDKを試そうとしているのですが、
android-ndk-r5bをDL、解凍してCの下のSDKフォルダに配置、とりあえずコンパイルを試そうとCygwinで
android-ndk-r5bの下のサンプルのhello-jniのjniまで移動して$ ./ndk-buildを実行。
すると以下のエラーが出ます。(改行規制に引っ掛かったので行間を詰めました)
To solve the issue, follow these steps:
1. Ensure that the Cygwin 'make' package is installed.
NOTE: You will need GNU Make 3.81 or later!
2. Define the GNUMAKE environment variable to point to it, as in:
export GNUMAKE=/usr/bin/make
3. Call 'ndk-build' again.
makeが見つからないからパスを通せと言ってるのかと思い、
GNUMAKE=/usr/bin/make を環境変数に追加して、Cygwinを再起動してもう一度試すも同じエラー
今度はmakeのインストールを確認しようとCygwinのインストーラを起動し、インストールのオプションを確認。
インストールされていましたが、念のためインストールしなおしPC再起動してもう一度実行しましたが、また同じエラー。
それでもCygwinかmakeが正しくインストールされていないのかと以下のサイトの
ttp://palmbiff.sourceforge.jp/gccdev/cygwin.html 「makeと入力し、Enterキーを押します。
画面例の確認「make: *** No targets specified and no makefile found. Stop.」と表示されれば、cygwinは正常にインストールされています。」
を試したところ、上記と同じメッセージが表示されました。
エラー内容で検索してみましたが、情報がほとんど出てこずお手上げ状態です。
どなたかアドバイスをお願いします。
Cygwinでパス表示してみな。 本当にmake通ってる? またlinuxだとパス設定した後にexportを実行 しなきゃならんけど、Cygwinはパス設定するだけだっけ?
664 :
デフォルトの名無しさん :2011/03/17(木) 20:16:07.12
「Android SDK およびAVD マネージャー」で、Avilable Packages をやってるとき。 チェックボックスをチェックしたら、即、「Failed to fetch URL」ときて、 グーグルのxmlアドレスをFetchingし始めてしまいます。 当方はローカル・マシン環境なのですが、ここを何とかできますでしょうか。 ファイルのダウンロード等なら、他のパソコンからやる機会はあります。
665 :
デフォルトの名無しさん :2011/03/17(木) 23:19:36.38
surfaceviewで作ったゲームアクティビティ切り替えに、 ものっそい時間かかる(5秒以上)んだけど、どうすればいいでかす
URLを投げるとその中身を全部TextViewに入れて表示するものを導入として作っているのですが 特殊記号が&だと&のように表示されてしまいます これらの特殊記号をちゃんと表示させようと思うと自力で変換しなければいけないのでしょうか
667 :
デフォルトの名無しさん :2011/03/18(金) 00:47:24.60
>>665 エミュレーターで?確かにエミュは遅いがそこまで遅いならPCスペックに問題があると思う。
実機でそれならコードに問題があるんじゃない?
668 :
デフォルトの名無しさん :2011/03/18(金) 01:09:54.11
>>667 エミュっす
CPUはC2Dの3Ghz
さほど遅いとは思えんですたい
>>668 public static void changeActive(Activity active, Class<?> nextClass ){
Intent intent = new Intent(active, nextClass);
active.startActivity(intent);
active.finish();
}
↑俺はこういうクラスメソッド使ってる、一瞬で遷移するぞ。
sdcard/albumthumbs内のアルバムアートを表示したいのですが、 この中に入っている123643...というアルバムアートのキャッシュ? 数字の羅列のファイルがうまく扱えません. どのように加工してbitmapまたはbyte[]として扱えるでしょうか.
アプリ内でPdfファイルを作成したいのですが、どのようにすればよいですか? Intentから起動して、pdfを生成出来るアプリとかあると助かるんですが。。 もしなければiTextとか使おうかなって思ってます。
>>670 コンテントプロバイダを使うんじゃない?
>>671 元のデータが汎用的なものなら、pdfへの変換をやってくれるWEBサービスを利用するとか。
汎用的なものでなけりゃ、pdfのスクリプトを書き出す処理を自前で作るしかないのでは?
こっちと間違えてもう1つのスレに質問してしまいました。マルチじゃないんでよろしくです。 String の配列のデータとint型の数字をキャストしてStringにしたものを if文で比較するということをしたいのですが どうみても同じなのに思うように出力されません。 何が原因でしょうか? String[][] data = {{"1/1","1/2","1/3"}, {"2/1","2/2","3/3"}} int hoge1=1; int hoge2 =2; String str1 = Integer.toString(hoge1); String str2 = Integer.toString(hoge2); String hogehoge = str1 + "/" + str2; 例えば if (data[0][1] == hogehoge) { 処理 } これだと両方とも 1/2 のはずなのに処理しません 出力しても 1/2 1/2 と表示されています。 Java特有の何かあるのでしょうか。
>>673 文字列の中身が同じかを比較するのは==じゃなくてequalsメソッド
==だと同一のオブジェクトかどうかを判定してしまう
と思う
675 :
673 :2011/03/18(金) 11:45:27.47
>>674 できました。
ありがとうございます。
やはりJava特有みたいですね。PHPなら何でもokなんですけど。
>>673 String のメソッドを何回も見直してみな。
更新して無かった、すまん。
>>672 汎用的では無いですね。。
Web サービスもちょっと。。
ライブラリー使って頑張ってみます。ありがとうございました。
679 :
664 :2011/03/18(金) 16:09:37.05
Remenber Me!!
タウンページでエスパーを探しなさい。
681 :
デフォルトの名無しさん :2011/03/18(金) 18:52:08.93
Buttonウィジェットが縦に大きすぎるんですが 10pxとかを指定しても一定以上小さくなりません。 普通のTextViewと同じくらいの大きさがいいんですができないのでしょうか。
>>680 タウンページでエスパーを見つけられるような奴もエスパーだろ
>>669 関係無いけど,ちょっと質問させてもらっていいかな。
こういうメソッド作って使うとき,669がやってるように,
ContextじゃなくてActivityを使うべき?
今までContextでやってきたんだけど,メモリ食うっていう話も聞いて
Activityに書きなおすかべきか
>>684 ContextによってはActivity起動する時に
FLAG_NEW_TASK(?)を指定しなきゃならんので
呼び出し元のContextがActivityと決まってるんだったらActivityでいいんじゃね?
メモリ云々はリークした時の話なんじゃないの?
686 :
684 :2011/03/18(金) 22:08:40.76
Androidで3Dゲームが作りたいのですが、エミュレータが遅すぎて死にそうです。 3Dゲームを作るのに最適な日本で購入可能な機種を教えてください。
俺も機種を変えてエミュレータは早くしたい。
>>687 マウスコンピュータとかNECとかDellにあった気がするけど、
適当に外国から2万切る機種を輸入するのが良いと思う
安いしこのあたりの機種はかなりデフォルトのAndroidOS使ってる事が多いから、
変な機種依存で悩む事も少ないかと
>>673 >String str1 = Integer.toString(hoge1);
>String str2 = Integer.toString(hoge2);
>String hogehoge = str1 + "/" + str2;
どうでもいいけど、この3行は
String hogehoge = hoge1 + "/" + hoge2;
と書ける。Javaの基本から勉強した方がいいよ。
>>690 中国製の安物は、マルチタッチに対応してないことがほとんどなので、悩みどころ。
693 :
デフォルトの名無しさん :2011/03/19(土) 13:13:19.74
TextViewの中にリンクを表示して、そのリンクを実機でタップしてみると強制終了してしまいます。 CharSequence charSequence = Html.fromHtml(item.getText()); Text = (TextView)convertView.findViewById(R.id.Text); Text.setText(charSequence); Text.setMovementMethod(LinkMovementMethod.getInstance()); こういうエラーが出ます android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want? わかる方よろしくお願いします。
694 :
693 :2011/03/19(土) 13:38:06.23
>>693 追加です。
これはListViewの中でやっているのですが、
ListView以外ではちゃんと動きました。
だからそこが関係してると思います。
696 :
デフォルトの名無しさん :2011/03/19(土) 13:45:28.71
他のPCで構築したエクリプスを、他のPCへ移して使うには、どうしたら良いのでしょうか。 ちなみに、移築先はローカルマシンです。
>>696 eclipseフォルダをそのままコピペで行ける
・・・と俺は思ってる。やってみ。
698 :
デフォルトの名無しさん :2011/03/19(土) 14:03:17.27
追記です。移築には、リムーバブルディスクを考えています。 地理的な要因があるので、それしかありませんし。
699 :
デフォルトの名無しさん :2011/03/19(土) 14:04:10.58
>>697 以前やったら、変なダイアログが出て起動できませんでした。
英文でけっこう長かったのですが、コピペもできませんでしたし、
そのエクリプスも削除してしまいました。
>>699 以前じゃなくて今は?
今手元にあるeclipse(helios)でやったら問題なく起動したよ
元のエクリプスもworkspaceを別にすれば同時起動もした
701 :
デフォルトの名無しさん :2011/03/19(土) 14:21:31.90
うお、週明けにまた試してみます! ありがとうございます! でも週明けに不具合が出たらまた、お邪魔いたします。 そのときは、またよろしくおねがいします。
あるActivityが一番上に表示されているかどうか チェックするにはどうすればいいでしょうか?
onResumeが呼ばれていてonPauseが呼ばれていなければ一番上
>>696 eclipseフォルダコピーで桶
workspaceでごちゃごちゃいわれたら
.metadataフォルダをまるごと消せば桶
いい参考書はありますあk
707 :
デフォルトの名無しさん :2011/03/19(土) 18:49:09.43
本買ったら女子部の人が書いたやつだった 今度買うときはちゃんと作者の素性も調べよう
708 :
687 :2011/03/19(土) 22:33:29.44
Androidで3Dゲーム作るのに最適な端末を教えてください。
上のレスを参考に色々調べたら東芝のDynabook AZがTegra250を積んでいて良さそうなのですが、
日本製の端末は独自に変なことしてそうで怖いです。
このDynabook AZですが、開発用マシンとして買って大丈夫ですか?
Androidマーケットに対応してないのはどうでもいいです。どうせ自分のライブラリを動かすだけなので。
ちなみにエミューレーターでの動作はこんな感じです。
http://www.gazo.cc/up/31459.png
2.1はありえないと思うが
710 :
708 :2011/03/19(土) 22:44:47.95
アップデートで2.2.になります。問題ない。 あとNDKとC++の例外が使えるかどうかが不安です。
明示的なIntentの起動について教えてください。 例えば、アプリAからアプリBを起動する場合、次のようにしています。 Intent i = new Intent(); i.setClassName("hoge.hoge.pkg","hoge.hoge.pkg.activity"); i.putExtra("extra", "ExtraData"); startActivity(i); 上記のやり方でアプリBを起動することはできたのですが、データの受け渡しがうまくいきません。。。 Intent i = getIntent(); String data = i.getStringExtra("extra"); としてデータを受け取ろうとするとClassNotFoundException、NoClassDefFoundErrorとか発生します。。 ひょっとして、アプリケーション間でデータの受け渡しとかは出来ないんでしょうか?
受け側アプリがデータをどう扱っているかによるだろ Intentでの受け渡しを公開してるアプリなら仕様読めば
>>708 その端末で動いたところで他の携帯じゃあ動かない可能性がある
ListViewのDividerを特定の箇所だけ変えたいのですが、可能ですか? [東日本] --- --- [西日本] --- --- のようにしたいのですが
特殊なことをやりたい場合は、既存のコントロールではなく、 自前で実装した方が遙かに楽。
他のアプリが起動中でも、画面端をクリック(フリック)で起動するランチャーが数種類マーケットにありますが ああいった「バックグラウンド(サービス)から画面のタッチを検出」ってどうやってやっているんでしょうか? セキュリティホールを突くとかの高度な技でもつかっているのか・・・
>>712 2つとも自分の作成したアプリなんですよ。。
何かやり方がまずいのかな。
>>717 透明のウィジェットを画面端に配置して…
>>718 エラーから見るに呼び出そうとしているActivityがマニフェストに正しく定義されていないような…
それと、MAINでも何でもいいからアクションをマニフェスト内で定義して、Intentでも指定した方がいいと思います。
>>715 そういうのはリスト要素の特別なものとして扱うのが普通なんじゃなかろうか。
adapterが、[東日本]と[西日本]のpositionで、getEnabledがfalseを返し、getViewではそれ用に設定したviewを返す、みたいな。
>>717 まるで飛行機を見て「あんな鉄の塊が飛ぶはずがない、魔法ですか」と言っているようなもんだぞ。
現時点で、最も薄いタッチパッドは、何ミリ厚でしょうか? また、伸長や衝撃にどこまで耐久するか気になります。 メガネにクリップで付けた小型ディスプレイと無線で接続し、 背広の裾をキーボード代わりにしてJavaを打つシステムを作りたいです。 静電気の問題が不安ですが、まずはタッチパッドの薄さからお教え下さい。 もちろん、Javaで制御系を創ります!
Androidでウェアラブルでも作る気か?w できあがったら紹介してくれ
725 :
デフォルトの名無しさん :2011/03/20(日) 23:30:28.85
BroadcastReceiverってなにに使っていいか全然分かりません。 なにかおもしろサンプルとかあったら紹介願います。
>>719 ,722
ありがとう!!WindowManagerにLayoutParams.type=TYPE_SYSTEM_OVERLAYで
onTouchListner()をオーバーライドしたViewをaddViewしたら望み通りの動作になりました。
727 :
デフォルトの名無しさん :2011/03/21(月) 01:36:43.49
fedora 14(32bit)でsdk r10動かしている人いますか? emulatorウィンドウの閉じるボタンを押しても、エミューレータが終了しないんだが。
macbook proにeclipse+androidの開発環境入れようとしてるんだけど、なんどやってもできないorz 一通りインストールできるけど サンプル動かそうとしても 説明 リソース パス ロケーション 型 Error generating final archive: Unable to get debug signature key Home 不明 Android Packaging Problem とでるし、エミュレーター作成しようと思っても SDK Manager エラー: null とでてなんもできない。 新しいandroidSDKのバグとかでしょうか?
scrollview で 一番下までスクロールされたことを判断するにはどの値を見ればいいでしょうか? onScrollChanged 中でいろいろ試しているのですがうまいいきませんorz
エミュレーターにアプリ転送ができませんorz 実機(Android2.2)にはできるんですが… ケータイに転送できるのでパスは合ってると思います このメッセージは何なんですかね?(コンソール画面の) pkg: /data/local/tmp/アプリ名.apk Failure [INSTALL_FAILED_INVALID_ID_APK]
どんなやり方でインストールしようとしてるのか書かないと。
>>731 同名パッケージを削除して、再度チャレンジ
734 :
731 :2011/03/21(月) 14:04:03.31
レスどうもです インスコの仕方はコマンドプロンプトから adb install アプリ名.apk …です アンインスコできませんorz 何でだろな… adb devices → emulator-5554 device と出る adb shell → cd data/data → ls でパッケージ名確認 exitで戻る adb uninstall air.なんとか.アプリ名 で結果は Failuer Failuerは失敗で 成功はSuccessですよね? 当然 も1回adb shellで確認したら消えてませんでした 別の方法で強制的に消す事はできないでしょうか?
installコマンドで-rオプションつけてみるとか install -r アプリ名.apk
補足。当たり前だけどadbでね adb install -r アプリ名.apk
>>733 パッケージ名と書いたが、削除する場合も
アプリ名.apkだよ。
>>729 まさにそれでしたorz
エラー消えて、エミュレータも作成できました。
ありがとうございました。
739 :
731 :2011/03/21(月) 14:35:44.05
-rだめでしたorz AVDマネージャーから現状のを削除し 新たなエミュを作り直しても 正常インスコ×、 画面にアイコン出てこない、 でもadb shellで確認すると入っている、 アンインスコできない、 他の最初から入っているアプリもアンインスコできません 最初の何かの設定が間違っているのか…?? しばらく色々調べてみますが どなたか心当たりのある方がいたらヒントっぽいのでもいいのでよろっす
ググったり本屋で読み漁ったのですが、どうしても分らなかったので質問です。 ステータスバーの左上にアイコンを置く方法です。 Notification & NotificationManager を使って、通知メッセージとして表示させる方法については 調べがついているので分るのですが、縦スクロールを行わずに・・・なんて言うのでしょうか、 例えば「Battery Indicator」や「MixZing Basic」などでは、 左上にポンッと、縦スクロールをさせずに置いているのですが、 どなたかご存知の方、教えて頂けないでしょうか。 宜しくお願いします。
>>740 文字を1行で表示したいって事?
それなら文字を短くするしかない。
質問です desireHDで実機デバッグやりたいのですが、 adb devicesで見てもデバイスが出てこない どうやればいいんでしょう ↓やってみたこと android_winusb.infに以下を追加 [Google.NTx86] ; HTC DesireHD %SingleAdbInterface% = USB_Install, USB\VID_0BB4&PID_0CA2 %CompositeAdbInterface% = USB_Install, USB\VID_0BB4&PID_0CA2&MI_01 デバイスマネージャでインストールしようとするけどファイル指定してもドライバーソフトウエアが見つからないと言われる デバイスマネージャで見ると >他のデバイス ADB のADBのプロパティで << デバイスの状態: このデバイスのドライバーがインストールされていません ハードウエアIDの値: USB\VID_0BB4&PID_0CA2&REV_0226&MI_01 USB\VID_0BB4&PID_0CA2&MI_01 >> という感じ android_winusb.infの値と上のが違うので同じにしてやってみたけどうまくいかない
>>742 ですが、
自己解決しました…
; HTC DesireHD
%SingleAdbInterface% = USB_Install, USB\VID_0BB4&PID_0CA2&REV_0226&MI_01
%CompositeAdbInterface% = USB_Install, USB\VID_0BB4&PID_0CA2&MI_01
を
[Google.NTamd64]
[Google.NTx86]
の下に追加したところインストール出来てデバイス認識しました…
OSがWindows7 64bitだとGoogle.NTamd64にも必要ってことなのかな?
NDKのコードを修正しただけだと更新を検出できなくてJavaのコードを変更しないとデプロイしてくれないのですが、 問答無用で毎回デプロイする設定にはできませんか?
745 :
デフォルトの名無しさん :2011/03/21(月) 19:04:52.12
毎度お世話になってます layoutのxmlで作ったtextviewとかimageviewの表示を動的に変えるにはどうすればいいでかす
>>741 いえ、そうではなくですね、
通知メッセージ用のクラスを普通に使うと、
文字列を1行で表示できる場合:
1.アイコンと文字列(全て)が表示される。
2.縦スクロールする。
3.左上にアイコンのみ表示される。
文字列が複数行に跨る場合:
1.アイコンと文字列(途中まで)が表示される。
2.縦スクロールし、続きの文字列が表示される。
3.縦スクロールする。
4.左上にアイコンのみ表示される。
という動きになりますが、やりたいのは
一番最後の振る舞いだけに(左上にアイコン「だけ」をポンッと置くだけに)したい。
という事です。
説明不足ですみません。orz
うーん、Notification & NotificationManager クラスで実現
しているのではないのでしょうかねぇ。
左上だから通知メッセージ用クラスなんだと思ってましたが、
それ自体が間違いなのかもしれませんね。
実現しているアプリがあるので、出来ない事ではないのでしょうけど。。。
引き続き、宜しくお願いします。
>>746 あーそれならnew Notification()の第2引数をnullにすればいい。
>>747 おお・・・出来ました。
実は2週間くらい悩んでました。orz
有り難うございました!
>>745 その xml の view を v として、
ImageView imageView = (ImageView)v.findViewById(R.id.Image);
TextView textView = (TextView)v.findViewById(R.id.Text);
みたいな感じで取得してから 中身 を変更。
751 :
デフォルトの名無しさん :2011/03/21(月) 23:00:51.97
SQLiteでCREATE文でテーブル生成できなーーーーーい adb shellで見てもなんもない!!! どうして!?
プログラムなりSQL文なりがおかしいからに決まっているだろう。 何故そんな分かりきったことを聞くのか理解できない。
>>720 ありがとう御座います。
とりあえず、アクションをマニフェストファイルに定義してみようと思います。
エミュレーターでもGoogleのアカウント取らないと正常に動かないの? アプリのインストールとかできるの?
>>754 知ってるかもしれないけど、、、
Resources res = getResources();
ShapeDrawable shape = (ShapeDrawable)res. getDrawable(R.drawable.xxx);
ウィジェットでエミュではタッチが反応するのに実機では反応しないのは何が原因ですかね? 実機はIS01なんですけど
99BASIC
質問です エミュレーターをスナップショットを残して正常終了させるにはどうすればいいんですか? コマンドプロンプトからのインストール時(adb -r install 〜〜)の -rオプションて何の意味ですか?
adb -help
androidでspringを使いたいのですが、javaで使ってたspring.jarにパスを通したら Conversion to Dalvik format failed with error 1とでてきてしまいます。 クリーンなど試しましたが消えませんでした。 androidでspringは使えないのでしょうか
>>730 ↓こんな感じでどうだろうか?
int lastTop = contentView.getHeight() - scrollView.getHeight()
int scrollY = scrollView.getScrollY();
if (lastTop == scrollY) {
// Viewの最後
}
javaにbreakとかあるんでしょうか? プログラムをちょっと止めて検証したいんですが
あるから好きなだけ使え
そしてプログラム本文にbreak;を挿入する・・・さすがにないか
ndk5のインストールに以下のサイトを参考にcygwinとcygwinの下にndkのインストール
ttps://sites.google.com/site/minmin0530/android-ndk-r5 cygwinでhello-jniの下に移動してndk-build実行してエラー
$ ndk-build
Android NDK: Your APP_BUILD_SCRIPT points to an unknown file: home/ユーザー名/jni/Android.mk
/home/sawada/android-ndk-r5b/build/core/add-application.mk:116: *** Android NDK:
Aborting... . Stop.
jniの下にAndroid.mkがないとご立腹。たしかにユーザー名の下にjniフォルダはない。
そもそもAPP_BUILD_SCRIPTって何よと検索して以下のサイトを発見
ttp://www.atmarkit.co.jp/fsmart/articles/android15/android15_2.html APP_BUILD_SCRIPT Android.mkのパスを指定($( APP_PROJECT_PATH)/jni/Android.mkがデフォルト)
とのことなのでデフォルトになっている用なので
APP_PROJECT_PATHかAPP_BUILD_SCRIPTの値を変更すればいいのかと
Application.mkで検索をかけると、他のサンプルにはあるがhello-jniにはないので他のサンプルからコピーしてくる
そもそも必須のはずのAPP_MODULESとAPP_PROJECT_PATHの記述がApplication.mkにないのが気になりますが、hello-jniにコピーしてきた中身を変更して
APP_PROJECT_PATHとAPP_BUILD_SCRIPをndkの下のサンプルを見るように書くがやっぱりエラー。しかもエラー内容すら変わらない。
仕様が変わったのかとこの部分は放っておいて
ttps://sites.google.com/site/minmin0530/android-ndk-r5 このサイトに書かれてる以下の記述をbashrcにする(パスは環境に合わせてcygwinの下のndkを、ユーザー名の部分も変える)
export ANDROID_NDK_ROOT=C:/android-ndk-r5
export PATH=$PATH:/cygdrive/c/minao/android-ndk-r5
しかし、成功せず、やっぱりエラー内容すら変わらない。
そもそも上記の記述はndkの場所を指定しているのであってエラー内容はndkを実行中のエラーなので関係ない気がする。
やっぱりAPP_BUILD_SCRIPTが原因だと思うのですが、上記に書いた通りどう対処すればいいのかわかりません。
こちらのサイトも参考にbashrcファイルに記述してみましたが、やはりダメでした。
ttp://techbooster.jpn.org/environment/824/ ファイルの変更するたびCygwinを再起動して実行しなおしています。
何かミスの原因や、ミスが含まれているような箇所はわかりませんでしょうか。
おれはUbuntuだけど、APP_BUILD_SCRIPTとかNDK_PROJECT_PATHは指定しない方がいい。 余計トラブルになる可能性大。基本的にはどうしても動かなかった時の最後の手段。 (プロジェクトルート) src jni/Android.mk とあったら(プロジェクトルート)でndk-buildを呼ぶ。
>>761 AndroidはJavaで書くけど、バイナリはJavaじゃない、jar自体を作り直せ
>>762 ありがとうございます!
まさにそれで算出できました。
771 :
デフォルトの名無しさん :2011/03/22(火) 23:07:55.08
>>750 onCreateにて
View v = this.getLayoutInflater().inflate(R.layout.ero, null);
ImageView image = (ImageView)v.findViewById(R.id.imageView1);
image.setImageResource(R.drawable.otintin);
これじゃ画像は表示されないままっす
Help
>>771 その v は今表示している Layout に addview はしてる?
setContentViewしろい
ウィジェットでタッチしたらアクティビティを起動したいのですが 設定したupdatePeriodMillisを過ぎてからでないとタッチが反応しません 最小でも30分みたいなのでどうすればいでしょうか?
775 :
デフォルトの名無しさん :2011/03/23(水) 10:24:37.08
当方、JVM1.4.2_05のローカル環境です。 JVMを1.5以上へしたいのですが、方法はありますでしょうか。
776 :
デフォルトの名無しさん :2011/03/23(水) 10:54:46.57
JREごと、最新のにアップデートしたいです。
777 :
デフォルトの名無しさん :2011/03/23(水) 11:05:49.36
.NETFrameworkと、DirectXも、同じくインストールしたいです。 自室の機械ゆえローカル環境、というのがキモなんです。
フツーにJREとJVMの最新版いれればいいんじゃね?
ネットにつながるなら好きなだけ最新版を取ってきてインストールすればよかろう。 何を言ってるんだこいつは。
780 :
デフォルトの名無しさん :2011/03/23(水) 11:44:54.82
自室のはローカルマシンなんです。 ここは、出先です。こっそりやってます。 リムーバブルが2ギガあります。
ローカルとか適当なこというから伝わんねーんだよ オフラインとかインターネットにつながってないと言え そしてフツーにオフラインインストーラを別環境でダウンロードして使え
>>774 updateのタイミングでイベント登録してんじゃね?
783 :
デフォルトの名無しさん :2011/03/23(水) 13:48:35.59
xmlがなんか間違ってんじゃね?
作っただけで置いてないだろ。 ていうか、例が下品。
786 :
デフォルトの名無しさん :2011/03/23(水) 15:46:15.92
エミュでのデバッグ開始時、「waiting for debugger」と言うアラートが表示されて デバッグ開始できません これはどういうことでしょうか
787 :
デフォルトの名無しさん :2011/03/23(水) 15:55:01.27
フレームワークとダイレクトXは、フォルダ移動だけじゃ 移せないんですよね?
>>786 通常はそこから数秒でアプリが開始される。
「デバッグ開始できません」が何を指しているのか不明だが、
アプリの初期化フェーズで落ちてる可能性が高い。
>>783 setContentViewするのはvだぞ
>>783 >> 774 のアドバイスで分からなかったら
onCreate の中身全部と 使ってる xml を全部晒したほうが早いかも。
大した量じゃないはずだし。
792 :
791 :2011/03/24(木) 00:45:18.29
getExternalStorageState()でSDカードがマウントされてるかチェックするようなとき, マウントされてなかった場合に「本当にカードが存在しない」場合と「端末起動処理中でまだ マウントが終わっていない」場合を区別する方法ってありますか? IMEの辞書をSDカードに置いてるのですが,端末を再起動したときだけ,SDカードのマウント が間に合わなくてエラーになってしまうのです. 単純に数秒待ってリトライするしかないかな?
>>787 DirectX や WindowsSDK は header と lib があればいいと思うけど。
というかスレチ
最近よくあるUIで ScrollView で一番下(上)までスクロールしたら 新しいデータを取得して追加、みたいなことをしたいんですが、 思いっきりスクロールさせると、慣性(?)でスクロールが止まらずに どんどん下にスクロールが進んでしまいます。 1.一番下までスクロール 2.スクロール停止 3.新しいデータを表示 をしたいんですが、慣性スクロールを止めるのってどうやったらいいんでしょうか?
それどっかで見た ぐぐってみ
>>796 一番下(上)のitemが表示領域に入ったか否かの判定が出来なかったっけ?
799 :
766 :2011/03/24(木) 09:23:20.54
>>768 実行する場所を変えてみましたが、やはり駄目でした(エラーメッセージすら変わらず)
何か他に悪そうなところはないでしょうか
やったことを詳しく書け。 エスパーを募集しても意味がない
そもそもcygwinでやる必要あんの?
ディレクトリ構成とか、C++のソースの置き場所とか、Android.mkの場所とか、設定している環境変数とか、 何よりAndroid.mkの中身を出さないと、凄腕のエスパー募集にしかなってない。
回転させるとウィジェットが反応しなくなるんですけど どのへんが原因なんでしょうか?
またエスパー募集か
805 :
803 :2011/03/24(木) 14:33:05.42
806 :
デフォルトの名無しさん :2011/03/24(木) 15:27:28.37
TimeクラスとGregorianCalendarクラスのどちらを使った方が良いですか?
またコピペか
androidってソフトキーボードのあるIMEをデフォルトとして想定してるのかね? InputViewがnullのIMEを作ったんだけど,端末を再起動した直後だけ動きが変なんだよね まるで透明なソフトキーボードが存在するかのようにスペースが開けられる 一旦killして再起動された後は何も変なことは起きないんだけど
zipからentry指定で画像取り出して表示まではできたんですがボタンで進んだり戻ったりってどうやったら実装できるんでしょうか そもそも現在表示中のファイルがどれかって認識してないとダメだからentryのnameリストをSQLかどっかに保存するしかないのかな・・・
IMGタグが埋め込んであるサイトをWebViewで表示すると、画像の部分が「?」と表示されてしまいます。 「?」をクリックすると、画像のロード処理が実行され、正しく画像が表示されます。 最初から画像が表示された状態にするにはどのようにしたらよいでしょうか。
メニューボタン押したときに出るメニューのレイアウトについてなのですが、 横3×縦2にしたいのに横2×縦3になってしまいます menu.addの引数をどう変えてもうまくいきません 分かる方いらっしゃいますか?
>>798 一番下にきた判定はできるんですが、
慣性で動いているスクロールが止まらないみたいなんです。
NDK(r5b)でluaをビルドしようとすると luaを呼び出しているcppのソースで undefined reference to `luaL_newstate()' というエラーがでます。 ソースを.cにするとうまくいくのです が.cppだとエラーがでます。 原因がわかる方いらっしゃいますでしょうか
814 :
デフォルトの名無しさん :2011/03/25(金) 02:23:24.89
SQLiteのautoincrementの主キー、若い欠番から番号使うようにするにはどうすればいいだか
>>813 extern "C" とかしてないからでしょ
スカイプで通話しながら自作のゲーム動かしたりってできますか?
>811 メニューのレイアウトはシステムが自動調整している。 文言を短くするか、途中に改行入れる(表示上は改行されないけど)
>>818 文字の長さを短くしたらできました!
ありがとうございます!
WebViewからIDとパスワードを渡して、Web(PHP)側で認証をさせたいのですが 渡す方法が、クッキーとJavaScriptしか思いつきません。 クッキーでIDとパスワードを渡すのは気が引けるし、JavaScriptは あまり使いたくありません。 上記2パターンのうちどれを使ったほうがよいでしょうか? また、それを使用したとき気をつける点などありますか? 別の方法があればご教示いただきたく、宜しくお願いします。
821 :
デフォルトの名無しさん :2011/03/25(金) 10:52:42.99
droid.png・・・幅2000px、高さ3000pxの画像 bitmap = BitmapFactory.decodeResource(context.getResources(), R.drawable.droid); bitmapw = bitmap.getWidth(); bitmaph = bitmap.getHeight(); 何度やっても、bitmapw=1333、bitmaph=2000になってしまいます Androidの仕様ですか?
>>809 いきなりDBまで行かなくても、まずはメモリ上でいいんじゃ。zipを読んだときに各entryをArrayListにでも入れておいたら。
現在表示中のentryはindexで保持、進む戻るはそのindexを増減する。
アプリを再起動したときに前回の状態を保持していたいなら、ファイル名とindexを保存再生すればいいし。
>>821 仕様と言えば仕様
リソースのあるフォルダと動作機の画面解像度が一致しないから
BitmapFactory.Options使え
オプションメニューを作ろうと思うんですけど メニューの表示まではけっこう載せてるサイトが多いんですが そこから先の値を渡すとかの処理が載ってるサイトがみつかりません どこか参考になるサイトありませんでしょうか?
826 :
デフォルトの名無しさん :2011/03/25(金) 16:24:59.93
>>823 ・・・あざっす!!!!
難しそうですが、ググってみます!!
ウィジェットでgetDefaultSharedPreferencesを取得するにはどうすればいいですか?
普通に取得できるが、何を困ってるんだ?
829 :
827 :2011/03/25(金) 18:02:49.86
>>828 型 PreferenceManager のメソッド getDefaultSharedPreferences(Context) は引数 (widget) に適用できません
ってでますけど
830 :
827 :2011/03/25(金) 18:06:39.76
なんか引数nullにしたらエラーは消えました。 これでいけるのかな
831 :
デフォルトの名無しさん :2011/03/25(金) 18:06:54.07
surfaceViewでtoastすると異常終了しまふ なじぇ?
>>830 たぶん無理。
どこで呼び出そうとしてるんだい?
>>832 class widget extends AppWidgetProviderの中です。
やっぱり駄目でした。。
>>833 クラスの中なのは当たり前だろ
各メソッドの引数にある context を渡してやれ
835 :
834 :2011/03/25(金) 18:55:54.53
つうか、getSharedPreferences を使った方がいんじゃね?
>>833 普通にメソッド引数のcontext渡せばいいはずだが。
837 :
827 :2011/03/25(金) 19:31:28.73
onUpdateの中に書いたらできました。 が、ウィジェットを一回削除してまた設置しないと反映されません。 これは仕様として諦めるしかないのでしょうか?
主語、目的語を明記しろ。
839 :
827 :2011/03/25(金) 19:40:49.21
文脈読めよ馬鹿
>815 ありがとうございました 出来ました
ListViewのスクロールの上下部分に出る、霧がかったやつを非表示にする方法はありませんか?
fadingEdgeLengthみたいな?
AndroidのNDKについて教えてください。 JavaからNDKのモジュールに文字列を渡してLogCatに表示したいのですが、 何故か文字化けしてしまいます。 javaとCのメソッドは次のように定義しています。 //java private native int hogePrint(String st); //C JNIEXPORT jint JNICALL Java_hoge_hoge_hogePrint(JNIEnv *jenv, jobject obj, jstring st) ログを表示する際には __android_log_write(ANDROID_LOG_DEBUG, "Hoge", st) としていますが文字化けしてしまいます。 Cのソースに直接記述した場合は文字化けしないようです。 __android_log_write(ANDROID_LOG_DEBUG, "Hoge", "hogePrint") よろしくお願いします。
jstring から const char * には直接変換できねー
>>846 GetStringUTFCharsで変換したところ、文字化けしなくなりました。
ありがとう御座いました。
848 :
835 :2011/03/26(土) 10:40:36.93
>>841 画像は大きくないです。リンククリックしたら読み込むこともできます。
エラーログも出ないため調査に行き詰まってしまいました。
listview使ってる画面からの画面遷移について詳しく載ってるサイトないですか?
>>849 listviewだからって特別なことは無いんじゃね
ウザいよな。listview
>>848 回答者に文脈読ませて質問すんじゃねえよ。
にしてもお前ら親切だよな。エスパーとか関係なしに。
答えることによって自分の勉強にもなるからな そうマスターしてる奴なんていないだろ
855 :
809 :2011/03/26(土) 22:50:08.07
public class Viewer extends View { private Bitmap image = null; private String zipFileName = null; private ZipEntry[] zipEntries; private int zipIndex =0; public Viewer( Context context ) { super(context); setBackgroundColor(Color.WHITE); zipFileName = "/sdcard/comic.zip"; zipEntries = Zip.getEntryList( zipFileName ); setFocusable(true); } @Override protected void onDraw( Canvas canvas ) { image = Zip.getBitmap( zipFileName, zipEntries[zipIndex]); image = Bitmap.createScaledBitmap(image, getWidth(), getHeight(),true); if (image != null) { canvas.drawBitmap(image, 0, 0, null); } super.onDraw(canvas); } //タッチイベント @Override public boolean onTouchEvent( MotionEvent event ) { event.getAction(); zipIndex = zipIndex++; return true; } } 最初の画像は表示されるけどタッチしても画像が進まない・・・_| ̄|○
>>855 ondraw呼ばれてんの?
あと、
index = index++
にすげー違和感。
857 :
855 :2011/03/26(土) 22:58:33.92
自決しました(`・ω・´) タッチイベントでactionの判定とinvalidateしてなかったのが原因
858 :
855 :2011/03/26(土) 22:58:58.75
index++でした・・・
PreferenceActivityで変更したあとウィジットを更新したいのですが、 戻るボタンで戻った場合、どこのプロセスに戻るのでしょうか おそらくonUpdateだと思うんですが、そこから強制的に更新させるにはどうすればいいでしょうか?
OKボタン作る
viewクラスに選択したファイル名を渡すのってどうやればいいんでしょうか リストacitivityでポチッたファイル名をviewクラスに渡してviewクラス内でそのファイル画像を表示する・・・みたいにしたいんです
普通に選択した位置のファイル名をview(なんのビューか 知らんがview継承した自作view?)に渡せば良いじゃないか。 setFileNameとかいうメソッドでも作ってさ。
>>851 ほんと。
普通にImageButton置けないのかねー
864 :
福盛俊明 :2011/03/27(日) 02:58:16.72
アハ〜♪”
865 :
855 :2011/03/27(日) 07:51:14.44
本に載ってるScheduledExecutorServiceクラスのサンプルを打ち込んだのですが、 ビルドし直すと時間間隔で呼び出されるはずの処理が、全く動かなくなります。 クリーンを選んでビルドし直すと高確率で動くのですが、TimeUnitの値を変えたりすると、クリーンビルドをしても動かなくなります。 動くときは正常に動くので、ソースに問題は無いと思うのですが…何が問題なのでしょうか?
>>866 各メソッドに Log.d() でも埋め込んでどこが呼ばれなくなってるか見るとか
break させてみるとか
sqliteのselect文で query rawQuery が用意されていますが、 joinなど複数のテーブルからデータを取得する場合は rawQueryにsql文をベタ書きする方法が一般ていなのでしょうか? なにかjoin専用のAPIなど用意されているのでしょうか.
すまん。勘違いか。
webViewをアプリから呼び出してphpを表示させているのですが、 phpの画面遷移後に画面を横にすると最初に設定した画面に飛んでしまいます。 これを飛ばさないようにする方法があるのでしょうか? 横にしない設定にしてしまったほうがよいですか?
874 :
873 :2011/03/27(日) 15:59:02.14
自己解決しました。 WebView.restoreState(savedInstanceState); これで状態を引き継げばよかったんですね。
画像を画面の高さに併せて縦横比変えずに拡大縮小ってどうすればいいでしょうか
>>867 そうですね・・・原因がさっぱりすぎて何の情報を出せばいいのかも分からない状態です。
単純にAndroidは環境・設定によってはビルドのミスや例外が発生する、といった事例があるかどうかだけでも分かれば助かります。
>>868 Log.dを埋め込んでみましたが、動かないときはそもそもScheduled略に処理が行ってない様子でした。
今GalaxySを繋いでデバッグしてるんですが、「実行」で動かなくても後でGalaxySのアプリ一覧から選ぶと動いたりするので、
おそらくビルドと起動のところに問題があるのだと思います。なのでもうちょっとその辺調べてみます。
お二人とも曖昧な質問に答えてくれて、有難う御座います。
>>876 onCreateやonResumeで生成・実行した処理が
反映されないってことがUI関係だと結構あるんだが
そういう類いではない?
その場合はhandlerとかに処理を投げてonXXXを
一旦抜けてから処理させるとうまくいくんだが・・・。
viewクラスのタッチイベントでActivityをfinishさせるのってどうやればいいんでしょうか ・・・ルー大柴みたいな文章ですみませんがお願いします
>>878 リスナーを対象Activityのインナークラスとして定義すれば、そのクラス内からActivityのメソッドが呼べる。
もしくはリスナーのフィールドで対象Activityのインスタンスを保持する。
サンプルプログラムでよくみかける (Class<?>) というのはどういう意味なんでしょうか? 例 Intent intent = new Intent(this, (Class<?>)MyActivity.class);
882 :
878 :2011/03/27(日) 20:51:03.89
>>879 ,880
↓みたいな構造なんですが、onTouchEventの中でfinishは使えませんでした
リスナーの定義はImageViewクラスでimplementsするってことでしょうか
public class Viewer extends Activity{
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
}
}
class ImageViewer extends ImageView {
public ImageViewer( Context context )
{
super(context);
setFocusable(true);
}
@Override
protected void onDraw( Canvas canvas )
{
}
//タッチイベント
@Override
public boolean onTouchEvent( MotionEvent event )
{
}
}
EditTextで入力された数字をint型で受け取る方法を教えて下さい
>>883 int i = Integer.parseInt((EditText)findViewById(R.id.editText1).getText().toString());
>>881 型キャスト
(int) x
とか書いたことない?
887 :
881 :2011/03/27(日) 22:03:16.94
>>882 好きなの選べ↓
ImageViewerクラスをactivityのインナークラスとして定義する。
OnTouchListenerをActivityにimplementsさせるなりActivityのインナークラス/無名クラスにするなりしてそのインスタンスをImageViewerにsetOnTouchListenerする。
コンストラクタなりsetterなりでImageViewer(もしくはOnTouchListener)にactivityのインスタンスを渡す。
>>882 一番上でかいけつしました!!
ありがとうございます
jcifsでローカルPCに繋ごうとしてるんだがSmbFile変数監視するとisExistsがfalseになる 10.0.2.2で接続してるのになんでだぁああああああああ
ウィジットのonUpdateを強制的に更新させる方法はないでしょうか?
893 :
867 :2011/03/28(月) 03:50:36.11
>>876 分かっている状況・環境を "具体的に" 書いときなよ。
例えば、jdkやeclipse、androidsdkのバージョン、他から取ってきたライブラリとか、開発機の簡単なスペックとか。
本のサンプルを〜というなら、書名とページ番号を書けば、持ってるやつから何か情報が出るかもしれない。
また、エミュレータか実機かも「GalaxySを繋いで」が先にあれば、持ってるやつ(ry
PreferenceActivityを最初だけ呼び出したいのですがどうかけばいいのでしょうか? というよりインストールしたとき最初に呼び出さないとエラーになります。
>>895 おまえ対応方法がおかしいぞ
エラーが出るなら、そのエラーを修正するのが本筋だろ
初期設定が空だからエラーが出るってことだろ デフォルト値を入れとけばいいんじゃね
898 :
866 :2011/03/28(月) 18:23:30.52
>>877 on略命令を使ってるのはActivityくらいなもので、
基本Surfaceを使ってるので関係ないと見ていますが、これがそもそも間違いだったりするのでしょうか。
>>893 jdkは1.6.0_22-b04、eclipseはPleades ALL in Oneの3.5 Galileo、
開発機はWindowsXPのProfessional、CPUはアスロンX4の620、メモリ4GBです。
本は
http://www.rutles.net/books/280.html で、P229のマルチスレッド処理追加のところです。
基本的に実機、GalaxyS(Ver2.2.1)でテストしています。
ご親切にありがとうございますホントに…
掲示板の専用ブラウザを作りたいと思っています スクロールするところのみをOpenGLで描画することは可能ですか? イメージとしてはiPhoneのブラウザみたいなぬるっとした表示をやりたいです OpenGLのゲーム以外の利用例が見つけられなかったので教えて欲しいです
挫折するだけだからやめとけ
>>900 そうですか
GalaxyTabのブラウザがopenGLを使ってるっぽい動作だったので参考にしつつさらに調べてみます
ありがとうございました
IS04 eclipse android-sdk_r10-windows
実機で表示するため以下のサイトを参考にしています。
ttp://www.adakoda.com/android/000242.html IS04のドライバを削除し、USBでIS04を接続した際にハードウェアウィザードがでてドライバを選択するのですが、
フォルダ構成が違っていたのでとりあえず「(略)\extras\google\usb_driver」を指定しました。
ドライバ自体はインストールできたものの、「adb devices」コマンドを入れてもIS04らしきものが表示されません。
(「List of devices attached」の1行のみ表示)
もちろんeclipceで実行しても表示は変わりません。
他のサイトを見てもこの段階でデバイスが認識されているようなのですが、
他に何かすべき項目があるのでしょうか?
ブラウザはOpenGLじゃなくてSkiaじゃなかったっけ?
906 :
903 :2011/03/29(火) 07:56:35.68
朝起きたら自己解決したプログラマーミラクル eclipceの[ウィンドウ]-[Android SDK および AVD マネージャー]の [Available packeges]がインストールできておらず、インストールすることでできました。
環境構築段階の質問で申し訳ないのですが、SDK Managerからパッケージのインストールをしようとすると、転送速度が徐々に落ちて失敗してしまいます。 何か別の方法でパッケージをインストールできないのでしょうか?
ひとつずつ気長に繰り返して
エミュで出たエラーでeclipseでどこがエラーかっていうのは どのウィンドウ出せば見れるのでしょうか?
LogCat?
912 :
910 :2011/03/29(火) 17:09:13.21
jcifs使ってエミュレータからwinの共有フォルダに繋ぎたいんですけど SmbFile dirFrom = new SmbFile("smb://10.0.2.2/D/"); SmbFile[] fileList = dirFrom.listFiles(); ←ここでエラーが・・・ 全く同じコードipは127.0.0.1でjavaのコンソールアプリにしたらファイルリスト書き出せます ちなみにウイルスバスター使ってますがFWとかが原因でしょうか
教えてください。 エディットボックスから入力された文字列を 画像bitmap化して保持したいんですが、 テキスト文字列を画像化するにはどうしたらいいでしょうか?
加速度センサーと音のテストをしようとシェーカーアプリを作っています。 onSensorChanged内で一定以上の強さで振ったらSoundPoolのplay(またはMediaPlayerのstart)を流すというものです。 音の再生前にcurrentTimeMillis()で現在の時間をメンバに保持しておき、 次回は保持した時間+1000以上経たないと鳴らないようにしています。 ですが、なぜか連続して鳴るときがあります。 もしかしてonSensorChangedは複数のスレッドから実行されているのでしょうか。 また、何度も再生しているとフリーズしたり、実機が勝手に再起動したりと動作が不安定なのは ここで音の再生を行ってはいけないという事でしょうか・・・
>>915 Canvasに書いてそれを保存すればOK
918 :
デフォルトの名無しさん :2011/03/29(火) 22:51:42.58
EclipseでAndroidの開発を始めてみたのですが、実行結果を確かめる度にとても時間がかかってしまいます。 @ソースを編集します。 Aエミュレータを起動して確認します。 B再びソースを編集します。 この時点ではエミュレータにBの編集分が反映されていないので、 Cエミュレータを一度閉じて、再び起動して確認します。 こんな感じで開発しているのですが、Cでとても長い時間かかってしまうのです。 自分のPCのスペックの問題もあると思うのですが、 もっとスムーズに開発する方法などありましたら教えていただけないでしょうか。 よろしくお願いいたします。
>>916 soundpoolとmp3は相性悪いよ、確か。
oggだとうまくいくかもよ。
ただ、2.0ぐらいの時代の話だから改善されたかどうかは知らん。
複数から呼ばれてるかは知らね。
922 :
914 :2011/03/29(火) 23:01:29.22
誰かアドバイスください〜 2日嵌って・・・
>>922 エラーの内容書けよw
ってか、manifestに色々権限与えてないとかじゃないよな?
127.0.0.1なんてローカルだろうし。
>>920 マジで
今までずっとその都度開き直してた
925 :
922 :2011/03/29(火) 23:15:44.06
>>923 tryで囲ってるんでエラーの内容がわからないんですorz
manifestは全く触ってないんですがネットワークつなぐための設定とかあるんでしょうか
>>925 catchしろよ・・・orz
ググればINTERNETなんたらとか色々あるから・・・orz
デバッグ画面でステップインでみてるんですがcatchされたエラーの内容ってどこでみれるんですか ほんとすみませんorz
928 :
922 :2011/03/29(火) 23:29:58.88
03-29 14:29:23.983: WARN/System.err(290): jcifs.smb.SmbException: Failed to connect: 0.0.0.0<00>/10.0.2.2 こんなエラーがでてました
>>928 connectできないって言ってるけど10.0.0.2ってのは
pingとか通るのかね?同じPC上なら127.0.0.1で試すとか。
あとはアクセス先の権限とかsmbパスワードとか。
FWがポート塞いでるってのも。
proxy通してるならエミュに通す設定してないとか。
あと、eclipseならLog.wとかで出せばLogcatで見れる。
後は知らね。
930 :
デフォルトの名無しさん :2011/03/30(水) 00:18:22.71
NECのLifetouch Note用にAndroid 2.2をビルドしています。 できたrecoveryを実機のと置き換えるためにadbでコピーして 実行すると、illegal instructionと出ます。 原因がわからないので、アドバイスいただけたらと思います。 (実機のcpuはTegra250。armv7-aにしている) 別にクロスコンパイルしたbusyboxは実機で動いています。
質問です。 Android2.2以前で、画面を縦の逆向きにセットして固定することは可能でしょうか? setRequestedOrientationは無理なようなので……
932 :
928 :2011/03/30(水) 07:10:21.54
>>929 いろいろip変えてためしてもやっぱりconnectできないってなりますorz
そもそも起動したエミュでwifiがオフになってる状態がダメなんでしょうか
2.2なんですけどSQLiteのバージョンっていくつですかね?
935 :
915 :2011/03/30(水) 11:44:02.24
>>917 ありがとうございました。
初心者でアドバイスの意味を理解するのに1日かかりましたが、なんとかできました。
CanvasっていうのはViewのOnDrawの引数でしか使えないのかと思ってましたが、
Canvasクラスとして生成して自由に使えるんですね。
>>914 エミュレータは独立した arm linux というか Android 機を
エミュレートしてるんだから、127.0.0.1 ではエミュレータ自身にしか
繋がらないぞ
スマん俺がちゃんとレス読んでなかっただけだった
エミュの中のフォルダをWindowsからエクスプローラとかで見れる? ドライバとかあるのかしら?
ホームで見るアプリタイトルの背景の黒の透明度の数値はどれくらいでしょうか?
本格的にゲームを作るとなるとOpenGLのほうが処理が早いので有利という感じの記事をいくつも見かけたので 今のうちに慣れようと思ったのですがエクリプスでどのようにプロジェクトを作ればいいのか分かりません。 Androidプロジェクトを選ぶと「ビルド・ターゲット」にある「Android」と「Google APIs」のどちらを選んでもjavaが生成されます。 OpenGLはjava形式のファイルの中に書くことになるのでしょうか? (描画などをOpenGLで行う?)
>>942 ありがとうございます。
要所要所でGLを使うといった形みたいですね。
Androidでゲーム作るには数学の基本知識は必要ですか?
まずは何を作るのかを明確に示せ。 話はそれからだ。
簡単なアクション系とかです
先に国語の勉強が必要らしい
例えば3Dゲーム作ろうと思ったら ライブラリの組み合わせで作れちゃうのか ある程度数学の知識が必要なのかということです
数学の知識はいる アクションだと物理もいる けど「数学完ぺき!物理完ぺき!よしゲーム作るぞ!」って人はおらんと思う 壁に当たったらその都度調べるくらいでいい
>>950 ありがとうございます
参考になりました
なんでjavaって連続の割り算掛け算できないの? hoge = aaa/3600000/24; これで普通いけるよね こう書き直さないと駄目だった hoge = aaa/3600000; hoge2 = hoge/24;
>>952 これじゃ駄目なの?
hoge = (aaa/3600000)/24;
>>953 それでできたけど
駄目ってことじゃなくてなんでできないんだろうと思って
>>954 そっちで聞いてみようw
明示的な記述じゃない場合バグの元だからあえて許してないのかねぇ Javaってこういうの多いよね、条件判定はboolean以外認めないとか地味に鬱陶しい
PHPがフリーダムすぎるから PHP⇒javaの順番で学ぶとすげーやりずらいわー
ちょっと長めのプログラムにしたら 回転させるとプログラムが落ちるようになってしまたんですが プログラムが処理しきれないと落ちることってあるのでしょうか?
回転させるとActivityのonCreateが毎回呼ばれる。 そこでメモリを確保してて落ちるのはよくあること。 Manifestのactivityにandroid:configChanges="orientation|keyboardHidden"を追加すればonCreateは向きを変えても呼ばれんよ。
ZipFileとかEntryみたいにRARアーカイブ扱えるAPIってないでしょうか
iie
OpenGLでフェードアウト処理を作っていますが、実機バージョンごとに フェードアウトの動作が違います。 考えられる原因を教えていただけないですか?
一部訂正>実機ごと実機のバージョンごと
1.6だと2.1以上の仕様が未実装のやつとかあるお
WVGA854でかいよWVGA854 ポートレイトがモニタに収まらないぞw WVGAに54足せばいいのになんで大きくするんだよw
Widgetから設定Activityを起動し、 Activityは起動元のWidgetIDを含んだ結果を返す事で設定を反映させる事ができるらしいですが、 WidgetからでなくActivityを起動し、そのアプリの全てのWidgetに設定を反映させたいのですがどうすれば良いでしょうか?
>>968 PreferenceActivity使ってみた?
設定を保存する専用のActivityの事ですね 通常のActivity(android.intent.action.MAINに設定している)でSharedPreferencesを使って設定を保存していますが、 PreferenceActivityのが良いのでしょうか?
設定画面が一瞬で作れる点では
いいというか簡単だし 別にSharedPreferencesでも Widgetに読み込むkeyが同じなら全部のWidgetも同じ設定に反映されるんじゃね
>>969 すいません、設定を反映させたいという言い方は間違いでした。
アクションを伝えたいという事です。
例えばActivity側でボタンを押すとWidget側の動作が作動又は停止するという。
フラグにしてonUpdateの中で設定(key)読み込んで制御すればいいんじゃね
サービスを停止すればいいだけでね
ウィジェットのonEnabledの中のデータをonUpdateで使いたい場合、 どうやって渡せばいいでしょうか?
>>969-975 ありがとうございます。
サービスの制御をActivity側で行い、
Widget側ではサービスが作動すると設定keyを読むという風にやってみます。
>>973 オレもそういうことしたいんだけど
設計がスマートじゃなくなるんだよね
まだチラ見程度しか試してないけど
自炊されたファイル形式はpdfになってるの? それとも複数画像が含まれるzipになってるの?
スーパークラスとonCreateやonUpdateの間に書かれたデータは どこまで保持されるのでしょうか?
スーパークラスとonCreateやonUpdateの間ってどこ?
982 :
980 :2011/04/01(金) 23:50:45.80
public class HelloAndroidWidgetProvider extends AppWidgetProvider { ここです\(^o^)/ @Override public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) { Log.v("HelloAndroidWidget", "onUpdate"); super.onUpdate(context, appWidgetManager, appWidgetIds); } }
wwwwwwwwwwwwwwwwwwwwwwwwww
間www
986 :
デフォルトの名無しさん :2011/04/02(土) 00:45:46.68
その間違えかた……すごく気持ちはわからんでもない……
java フィールド スコープ でぐぐれ
フィールドじゃなくメンバ変数だった スマン
989 :
980 :2011/04/02(土) 01:13:42.15
実際にウジェットで書いてみましたが onUpdateで継承されてました となるとonEnabledとの違いはなんなのかと思うんですが どうなんでしょう?
990 :
980 :2011/04/02(土) 01:33:50.88
もしかしてウィジェットでメンバー変数を使うとウィジェットが終了するまで メモリを使ってしまうというのでしょうか? でonEnabledであれば開放されると これであってますでしょうか?
ウィジェット作ったことないけどだいたいそんな感じだと思う サービスの場合、システムにキルされたりするけど
2ドルくらいで売りたいんですが 2ドルより1.99ドルのほうがいいですか?
ぬるぽ
がっ
$0.00くらいのがいいんじゃね?
ちんこ
スレたてできなかった 誰ヨロ
じゃあ、俺が!
いやいや、ここは俺が!
どうぞどうぞ
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。