Androidプログラミング初心者質問スレ Part7
1 :
デフォルトの名無しさん :
2011/04/02(土) 17:45:57.73
サンプル通りにViewHolderのインスタンス作ろうとしても そんなクラスはインポートできないと出る 改訂でなくなったの?
エスパー魔美
サンプル通りにViewHolderクラスも作れ InnerClassにあるだろ
>>6 見落としてました…
どうもありがとうございます。
Androidの質問かOpenGLの質問か分かりませんがここで失礼します。 ActivityのsetContentViewにGLSurfaceViewを作成して指定しています。 そのGLSurfaceViewのsetRendererにRendererをimplementsしているものを指定しています。 // メンバ private GLSurfaceView glsurfaceview; // ActivityのonCreate glsurfaceview = new GLSurfaceView(this); glsurfaceview.setRenderer(new GLRenderer(this)); setContentView(glsurfaceview); すると、この自前で用意したGLRendererクラス(implements Renderer)のonDrawFrameが定期的に呼ばれるので テクスチャや座標などを適当に設定して描画させることは出来ました。 しかし、ゲームで言う「キャラクターや敵の情報」というのをどこで保持し、位置などを更新するのかで詰まっています。 GLRendererクラスで管理できますがonDrawFrameで内部処理を行うのは何か違和感があります。 内部処理を別スレッドにしたとしてもonDrawFrameが勝手に呼ばれるのでメモリの不正アクセスを起こしかねないですし、 フラグを立てて描画しないようにすると数体の敵が同じスピードで動いてほしいのに描画すると変にカクつくことになります。 私は今までDirectXなどでゲーム等を作る場合、専用のスレッドを立ててから 「内部処理」→「描画処理」→「ループ待機」を繰り返していたので、 描画処理が単独で勝手に呼び出される状態でどのようにアプリケーションを作っていけばいいのか分かりません・・・
2時間毎にfor文5回繰り返すプログラムがあるウィジェットってバッテリー消費激しいですか?
全然
for文の内容によるだろ
↓のコードで別スレッドで画像先読みできてますか? 動くには動くけどエミュレータしかないから動作が早くなったのかわからないんです protected void onDraw(Canvas canvas){ if(image == null){ image = Zip.getBitmap(zipFileName, zipEntries[zipIndex]); image = resizeBitmap(image); } int drawX = (getWidth() - image.getWidth()) / 2; int drawY = (getHeight() - image.getHeight()) / 2; canvas.drawBitmap(image, drawX, drawY, null); thread = new Thread(); thread.start(); } public void run(){ if(zipIndex == 0){ nextImage = Zip.getBitmap(zipFileName, zipEntries[zipIndex + 1]); nextImage = resizeBitmap(nextImage); }else if(zipIndex == zipEntries.length){ backImage = Zip.getBitmap(zipFileName, zipEntries[zipIndex - 1]); backImage = resizeBitmap(backImage); }else{ nextImage = Zip.getBitmap(zipFileName, zipEntries[zipIndex + 1]); nextImage = resizeBitmap(nextImage); backImage = Zip.getBitmap(zipFileName, zipEntries[zipIndex - 1]); backImage = resizeBitmap(backImage); } }
13 :
デフォルトの名無しさん :2011/04/03(日) 00:35:11.27
質問というかお願いです 枠のある表を作りたいんですが、なにか参考にあるサイトとか教えてください。 TabelLayoutに枠を付けたような感じにしたいんです。
>>13 枠 layoutとかでググルトあったような
>>12 android.util.Log とか使えば簡単に調べられんだろ
さぼるな
おはようございます。質問させてください。 apktoolで解凍するとsmaliってソースっぽいのがでてきますがこれをjavaのソースに変換することはできないんでしょうか? よろしくお願いします。
端末の画面サイズ毎にアプリの画面サイズも変えたいです layoutでサクッとできないでしょうか
strings.xmlにintegerのデータを追加したいのですが、 TypeとFormatは両方にintegerを設定すればよいのでしょうか? 検索してみたのですが、キーワードが悪いのか見つかりませんでした。 お願いします。
プログラムの勉強の為にandroidのアプリでもつくろうかと思うのですが JavaとCならどっちで開発した方がいいですか?
何この忍法帖ブーム マ、アホすぎワロタ
Androidで勉強するつもりなら迷わずJava NDKはC使いがCじゃなきゃいやだぁ><って言うからしょーがなく用意したものだから アプリは全てCだけでつくれるわけじゃないから結局Javaを避けては通れない
>>18 R.〜は、リソースに割り当てられた物に対する物。
独自にIntegerを定義したいのなら、
final Int hoge = 1; とすればいい。
>>24 ありがとうございました。
Activity.javaとmail.xmlから同じ定数を使いたかったので、
strings.xmlを使うしかないかと思ったのですが、もう一度調べてみます。
26 :
デフォルトの名無しさん :2011/04/03(日) 16:49:25.82
visual studio 2008 C言語 を使って、数学の図形問題の図をかきたいんですが、できますか? ネットで調べてもいまいちわかりません。
さすがにこれは釣りだと思う
OpenWnnのソースをgitで取ってきたのは良いのですが Eclipseに取り込めません。 インポートというのを使えばいいと思うのですが インポート→一般→既存プロジェクトをワークスペースへ というので落としてきたOpenWnnのフォルダを指定しても 「インポートするプロジェクトが見つかりません」と言われてしまいます。
EGit使ってみた?
AGPSでぐぐれ
>>28 それはそのソースコードにeclipseプロジェクトファイルが含まれてないからだと思われる(普通は含めない)。
androidプロジェクトの新規作成ダイアログに既存のソースからプロジェクトを作成するオプションがあるはず。
ゲームのように2Dのグラフィカルなアプリを作る場合、 デバイスによって違う画面サイズや比率はどう吸収するのがベターなのでしょうか。 フルスクリーンで出来るに越したことはないですが、画面比率が違うと縦伸びや横伸びします。 もしくは画面が切れたり、描画を想定していない部分が表示されることになります。 画面比率を固定したまま表示を正しく行うには黒帯を挟めば出来ますが、 今までそういったアプリは見たことが無いのでどうしているのか気になりました。 (WVGA+で動かしていますが偶然見かけないだけかも知れません)
みんなはどうやってandroid勉強してるの
36 :
28 :2011/04/03(日) 21:37:18.82
>>32 そちらを使うと、「プロジェクト説明が無効です」というメッセージが出ます。
ビルド・ターゲットは適当に選んでいいのでしょうか?
ある程度汎用性があった方が良いと思いAndroid1.6を選びましたが、
他のものを選んでも同じメッセージが出ます。
>>36 プロジェクト自体は作れんの?
今やってみたけどプロジェクトは作れたよ。
1.6にするとlayout_width=“match_parent“の所でコンパイルエラーが出るけどね(このオプションは1.6では使えない)。
もしプロジェクトが作れないならeclipseのworkspaceフォルダ直下にcloneしてない?
>>33 参考になるか分からんが
・ある程度割りきる > この解像度はおkってする
・いくつかの解像度毎に処理・レイアウト等を分ける
・基本サイズを決めておいて、端末毎に動的にサイズ・解像度を
取得してから係数を割り出して掛け算する > 若干ずれる時も
っていう風にしてます。他に良い方法あるなら俺も知りたい。
ListViewを使って、リストを表示、削除をしたいのですが、
削除をするときにエラーがでてしまいます。
リストで表示する要素が二つある場合の削除の例が見つからず、
試行錯誤で試したのですがどうも上手く行きません…。
ソースの一部をコピーしたので、原因が分かる人がいたら教えて欲しいです…。
http://ideone.com/gPUkC
>>38 ありがとうございます。
特にメニュー周りはタッチイベントも絡んでくるので
画面いっぱいに表示するとコマンドが延びたり画面外まではみ出すこともあるような作りでした。
ある程度解像度によって処理を分けておき、
さらに余裕(余白)を持たせたレイアウトにすることで許容する形にすれば大丈夫そうですね。
>>39 SimpleAdapterはArrayAdapterを継承してないから、ArrayAdapterのメソッドは呼べない。
QVGAの画面でずっと作ってたんだけど、WVGAのlayoutフォルダ作って480*800のエミュ画面でテストしても アプリはQVGAのまま。なんでですか?
レイアウトについてお尋ねしたいのですが、
テキストボックスの横にボタンを配置したいので以下のように書きました。
このとき、BtnHorzInputは"ボタン"が表示される最小の横幅、EditHorzInputは画面に表示される最大の横幅かつ、ボタンを潰さない長さとしたいのですが
以下のコードだとテキストボックスのlayout_width="wrap_content"なのでテキストボックスの横幅が最小になります。
しかし、テキストボックスがlayout_width="fill_parent"だとボタンが潰れるほど横に広がってしまいます。
機種の事を考えて、dpなど数値指定をしないで実現したいのですが、どのように書けばよいのでしょうか。
<LinearLayout
xmlns:android="
http://schemas.android.com/apk/res/android "
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<EditText
android:id="@+id/EditHorzInput"
android:singleLine="true"
android:maxLength="30"
android:layout_width="wrap_content" ←ここ
android:layout_height="wrap_content"
android:textColor="#fff"
>
</EditText>
<Button
android:id="@+id/BtnHorzInput"
android:text="ボタン"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true">
</Button>
</LinearLayout>
つ layout_weight
layout_weight と ども
>>41 そうだったんですか。
ArrayAdapterを継承して独自クラスを作ればいいって事でしょうか?
ListViewは自前で作っちゃったほうが早いよ Adapterも委譲しちゃってさ
>>46 一番手間がかからないのは
dataList.remove(data);
adapter.notifyDataSetChanged();
開発初期の試行錯誤段階では有効。
でも最終的には独自adapterを作ってしまったほうがいいことが多い。
AppWidgetでスクロールできるViewなどは使えないと思っていたんですが、 SiMi Folder Widgetの不思議なViewはいったいどういう仕組みなのでしょうか ときどき見かけるスクロールできるウィジェットは ホームアプリと連携しているものだと思っていましたが 実際のところどうなのでしょう よろしくお願いいたします
ArrayAdapterを継承させるという方法で一応は削除が出来るようになりました。 ありがとうございました。
Flash Airでライブ壁紙を作成する方法をお願いしたいです…
メモリの使用量や空き容量を毎フレーム取得したいのですが出来るのでしょうか? Javaに慣れず、Cだとメモリーリークするような処理がサンプルに普通に書かれていて ガベージコレクションが本当に機能しているのか疑心暗鬼になってますorz
54 :
sage :2011/04/04(月) 22:31:25.72
surfaceViewを使ったゲームなどで、電源ボタンなどでスリープになった場合 どのようにして描画や状態の復元をするのでしょうか? onDestroyされてしまうのですが、マーケットに公開されている アプリの中には電源ボタンスリープからでも復帰するものがあって どのように実装すればよいのかわかりません
>>53 gcが走った後に未使用領域が開放されるわけだから毎フレームメモリ監視しても意味無いと思うが
それにgcが機能してようがしてまいが、Cのようにメモリ管理する方法が用意されてないから、気にした所で無駄
そういうもんだと割り切れ
新しいAdMobのSDKで組み込んだら広告にスクロールバーが出るんだけど 同じ現象の人います?
>>54 電源オンでサーフィス再生成されるから続きから描画すればいい
60 :
28 :2011/04/04(月) 23:29:09.68
>>37 ご指摘のとおり、workspace直下でした…
別のディレクトリを掘ったらプロジェクトが作れました。
ありがとうございました。
61 :
デフォルトの名無しさん :2011/04/04(月) 23:56:54.58
OpenGL/ES2.0とベンダ拡張とか使えば3DSと同じ表現できるんじゃね? とか思ったがあっちはテセレーションやプロシージャルテクスチャまでハードウェアだった・・・。 同じ組み込みでプログラマブルシェーダでやったら無理だな。
android:layout_heightをプログラムで書くとどう書くのでしょうか?
>>62 マージンとかも
LinearLayout.LayoutParams layoutParams =
new LinearLayout.LayoutParams(100, 100);
layoutParams.setMargins(10, 10, 10, 10);
button.setLayoutParams(layoutParams);
64 :
62 :2011/04/05(火) 07:28:46.44
ライブ壁紙で画面を回転させないようにするにはどのようにすればいいでしょうか?
>>57 確かに出るな
サンプルのまんまのコードでも出る
仕様ならしようがないな
ていうかAdMob使ってる人少ないのかな
ブログ検索しても全然話題になってない
新しいSDKへ移行していないだけでは? おれも落ち着くまでは様子見している
いや新しいSDKだよ もう古いのはDLできないし
すまん 「(みんなが)新しいSDKへ移行していないだけでは? 」 という意味だ
あるアプリAからアプリBを明示的intentで呼ぶ場合、AとBを両方インストールしていれば問題ないのですが、 BはほぼAから呼び出されるだけなので出来ればインストールしたくりません(インストールするとアプリ一覧に出たりして邪魔なので) BのapkファイルをSDカードに配置してsetClassNameの引数でapkのパスを指定してみたりしましたがエラーが出てうまく動かせませんでした。 上記のようなSDカードに配置してインテントを飛ばすという方法は可能でしょうか。また、可能であるならどのように指定すればよいのでしょうか。
すいません書き忘れましたA、Bともに自作のアプリでソースのsetClassNameを変えたのはAの方です。
アプリ一覧に表示されないようにすればいいじゃん
両方自作ならいくらでもやりようあるだろ
むしろaとbをくっ付けちゃえよ
どっちでもいいんだよ できねーならやんな
c+ってなんやねん
Cよりは良いけどC++よりうんこと言えば あれだろ
javaですね!?
objective-C!
>>72 勿論、方法がないなら検討すべき手段ではありますが、できればSDカードから起動したいのです。
>>73 やりようがあるのならどのようにすればいいのでしょうか。
>>74 すみませんが、あくまで別のアプリを呼び出す方法を聞いています。
なぜ別アプリにする必要があるのか説明してよ。 最初の質問からはまるで読みとれない。 同じパッケージに収容せよというのが当然の反応だろ。
それならアプリAからアプリBをその都度インスコしたり抜いたりしたら? それとも何か悪いことでもたくらんでんのか?
>>82 >>83 がいってるように1つのアプリ(パッケージ)の中に複数 Activity 作ってそれを呼べばいいんじゃないの?
何をやりたいか具体的に書かないと答えようが無いな
1つにすると子供が出来て余計に増えると勝手に脳内補間
基本、メンテナンスのためですね。
Aに機能を追加して更新すると小さな機能でもA自体のテストをしなければならないので。
A→BができればテストはBの部分だけで済みますし、呼ぶ出す先を増やしてA→CとかA→DでもAに機能を含めるより楽ですし、ユーザーにB、C、Dをダウンロードするか選択させることもできるかと。
逆にA以外のA’だのαだの自作でないアプリからでも(この場合は暗黙的になりますが)テストが済んでいるBを使えば手間は減りますよね(0にはなりませんが)。
というかこれらは何故したいのかであって、質問内容と関係なくないですかね。
何をやりたいかは
>>70 の4行目そのままなのですが何か足りないでしょうか。
クラス作ってインポートすればいいだろとかは勘弁してくださいね。
質問内容とずれていますので。
ならプラグイン式にしなよ
.。o(まーた変な人きたなぁ…)
Bがランチャーに表示されないように IntentFilter外すだけだろ
ttps://sites.google.com/a/techdoctranslator.com/jp/resources/articles/articles-index/glsurfaceview この勝手に翻訳の下側のソースにて
ClearGLSurfaceViewクラスのonTouchEventのgetWidth()とgetHeight()の値を見てみたのですが、
getWidth:320 getHeight:519が返ってきました。
W:480 H:854(ワイドVGA+)なのでそのままの値が返ってくるものかと思っていたのですが、
getWidth()とgetHeight()の値はどういったものなのでしょうか。
ちなみに
Display disp =((WindowManager)context.getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay();
disp.getWidth() ・・・・320
disp.getHeight() ・・・・569
と、こちらも画面サイズと違う?しかも値も上記と違うので何がなにやら・・・
>>88 >Aに機能を追加して更新すると小さな機能でもA自体のテストをしなければならないので。
>A→BができればテストはBの部分だけで済みますし
A に機能追加して A 自体のテストをする内容と
A→Bができて Bの部分でするテストの内容は同じだと思うんだけど。
アップデートした時に手を入れてない部分はOKとみなして検証しないことが多いのは自分だけ?
97 :
92 :2011/04/05(火) 23:04:16.84
>>94 ,96
ありがとうございます。
なんとなく分かりましたがtrueにしてもfalseにしても何も変わらず。
GL10のglTranslatefの移動量が1.0で画面端と思って
onTouchEventでevent.getX() / getWidth()などの値を渡して描画すると
画面の8割ぐらいしか移動せず…幅は385ぐらいな感じでした。(タッチ位置はx:320)
タッチ位置に描画するだけで様々な座標やサイズが出てきてよく分からんとですorz
>>97 supports-screens largeCreens=trueとかは?
エミュならdpi=160 or 240で試す。
射影行列ミスってターorz
>>98 テキストボックスなどの表示が変わってました。
理屈は分かっても様々な実機で試してどう見えるかを試さないと勘違いしてそうで怖いですね。
デフォルトは自動的にリサイズしてくれているということで
知らなければ問題ないレベルなのかも知れませんが。
AdMobの新SDKでスクロールバーでるやつわかったわ 文字数が少ない数で折り返してるから3行になってる バグだなこれ 次のバージョンまで待ったほうがいいや
101 :
デフォルトの名無しさん :2011/04/06(水) 20:04:13.03
アンドロイドのアプリが強制終了するときに、 「アプリケーション アプリ名(プロセス名)が予期せず中止しました。やり直してください」 というダイアログが出てきますが、このアプリ名とプロセス名を表示しないように することは出来るのでしょうか?
できますん
103 :
デフォルトの名無しさん :2011/04/06(水) 21:51:04.42
Youtubeの動画をYoutubeアプリを使用せず、VideoViewなどで再生したい
と考えています.
が、VideoViewにurlを投げて再生しようとすると
「この動画は再生できません。」とでてしまいます.
VideoView videoView=new VideoView(this);
videoView.requestFocus();
videoView.setMediaController(new MediaController(this));
url = "
http://www.youtube.com/watch? 〜";
try {
videoView.setVideoURI(Uri.parse(url));
} catch (Exception e) {
e.printStackTrace();
}
一度動画をストレージに入れてからそいつを再生するしかないのでしょうか?
せめてflvで指定してあげようよ
>>105 さっそくありがとうございます.
flvを指定ということは、urlを投げるというよりは
一度flv形式で保存して、そいつを読み込むということでしょうか?
記述していませんでしたが、アプリでやりたいことは
HttpClientでキーワード検索のリクエストを投げて
そのレスポンスをパースして動画のurlを取得し、
そのurlを用いて動画を再生したいと思っています.
>>107 エミュとかproxy経由ならありうる。ソースは俺。
実機ならおkだったので原因は追求してない。
>>108 ありがとうございます.
実機だと再生できたのですね。
私は実機使ってやってるんですが、ダメでした。。
Intentでブラウザに投げたりして再生することはできたのですが。。
再生するたびにSDカードなどにアクセスするのはかなり面倒ですし、
良くないですね。ん〜、悩ましいです。
110 :
デフォルトの名無しさん :2011/04/07(木) 01:58:00.22
TabActivityでTabを作って、各画面でサーバからデータを読み込んでいます。 タブが切り替わったときに各画面をリロードしたいのですが、前回表示されたままになっています。 OnTabChangeListenerのonTabChangedメソッドを各画面を構成しているActivityで呼び出したいのですが、それが難しそうです。 各画面をリロードさせる方法って内のでしょうか? できれば、メニューを作成せずにタブが切り替わったときにリロードしたいのです。
切り替えのタイミングでアクティブになったタブの onResume() が呼ばれるか ら、そこにリロード処理を書くんじゃ駄目なの?
アプリの起動に8秒ぐらいかかるんだけど 実機でCPUの早い奴なら短くなってるよね
>>112 8秒位待ちを入れたなら、実機でも同じでしょw
114 :
デフォルトの名無しさん :2011/04/07(木) 09:58:03.87
>>111 タブの切り替え時に、onResume()のイベントが取れました!
これで何とかなりそうです。
ありがとうございます!
TabActivityにて、今まで自分が作成したプログラムの切り替えを行いたいと思っています。 どこか参考になるホームページはありますか?
コンテキストメニューを動作させるのに次のようなソースを書きました btn.setLongClickable(true); webView.setLongClickable(true); registerForContextMenu(btn); registerForContextMenu(webView); webView.addView(btn); btnはボタンではwebViewはウェブビューです。 それでonCreateContextMenuをも次のように書き(何もしてないようなもんですが) public void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) { super.onCreateContextMenu(menu, v, menuInfo); if(v == webView){ Log.e("test", "ウェヴビュー長押し"); }else if(v == btn){ Log.e("test", "ボタン長押し"); } } 実行するとbtnの長押しするとonCreateContextMenuが動作しますが、webViewの方は長押ししても反応してくれません。 また、btnを長押ししたときの動作はonCreateContextMenuが二度呼ばれ、一度目がbtn、二度目がwebViewが押されています。 試しに、registerForContextMenu(btn)を削除すると やはりボタンしか反応しませんが、onCreateContextMenuではwebViewが押されたことになっています。 逆にregisterForContextMenu(webView)を削除すると 当然、ボタンしか反応しせず、btnが反応しています。 btn、webViewともにそのウィジェットが押された時の処理をonCreateContextMenuで拾ってほしいのですがどのように書けばいいのでしょうか。
GLで描画していると2〜3秒ごとに何かを待っているのかカクつきます。 センサー類は何も使っていないのですが、起動時にOFFするなど何か必要なのでしょうか?
gcじゃねえの?
あれ、GCってこんなに重いものなのですか・・ もしかして関数内で計算のために使用しているローカル変数も使用するとGCの負荷が増すのでしょうか。
試しにNDKで作ってみたら?
NDKですか、調べてみます。
nacl
>>120 GC は 2.3 だかで改善されたりしてるはず。
エミュで違いが分かるか微妙だけど比較してみるとか。
実機でやれればベストか。
iアプリで十字キーでやっていたような操作って一般的にはどうしたらいいかな メニューから方向を選んだり画面上にボタンを設けたりしてるんだけど 他に何かいいUIない?
アプリの内容にもよるけど、選択肢を選ぶ場合は傾き(加速度)センサーを利用して振ったら選択位置がずれるというのも1つだし、 画面スクロールならフリックさせるのが多いかな。
ExpandableListViewを入れ子にしてTreeの表示をしたいと思ってます。 BaseExpandableListAdapterを使って、ChildViewにExpandableListViewの継承クラスを セットすることはできました。 ルートのExpandableVistView ├親グループ1 │└子のノード │ └子のExpandableVistView └親グループ2 という感じですが、子のExpandableVistViewを開くと子のノードのスクロールバーが出てしまいます。 ルートにもスクロールバーが出ていると複数のバーが出ます。 子のExpandableVistViewを開いた時に子のノードのheightも変わってほしいんですが、 子のノード自体のViewを掴むにはどこで、またどのタイミングで行えばいいでしょうか?
FrameLayoutにImageViewをaddView後 ImageView.layoutでImageViewの位置を変更する という単純なプログラムを作成していますが、 その後Intentで画面遷移後の「戻る」で FrameLayoutに追加したImageViewがaddView時の座標を保持し layoutで変更した値が無効になっていますが。 画面遷移後にも座標を保持させるにはどうすべきでしょうか?
座標を保存するしかないんじゃね
onSizeChangedで渡された変更後の幅が1073742624(=0x40000320)だったんですけど 0x400000000って何かのフラグですか? 実際の幅は800(=0x00000320)なんですけど
133 :
128 :2011/04/09(土) 08:23:11.12
>>131 ありがとうございます。
不可能ではないみたいなんで頑張ってみます。
すみません 電話帳で一人のコンタクトを長押ししたときにでるメニューに 「電話帳を送信」がありますよね。 そのメニューのなかに作成したアプリを表示したいのですが、 なんて検索していいか分からず、困ってしまったて質問させていただきました
先日NDKを勧めて頂いたのでとりあえずビルドまで持ってくることが出来ました。 開発環境はeclipseなのですが、jniフォルダのソース更新をデバッグに反映させるには 毎回cygwinでndk-buildを叩かないといけないのでしょうか。 NDKを利用する人はeclipseは単に実行するためのツールで、 ほとんどのソースはC言語で書かれているから大して気にならないとか? ソースが膨大になるとエラーがでてもチェックに時間がかかりそうで心配です。
136 :
デフォルトの名無しさん :2011/04/10(日) 00:48:32.64
赤外線やbluetoothをつかってデータを入出力するアプリを作りたいのですが、 すでに関連したプログラムは転がっていませんでしょうか?
>>136 BT は SDK に サンプル入ってたような
138 :
デフォルトの名無しさん :2011/04/10(日) 07:33:02.25
>>137 ありました!
ありがとうございます!なんで探さなかったんだろう、自分。
助かりました。
139 :
デフォルトの名無しさん :2011/04/10(日) 17:55:51.47
Bluetoothをエミュレーターで動かす事は出来ませんか?
現在戻るボタンを押したら加速度センサーのリスナー設定を初期化するようにしているのですが、 これがなければ一見アプリは立ち上がっていないように見えるのに加速度センサーの処理が実行されています。 戻るボタンではアプリは終了したことにはならないのでしょうか。
ああ、ごめん。明示的に終わらせないといけないものもある。 handler系とか、mediaplayerとか、serviceとか。 センサーもそれ系だったら、そういうこと。
143 :
デフォルトの名無しさん :2011/04/10(日) 18:54:36.23
終了しないと糞アプリ・・・
すみません、教えてください。 SDカードに保存するようにしたいのですが、 String status = Environment.getExternalStorageState(); としたときに、「Environment.MEDIA_MOUNTED」が返されません。 もちろんSDカードは挿してあります。実機でもエミュレータでもダメでした。 何か心当たりがありましたらお願いします。
>>144 maniにEXTERNAL_STRAGEなんたらは書いた?
あと、戻りってstringだったっけか?
>>145 レスありがとうございます。
先にSDカード使うよって宣言しておく、的なことでしょうか…?
今調べて試そうとしているところです。戻り値の型は大丈夫そうでした。
ちなみに、先ほどの状態で、
File fileDir= new File(Environment.getExternalStorageDirectory());
String strDirPath=fileDir.getPath();
には、正常な値(/mmt/sdcard)が返ってきました。
>>144 >>146 です。
もう少しちゃんと確認してみたら、
String status =Environment.getExternalStorageState();
とした時の「status」が「mounted」になってました。
ネットで調べた結果、「Environment.MEDIA_MOUNTED」が返ってくると思っていたのですが…。
少し心配ですが、そういうものだと思って開発進めようと思います。
ありがとうございました。
>>147 ちゃんと Environment.MEDIA_MOUNTED が返ってるじゃん
>>147 status = "mounted";
status.equals(Environment.MEDIA_MOUNTED);
=>true
>>148 >>149 理解しました。お恥ずかしいです…;
if (Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState()))
としたら上手くいきました。
ついでにuses-permission〜の記述もしていませんでした。
何とかなりそうです。ありがとうございました。
Android開発用のエクリプスなどの初期設定を解説してる最新版のものが記載されているサイトはありますか? パスが変わる前の古い内容のサイトばかりで、 記載されている通りにやっても毎回 Android SDKおよびAVDマネージャーが起動しません。
c:\android-sdk-windows\tools; じゃなくて c:\android-sdk-windows\platform-tools;
155 :
デフォルトの名無しさん :2011/04/11(月) 11:40:38.88
2.0以上の端末を対象としたアプリの開発をするのですが、 開発用の端末でお勧めありますか? 3G契約はしないつもりです。
>>155 ht03aの中古とかmediasとかが安くていいんじゃない
男は黙ってIS01
メガネケースは1.6じゃないの?
ht03aも公式じゃ1.6までだろ
160 :
155 :2011/04/11(月) 16:18:16.27
2.0以降だとmediasですか。 買った参考書にDevPhoneと言うのが書いてあるんですが これは選択肢に入りませんかね? 英語苦手ですけど。
すみません、GLSurfaceで実験しているのですが、描画解像度って、こちらで指定できるのでしょうか? 幅を決め打ちして作ったら、モニタ解像度が大きいものでは隙間がいっぱい・・。 PCみたく、フルスクリーン解像度を固定して、どの機種でも画面いっぱいに表示させたいのですが・・。
glOrtho なり glScale なりで上手い具合に拡大縮小すればいいんじゃない
>>160 ht03aがほぼ DevPhoneと同じもの
カスタムromで1.5から3.0まで好きなの入れられる
>>161 機種の解像度を取得してそれを反映させればいいじゃない
DevPhoneは新品でしか手に入らないしかなり高いんでオススメしない HT-03Aは中古で安価に入手可能で非公式ROMを使えば非常に幅広いバージョンを試せるので 3Dゲームを作る場合以外ならかなり有力な選択肢 3Dゲームまで想定するならNexus Sか中古のDesireあたりが無難かと
ndkを使用しているのですが makeすると異なるフォルダのヘッダーファイルをincludeしているC++ファイルがヘッダー見つからないとエラーを吐いてしまいます。 includeの宣言は""を使用しているのですが、何か他のパスの指定など必要なのでしょうか?
SDKかNDKのトップフォルダからの相対パスで探そうとしてたらメイクファイルの1行目を疑えってばっちゃが言ってた
エミュレータ、画面の回転って縦→横しか正常に機能しないなんてことはないよね?
>>168 他に何があるんだ?
ってか、他に何が欲しいんだ?
>>168 知らないけど明示的に指定しないとキーボード付きだよ
画面の回転に合わせて画像とかのレイアウトを変更したいと思ったんだけど 横画面で起動したり、縦画面でアプリ起動してから一度でも横にすると 縦にしてもタイトルバーやステータスバー含めて横画面のままなんでどういうことなのかな、と マニフェストでconfigChanges="keyboardHidden|orientation"と指定して onConfigurationChangedをoverrideしてる
2.3のエミュレーターバグってた記憶がある どう対応したかは覚えてない
>>172 マジですか
2.3.1だったけど、取り合えず別のバージョンでやってみるか
ウィジェット(AppWidget)に対して動的にフォーカス当てる事って出来ますか? リモートビューでは出来ませんよね?
>>173 eclipse3.6.2だけど、SDKのフォルダのパスそのままで使えてる
例えばSDKのフォルダのパスがC:\android-sdk-windowsだったらC:\android-sdk-windows、で
177 :
デフォルトの名無しさん :2011/04/11(月) 23:07:35.76
Android SDK および ADVマネージャーをクリックすると、 1回目は "location of the android SDK has not been set up in the preference" いうメッセージボックスが出ます。 2回目以降は何も出てこず、Eclipseを再起動すると再びエラーメッセージボックスが出ます。 sdkのインストール場所: C:\android-sdk-windows ANDROID_HOME: C:\android-sdk-windows Path: %ANDROID_HOME%\tools;%ANDROID_HOME%\platform-tools; ウィンドウ->設定->Android SDKロケーション: C:\android-sdk-windows どこか設定が間違っているでしょうか? 環境はWindowsXP 32bitです。
179 :
デフォルトの名無しさん :2011/04/12(火) 03:11:02.60
class MyLinkMovementMethod extends LinkMovementMethod { @Override public boolean onKeyDown(TextView widget, Spannable buffer, int keyCode, KeyEvent event) { //ここに新しい処理。 return true; } } この時にクリックされた文字列を取得する方法がわかりません。 bufferはクリックされたTextView全体の文字列が入っているようです。 どうか教えてください。お願いします。
それがクリックされた文字列では
C#2010のExpress版をダウンロードして、プログラミングを1から勉強したほうが良さそうなレベルだな
182 :
166 :2011/04/12(火) 10:38:49.48
>167 1行目はLOCAL_PATH := $(call my-dir)です。 どうにもAndroid.mkに問題がありそうなので色々調べたのですが、 あまりヘッダの指定方法についての情報がなくて困っています。(全く書かれていなかったり明示的に指定する必要はないと書かれてたり) どうにもソースとヘッダーを同じフォルダに置くとエラーが出ないので、 ソースが自分と同じ階層しか参照してくれていないようなのです。 サンプルの module-exportsのzoo.cで#include "bar.h"してるので参考になるかと思い module-exportsのAndroid.mkを見て LOCAL_SHARED_LIBRARIESで指定したのですが、これも同じエラーになります。 階層はプロジェクトのjniの下にAndroid.mkとヘッダフォルダとソースフォルダがあり、 そのソースフォルダの下のソースファイルからヘッダフォルダのヘッダファイルをincludeしたい、というだけなのですが どうにも解決できなくて困り果てています。 何か他に悪そうなところはないでしょうか。
LOCAL_C_INCLUDE は?
184 :
166 :2011/04/12(火) 10:51:19.69
>>184 Android.mk等の中身と各フォルダ構成をさらした方が
明確な回答を得られるかもよ。
>>162 、
>>164 亀レスすみません。お知恵いただきありがとうございます。試してみますー。
とはいえ、なぜどの機種もモニタ解像度も比率もバラバラなんだか・・
sqliteについて教えてください。 SQLiteDatabaseのrawQueryで"UNION ALL"を含むSelect文を実行しているのですが、 思ったとおりの結果になりません。 select * from hoge union all select * from hoge; みたいにすると、重複したレコードが出力されると思うのですが、 初めのselect文の結果しか帰ってきません。エラー等も表示されません。 ひょっとしてAndroidのsqliteはUNIONを使えないんでしょうか。
188 :
デフォルトの名無しさん :2011/04/12(火) 17:48:30.06
>>180 コピペしたときに前置きを消してしまったようです。すみません。
TextViewの中にHTML形式のTextを入れました。
そのなかのリンクをクリックしたときの処理をOverrideしようと思っています。
で、LinkMovementMethodのOntouchEventとOnKeyDowの引数からクリックされた部分の文字列かURLを取得したいです
よろしくお願いします。
189 :
187 :2011/04/12(火) 17:57:52.23
ちょっと勘違いしていたみたいで、UNION ALLは正常に実行できていたようです。すみません。
いいってことよ
>>178 疑似location で調べてみたのですが、GPS関連の話ばかりで
Android SDK および ADVマネージャー が起動しない話とは関係ないようですが、
他に何か意味があるのでしょうか?
GalaxyのROMマネージャでレベル2でメモリーの消去を行うと 通知バーのアイコンが消えてしまうときがあります。 なにかよい方法はないでしょうか?
誘導されてきました。 ウィジェット内の画像サイズをうまく統一的に扱う方法はないでしょうか? ウィジェット作ってて、 LinerViewの中にImageViewとTextViewが横に並んだレイアウト考えます。 ImageViewが高さ画面一杯になるように拡大縮小してほしいのですが ImageViewにlayout_heightやMinheightをdipで指定しても無視されるし、 heightをfill_parentにしても画像サイズそのままで中央寄せされるだけ、 backgroundとして画像指定すれば高さ方向は適宜拡大されるっぽいのですが 横幅そのままで拡大されてしまって、困ってます。
自己解決したときは、どうやったら思った通りの成果を得られたかを書いて行ってね。
195 :
デフォルトの名無しさん :2011/04/13(水) 00:50:52.44
以前104でyoutubeの埋め込み再生を質問したものです. あれから調べたところ try { videoView.setVideoURI(Uri.parse(url)); } catch (Exception e) { e.printStackTrace(); } にyoutubeのサイトURLではなく 実際に動画がある場所(rtsp://〜***.3gp)などを指定することで再生できました。 ただ、問題があり再生できるものとできないものがあります. ソースは全く同じですが、 エミュレータだと再生できません(再生できませんとダイアログがでる) これはエミュレータなので性能的になんとなくわかりますが、 実機でもできるやつとできないやつがありました。 xperiaでは再生できたとけど、nexus oneでは画面真っ暗のまま エラーも吐き出さず、ずっと何も起きません。 両方ともandroid2.1以上です. 実機での違いはしょうがないものなのでしょうか? どちらの実機でも動くようにしたいです。
プログラム関連ではないのでスレ違いかもしれませんが、
該当しそうなスレが見つからなかったので質問させてください。
スクリーンショットを撮影するために、
以下のツールを使おうと思っているのですが
インストールはしたものの使い方がわかりません。
Android Screenshots and Screen Capture
http://www.moongift.jp/r/2011/02/20110209-3/ まずソフトを開いたときに、何か指定する必要があるようなのですが、
何を選択すればよいのでしょうか。
もしご存じのかたがいましたらよろしくお願いいたします。
なおJDKとSDKはインストールしております。
>>19 nexus oneはそれ以外にも不具合?あるから
あんまり気にしなくておkだと思う。ソースは俺...orz
誤爆...orz
Androidに特化したしつもんではないが教えてください。 public class Z { private byte[] aa; public void setaa(byte[] a){aa=a;} public byte[] getaa(){return aa;} } 呼び出し側で Z.setaa(null); int len=Z.getaa().length; とすると、len には値が入る? それとも例外が飛んで来る?
> Z.setaa(null); この呼び出しに失敗するんじゃね?w
>>195 動的にボタンを配置したいというなら
Button btn = new Button(this);
btn.setText("BUTTON");
LinearLayout layout = new LinearLayout(this);
layout.addView(btn);
みたいな感じだが。
「初めてのAndroid」で数独作っているから参考にしてみたら
>>202 > > Z.setaa(null);
> この呼び出しに失敗するんじゃね?w
じゃあさ、呼び出し側を以下の様に変更してもそこで失敗するのかな?
byte [ ] abc = null;
Z.setaa(abc);
やってみればすぐ分かるだろw それともPC持ってなくて脳内プログラミングとかか?
机上デバッグ(キリッ)
2chデバッグじゃねwww
211 :
sage :2011/04/13(水) 15:44:41.54
>>203 ありがとうございます。
いま初めてのandroidで数独やってて本当はダイアログで押せる数字あでてくるんですが
どうもやりづらいので改良中ですw
なるほどレイアウトつくってaddViewすればいいんですね!
位置指定とかちょっと頑張ってみます!
ありがとうございます!
>>211 そうか、本を読んだ上での改良なのね
がんばって完成してくれ!
ネット上だとndkの情報がverとかばらつきがあって困るのですが ndkについて詳しく解説してある書籍はないでしょうか。
NDKでリソースの画像を読み込むにはどうするのが一般的?なのでしょうか。 Javaの場合、例えばこのように記載しています。 InputStream is = context.getResources().openRawResource( R.drawable.texture ); Javaで読み込んでカラー情報を取得し、NDKで1ピクセルずつ格納していくというのも考えましたが NDKを使用しているのにJavaで読む込む必要があるということが「あれ?」と思ってしまって・・。
皆さんありがとう。 外出中に後輩から質問されて、確信が持てなくて…机上ですら無かったです。 結論としては、例外(Null Pointer Exeption)ですね。 どうもありがとうございました。
>>215 違う、コンパイルエラー
staticでないメソッドは直接呼べない
>>214 NDK にはリッチな API なんてなんもないから、必要なら Java の API を呼ばざるをえない
既存の C のライブラリを Java から利用するためのものでメインは Java で書くものという想定だし
1ピクセルずつはさすがにつらいだろうから全部読み込んで byte[] で一気に渡せばいいんじゃない
>>217 ありがとうございます。
JavaからNDKに開発環境が移るとすごく不便に感じますが、
逆にJavaが便利すぎるんですね…処理速度やGCを考慮した結果なのでNDKの不便さはやむを得ないのでしょうが。
常駐系のデータであれば問題ないですが、途中で読み直すものだとごちゃごちゃしそう('A`)
初回起動時にリソースをファイルに吐きだして、それをfopenとかで普通に読むという手もなきにしもあらず
アプリケーションの下に方にファイルコピーすることも書かれていましたが、 画像や音楽がリソースからコピー=データが丸見えどころかデータそのものが置かれるということですよね。 終了時に削除すれば言いだけの話かもしれませんがこれはこれで気持ち悪いです。
MediaStore.Audioから音楽ファイルの情報とるところなんですが、 メタの文字コードが違うみたいで、文字化けしたものが返ってきてしまいます. 取得後にエンコードしましたがうまくいきませんでした. String str = new String(getByte("**"), "encode")みたいな形で。 ふと思ったのが、 音楽ファイルからMediaStoreに登録される時点で全てUTF-8で登録されて いて文字化けした形で保存されているってことはありますか? 音楽ファイルを編集することは考えないで コード内で文字化けを解消する方法はあるのでしょうか。
俺が試したかぎりでは,id3タグがShiftJISで書いてあってもUTF-8で書いてあっても 特に文字化けはしないようだったが それより,id3タグがないmp3ファイルだった場合にMediaScannerは何をしているのか知りたいな
ローカルに置かれた独自フォーマットのテキストファイルをstring型にしてループで解析したいのですがどのような方法がいいでしょうか? またその際のファイルの置き場所はassetsで問題ないでしょうか?
>>223 id3タグ自体、色々バージョンがあるみたいだよ(wiki参照)。
そもそも使われているバージョンは、utf-8に対応してるid3タグ情報なの?
>>225 > ローカルに置かれた独自フォーマットのテキストファイルをstring型にしてループで解析したいのですがどのような方法がいいでしょうか?
独自フォーマットなら、あんたが一番解ってる事になるな。
ってか、他の誰にも解らんだろ。
> またその際のファイルの置き場所はassetsで問題ないでしょうか?
問題無いか否かもやはりあんたしか解らん事だよな。
>>225 お好きなようにどうぞ
SDじゃなくassetsに置くんだったらいっそ.javaに組み込んだら?
>>224 調査ありがとうございます。
例えば
ラルク〜アン〜シエル
の〜が、左が山なのか谷になってるかで文字化けしてしまいます。
>>226 バージョンは把握しています。
ただ、今回は一度android に取り込まれたメタをmediastore から
取っているのでmediascaner がうまく
やってくれてるのかなーとか考えてます。
もしやってくれてないのなら、直接音楽ファイルを
パースするしかないのかなぁ
231 :
225 :2011/04/14(木) 12:31:13.28
すみません。 データとして取得する方法がわからないです。 fileinputstream(file:///android_asset/hoge.txt)ではエラーになりました 書き方がややこしいですが、よろしくお願いします
>>231 > fileinputstream(file:///android_asset/hoge.txt)ではエラーになりました
エラー内容見りゃ解るだろうに。。
fileinputstream(new File(パス));
233 :
225 :2011/04/14(木) 13:25:27.89
>>232 ためして見たのですが、やはりエラーになります
>>233 Androidがどうこう以前にJava入門の本でも読んだほうがよくね?
いや勿論ndkは使ってますけどbuildの下にそんなのないんですよ そこで検索かけても出てこないし、buildの下のtoolの下に同じ拡張子のファイルがいくつかあるんで ○○setupとか似た名前のも探したんですが、それもないんです。
それは NDK が出る前の記事じゃないのか? envsetup.sh は Android のビルドツリーにあるファイルだけど NDK では不要
うーん、見やすく纏めてあるところだったのですが2年前だともう役に立たないほど古いんですね。 ありがとうございます。
だからNDKを使えと言ったのに。
もひとつ教えてください。 Cファイルからwindowsapiをincludeして使う場合はどうすればいいのでしょうか。 自分で作ったヘッダなら同じ階層にでも置いて"hogehoge.h"で済みますが、 <windows.h>や<stdio.h>と書いてもそんなものはない、とエラーになりますし、同じ階層に置くのは現実的ではないと思います。 Visual StudioならSDKへのパスを通す話だと思うのですが、検索してもこの変の情報が出てこず、どうしても解決できません。
Android は Linux なので Windows API はありません <stdio.h> はあるぞ
ごめんなさい<stdio.h>、<string.h>は使えますね。適当なこと書いて申し訳ないです。 Windows APIが無いということはndkを使用してwindows.hを使ったCのソースを使いたい場合、 自分で使いたい機能と同一のものを作るしかないということでしょうか?
244 :
デフォルトの名無しさん :2011/04/14(木) 20:13:27.41
Android SDK and AVD Manager で、SDK Platform等をインストールするとき、どうしても途中でダウンロードが止まってしまいます。 止まると言っても、ダウンロードのバーがそれ以上進まなくなるだけで、何かダイアログボックスが出るわけでもありません。 SDKやADTについての設定は無事に済んだ後で、この問題が発生します。 前回に試みたときは、他のダウンロードの最中に、同じく先へ進まなくなりました。 そして今回は、Done.1 package installed から、先へ進みませんでした。 更に長い時間、放置しておけばどうかわかりませんが、午後ずっとやっててもここまでしか進まなかったので、これ以上は続けられませんでした。 その状態の画像をUPしました。他の場所ではHello Worldまで行けたのですが、今になって上記の問題が浮上してしまいました。 現時点でもAndroidプロジェクトは作れますが、 Android Applicationでの実行(HelloWorld)ができません。 Android環境構築まで済ませたEclipseが売っていたら、助かるのですが・・・。 画像です。 ttp://www.dotup.org/uploda/www.dotup.org1525759.gif http://www.dotup.org/uploda/www.dotup.org1525765.gif ttp://www.dotup.org/uploda/www.dotup.org1525771.gif
>>244 Installed packages の画面も見せるべき
247 :
デフォルトの名無しさん :2011/04/14(木) 20:55:49.90
javaを最近一通り習得したんだがそれってAndroidプログラミングに活かせるか?
プログラミングよりもアプリのアイデアだな
>>244 一度に全部落とそうとせす一つずつ落としていってもダメ?
>>243 WindowsAPIが使いたいならWindowsMobile使え
アレなら結構WinAPIあるぞ
>>247 活かせる。俺も同じようなもんだから。ただやっぱりアイデアが無いとダメ。
>>245 そいつは辛いっすねー。そのまま移植とはいかんのですね。どうもです。
>>251 調べて検討してみますねー
androidでwinapiを使えると思ってる馬鹿がいるとは・・・
はいはい僕ちゃんは賢いでちゅねー
デジタル時計のウィジェットのデザイン(フォント)を変更する方法を教えてくれませんか?
画像用意してImageViewかなんかで表示すれば?
SoftBankメールのような画面の下側に常時出ているメニューはどうやって作ればいいのでしょうか? メニューっぽいだけで、背景透過な画像のボタンをRelativeLayoutで並べてるだけ? あとtwiccaのようなリストビューの上にのった透過のボタン(?)についても方法を教えてください。 ここを読め、ドアホめ!などあればよろしくお願いします。
WidgetからServiceを起動して、そのServiceからReciverを起動し SDカードがマウントされた通知を取得してWidgetを更新しようとしているのですが、 Widgetまでのデータの渡し方を教えてもらえないでしょうか? また、SDカードの通知をServiceのほうで拾う方法があれば 教えてください、どうぞよろしくお願いします。
同じパッケージのActivityから ホームのウィジェットのonUpdateを呼びたい(再読み込みしたい)のですが、 どうしたらいいんでしょうか
261 :
デフォルトの名無しさん :2011/04/15(金) 09:08:43.25
>>260 onUpdateの内容をActivityにも書く
そんなに便利にできないんだよなJavaって
いったいぽぽぽぽーんアプリいくつあるんだよw ディベロッパー情報見るとぽぽぽぽーん1つだけの人が多いが わざわざこれのために$25払って別アカウント取ったわけ? それとも本当に初アプリなのか?w
SlidingDrawer貼り付けてGraphical Layout開くと CPU使用率が100%になる Eclipse終了させてしばらく経つまで PCがほぼフリーズに近いくらい重くなる(;ω;)ウチダケ?
>>265 すみません自己レス。
自分がミスってました。
該当ActivityにカスタムSurfaceViewも貼り付けてて、
そのコンストラクタで描画用の無限ループ開始する
スレッド起動してたからだった。お恥ずかしい。
とはいえ、SurfaceViewとSlidingDrawer一緒に使うと
SlidingDrawerを開いて閉じたときにhandleが
描画されなくなったりとかいろいろ面倒臭そうなんで、
結局断念しました…。
ダイアログにでもするかな…。
>>266 PopupWindowにすれば良いと思うよ
NDKでテクスチャを貼り付けたポリゴンを描画したいのですが上手くいきません。
ソースを上げましたので、問題点があればご指摘を頂きたいです。
ttp://www.emanong.net/pub/files/ema108.txt (コピペや試行錯誤していたのでソースがぐちゃぐちゃで申し訳ないです)
現状は緑色の背景が描画されるだけで、それ以外の表示物は何もありません。
このソースでやりたいのは Java_jp_test_ClearRenderer_onNdkSurfaceCreated で適当に作ったテクスチャを
画面の左下に10x10のサイズで表示するということです。
拡大率やビューポートなどを変えたりしましたが背景以外何も変わらず、
ましてエラーで落ちるわけでもないので何が原因なのか分からないです。
ライブラリとして作成したAndroidプロジェクトに テキストファイルも含めたい場合はどうやればできますか? assets以下だと他のプロジェクトからは参照できないですよね?
Androidのアプリ開発って、いちいち関連するファイルが多すぎんな デザインと分けようとしてやってるんだろうけど、波及範囲広すぎんだよカス
273 :
268 :2011/04/16(土) 15:16:34.90
>>270 ありがとうございます、というかテクスチャを貼りたいのにUV値の設定を行わないとか何をやってたんだorz
UV値の指定がなければ黒とか白で何らかが描画されそうなのですが、これがないだけで何も描画されないんですね。
オプションメニューを選択したらソフトキーボードを表示して ListView のフィルター文字列を入力させたいのですが、 onOptionsItemSelected() で InputMethodService#showSoftInput() を呼ぶだけでは、表示されませんでした。 何か情報があれば教えてください。
>>274 自分の場合は
Handler#postDelayedで100msのディレイを入れたら上手く動いた。
これがベストなやり方かは分からん。
おお、動きました。ありがとうございます。 でも指定する時間は機種に依存しそうですね。
277 :
デフォルトの名無しさん :2011/04/17(日) 00:28:26.25
CanvasにMatrix設定して色々描いた後にMatrixを解除してからさらに描く事はできますか?
NDKのデバッグでndk-gdbのスクリプトを試してるのですが、 エミュレーターでは使えるのに実機だと C:/android-ndk/samples/hello-jni/obj/local/armeabi/gdb.setup:4: Error in sourced command file: とか出て上手く行ってくれません。 同現象で困ったor原因に思い当たる方いませんでしょうか?
通知メッセージは、リソースIDを指定して描画しますが、 Yahoo!天気のアプリは、数千種類もの天気表示用アイコン (絵と確率の合体アイコン)を個別に作成して、リソースIDを 割り当てているのでしょうか。 そうでない場合、どうやってあのアイコン描画を実現して いるのでしょうか。 アイコン画像に確率の文字を画像化したものを上書きするぐらい だったら想像できるのですが、その画像に動的にリソースIDを 割り振るという事は、調べた限りでは出来そうにないんですよね。。。 何方かご存知の方、情報提供お願いします。
そのアプリ自体よく知らないけど、画像はネット上から持ってきているだけじゃない? 画像のデザイン別にファイルを用意しておき、選択した画像のデザインを読み込んで描画みたいな形で。
>>279 ばらばらに用意するしかない
Yahoo天気だと1500個くらい画像ファイルが用意されてる
>>280 通知領域に表示させる画像はリソースIDでしか指定できないから
動的に画像を作って表示させるのは無理
>>280 >>279 は通知領域にリソースIDを指定する以外の方法でアイコンを描画する手段があるのか?って聞いてるんだよ
public Notification.Builder setLargeIcon (Bitmap icon) Set the large icon that is shown in the ticker and notification. ってのがあるけど、通知領域もできるのかな? ただしAPI Level 11だけど。 海外のフォーラムとか見たけど、リソースID以外は 「無理」って言ってるのしか見たことない。
バッテリー系と同じく全て用意してるんじゃないのかな・・ リフレクションで%部分を動的に取ってきて透過合成して表示なんてできないか
機能はしょぼいのにサイズが無駄にでかいアプリ 察しろよ
Android OS 上で、利用したいアーカイブファイルの種類ってZip以外に何あります?
君が何を利用したいかなんて誰もわからないのでは
289 :
デフォルトの名無しさん :2011/04/17(日) 12:40:44.68
パッケージ名って「jp.co〜」みたいなやつじゃなくて 唯一無二になればいいんですよね? パスワードジェネレータ的なもので生成してもおkです?
290 :
279 :2011/04/17(日) 12:49:27.38
>>280 >>282 ネットからDLしてきた画像を、リソースIDの先の画像と差し替えられるならいいんですけどねぇ。
リソースの実体を差し替えるという事はできないし、通知メッセージクラスのアイコン引数は
リソースIDと決まっているので、リソースから画像をメモリ上に蓄えた段階で差し替える
とかそんなCみたいな事無理s
>>281 >>284 やっぱそうなんですかね。
頑張って絵作るしかないか。ちくしょー!がんばります!
ちなみに作ろうとしてるのは、そのバッテリー系です。
バッテリーの絵(囲い)+残量ゲージの絵+残量%の絵(透過)
をとりあえずいくつか用意したんですがね。。。
>>283 せめてLevel8にorz
>>285 確かにY!天気情報はそれなりにサイズありますねぇ。見てませんでした。
頑張って外観デザイン数(今は2種)×100(1〜100%)アイコン作ります。
プログラミングよりもグラフィックばっかりやってるなぁ最近。w
有難うございました!m(_ _)m
リフレクション使うことになるかもしれないけど。
RemoteViewsは通知領域開いた中の話だろ
>>290 10% とか、5%単位くらいでもいいんじゃないの?
なにせ、10%単位でしか取得できない機種もあるわけで…(IS01)
OpenWnnで、 文字を入力した直後に、バックスペースを押しっぱなしにして離すと、 他のキーが連打され続ける事象の修正がどうしたらよいのか解りません logcatを見てもキーのフォーカスが取れてないのかなぁ、くらいの事しか解らず…… ちょっとキーボードのデザインをカスタマイズするだけのはずだったのですが
>>286 tgz
複数行設定したEditTextをフリックで縦方向にスムーズスクロールさせたいんですが、良いサンプルは無いでしょうか。
dllのように共通の処理を共有ライブラリで行いたいのですが 調べたところ、soファイルがdllに相当するということがわかりました。 肝心のsoファイルについても調べてもCと連携する方法しか出てきません。 単純にjavaで文字列なり数値なりを返す処理を書いて、ライブラリ化。 それを使いたいプログラムから呼び出すと。いうことを、どのようにすればいいのか教えてもらえないでしょうか。 もしくは解説しているサイトを教えてもらえないでしょうか。
JARにまとめるということですね。 確かにdllとは違いますが、やりたいことは変わらないようです。 ありがとうございます。
リリースしたアプリをアップデートする方法って何処かにありませんか? それによってファイル構成も変わるのですが、如何せん検索してもユーザーへのアップデート情報しか出てきません
なまずの設定方法を変えたいんだけど ソース落ちてないですか? 震源地との距離震度じゃなくて現在地の 予想震度に
プログラム全般の質問なんだが、APIリファレンスってなんだ
NDKなのでは?
物理的なメニューボタンを押さずにメニューを表示させたいときってどうしたらいいでしょうか? keycode_menuを自分で投げても動作せず、 なにをトリガにしていいのかわかりません…orz
EditTextでオートインデントやりたいんだけど、そういうの簡単にできるメソッドってないの? getCurrentLine()、getPosition()みたいなの それさえあれば、setText(char[] text, int start, int len)でうまく行きそうな気がするんだけど… オートインデントでググレば一発で出るかと思ったんだがなんかいまいち見つからない。 誰か作ってると思うんだけど、ソースないかな?
>>309 前行のスペースやタブが1カラム目からいくつ続くか調べる。
次行では、上で調べた数分スペースやタブを繰り返す。
で、実現するのでは?
>>310 文章の途中で改行が押された場合の処理がわからないんです。
文章のどこで改行が押されたか知る関数があるだろうと思ったんですがないんですかね?
なかった場合は、改行前と後のテキストの差異を取ってやるしかないのかな
文章のどこで改行が押されたかがなぜ重要なのか分からない。 改行が押されたら問答無用で次行へ移行、全行の先頭インデントと同じだけ 放り込めば良いんじゃね?
onSizeChangedで渡された変更後の幅が1073742624(=0x40000320)だったんですけど 0x400000000って何かのフラグですか? 実際の幅は800(=0x00000320)なんですけど
答えられないなら書き込まないで
>>315 「知らないならレスしないでください。ウザイだけです。」
こうだろ?
317 :
デフォルトの名無しさん :2011/04/19(火) 16:58:43.51
既存のSQLite形式のDBファイルの内容を参照する方法について教えてください。 assetsに配置したGZip形式で圧縮したDBファイルを、復元してdatabasesにコピーするところまではできました。 わからないのは大雑把に言うと次の2つです。 1.DBファイルを開くのに必要な手順。 2.開いた後で操作するまでの手順。 どちらもVB.NETみたいに簡単操作できたりするんでしょうか? 詳しく解説しているサイトを紹介していただいても結構です。 よろしくお願いします。
>>313 普通に幅が返ってくるが?
その機種がおかしいか、バグってるんじゃね?
>>318 俺は中国人からのエラー報告が多いがこっちでは再現しない
やっぱりあっちの端末かな?
320 :
デフォルトの名無しさん :2011/04/19(火) 17:52:11.87
APKをインストールするときの許可する権限についてい質問です。 僕のアプリではネットを使うので、ネットのパーミッションだけmanifest.xmlに設定しています。 しかし、インストールするときにストレージと電話・通話の許可が求められてしまいます。 XMLを確認しましたが、関連することは書いてありません。 利用者を不安にさせたくないので、この設定を消したいんですがどうすればいいですか?
AndroidManifest.xml に android:minSdkVersion を書く
322 :
デフォルトの名無しさん :2011/04/19(火) 18:20:38.62
現在下のようにWeb上の画像を保存しているのですが、 GIFアニメを保存したい場合はどうしたら良いのでしょうか。 画像の拡張子が.gifであってもCompressFormat.PNGでエラーが発生せずに保存可能なことは確認済みです。 ただ、この方法だとGIFはアニメーションでなく、静止画になってしまいます。 これをGIFアニメのまま保存する方法があれば、その方法を教えていただきたいです。 CompressFormat imageFormat = CompressFormat.PNG; Bitmap image = BitmapFactory.decodeByteArray(data, 0, data.length); if (image != null) { fileOutput = new FileOutputStream(filePath, false); image.compress(imageFormat, IMAGE_QUALITY, fileOutput); }
変なことせずに保存すればいい
324 :
デフォルトの名無しさん :2011/04/19(火) 18:32:28.67
>>321 解決しました。
ありがとうございます。
ガベージコレクションってこちらで気を付けてもJavaを使用すると発生は避けられないのでしょうか。 アクションゲームだとGCが発生するとカクカクして遊びにくいためNDKで作る予定です。 ただ画像や音周りの敷居が高く感じたので、Java側で画像はBitmap(カラー情報はNDKで保持)、 音はSoundPoolを使用するような作りを考えています。 画像は問題なさそうですが、やはり音は再生するたびにメモリを使用して時々GCが発生するのでしょうか。
Android の ASEをインストールし、Pythonの起動、.pyをバックグランドで実行するまでの操作を動画にしました。
Androidのバージョンは 2.2です。
WindowsSDKで実験しましたので、他の実機で動くかは保証できません。
(というより、実機が無いのでエミューレータw)
特に詳しい人じゃないので難しい質問には答えられません(キリッ
Android ASE at Python. (from japan)
http://www.youtube.com/watch?v=RHaMv5XfcDE
>>325 GC動かないと落ちるだけ
端末によって使えるメモリバラバラ
メモリ気にするならandroidもjavaも使えない
それが仕様
>>327 GCを極力排除するなら面倒でもNDKで書けってことですねorz
Android自体はネイティブなのにもっと組みやすくしてくれていればなぁ・・
330 :
322 :2011/04/19(火) 20:33:30.05
>>323 こんな感じでしょうか
URL imgURL = new URL(url);
InputStream imageIs = imgURL.openStream();
OutputStream imageOs = new FileOutputStream(filePath);
try{
byte[] buf = new byte[1024];
int len = 0;
while((len = imageIs.read(buf)) > 0){
imageOs.write(buf, 0, len);
}
imageOs.flush();
}finally{
imageIs.close();
imageOs.close();
}
この方法も考えてはあるのですが、
以前使っていたのをそのまま利用しているだけなので、
Android端末で画像を保存するならそれに沿った方法のほうがいいかなと思ったのですが
OAuth認証について質問させ下さい. OAuthProvider provider = new CommonsHttpOAuthConsumer(CONSUMER_KEY, CONSUMER_SECRET); CommonsHttpOAuthConsumer provider = new DefaultOAuthProvider(トークンURL, アクセストークンURL,オーサライズURL); String url = provider.retrieveRequestToken(consumer, CALLBACK_URL); この部分でunknownhostexceptionが発生してしまいます. 開発環境としてエミュレータからプロキシ接続しています. providerにプロキシ設定が反映されていないことが原因だと思いますが、 このproviderへの設定方法がわかりません. (通常のHttpClientなどは設定してプロキシ接続できています) プロキシ環境下でのOAuth認証の方法を教えてください.
admobにadsenseキター そんなにPVなかったからそろそろ一般開放するようになったのかな
GLSurfaseViewを使ってゲームを作っているのですが、テクスチャを読み込むにはonSurfaseChangedかonDrawFrame内で行わないと駄目なのでしょうか? 処理用スレッドを起動してそっちでテクスチャの読み込みや削除を行いたいのですが。
他のアプリケーションのリソースやライブラリーを参照したい場合、パスはどのように書けばいいのでしょうか。 他人の作ったアプリを覗きたいわけではなく、共有するデータは自分の作成したアプリデータであり、階層や名前がわかっている事が前提です。 それとも、共有するデータはSDカードに保存するべきなのでしょうか?
お前らホントに初心者? 結構なレベルいってんじゃねーの?
本スレは荒れまくりだし、初心者以外が来るのも仕方ないよねぇ
>>333 結構前から表示できる広告なかったらadsenceから持ってくるようになってる
>>335 一番簡単に実現するのは、Sdへ書き出す。
Intentのパラメーターでも良さそう。
>>335 リソースなら PackageManager#getResourcesForApplication()
とかで取れるんじゃないかな? 試してないけど
>>338 ちくしょう、バカにしやがって・・・ サンクス。
>>339 それは知ってたけどユーザーによってオンオフ設定する項目がなかったりしてたのが
ついに俺にも項目ができてたからさ
>>334 俺は途中でめんどくさくなって諦めたが、queueEvent()で出来るかもしれん。
>>333 admobって広告が出ないことが多いとか、単価が安いというのを見るけど、
後者は変わってないのかね。
単価2円とか見たが。
俺はadlantis使ってる。
346 :
デフォルトの名無しさん :2011/04/21(木) 00:32:21.56
マルチタッチで2箇所目をタッチした時(action_pointer_2_down)のonTouch内で event.getX()で取得出来る座標が1箇所目のタッチ座標と同じものが返ってくるんだけど どういう現象なのかな? このままでは画面上に描画した二つのボタンのどっちを押したのかが判別出来にぃ・・ 環境:Android2.1載せたX10
>>346 x10やht-03aは疑似マルチタッチだから無理っす
Android難しいーーー けど楽しいーーー
349 :
デフォルトの名無しさん :2011/04/21(木) 00:45:52.92
>>347 なんてこった・・
action_move時にはおおまかにはそれぞれ座標取れてるみたいだから
ボタンをフリップ型?にしてなんとか誤魔化すしかないのかな
公開アプリでマルチタッチ使う時ってその手の古い機種は切り捨ててるんだろうか
失礼します APIdemosの中身をいじくってアラームが2回だけ出るボタンを追加しようとしました。 この時にOneShotAlarmの形式をコピーして2回実行すればいいのかなと考えたのですが 表示が1回しかされません。 Calendar calendar1 = Calendar.getInstance(); calendar1.setTimeInMillis(System.currentTimeMillis()); calendar1.add(Calendar.SECOND, 15); am1.set(AlarmManager.RTC_WAKEUP, calendar1.getTimeInMillis(), sender); 〜mToast初期化処理〜 mToast = Toast.makeText(AlarmController.this, "First Alram",Toast.LENGTH_LONG); Calendar calendar1 = Calendar.getInstance(); calendar2.setTimeInMillis(System.currentTimeMillis()); calendar2.add(Calendar.SECOND, 30); am2.set(AlarmManager.RTC_WAKEUP, calendar1.getTimeInMillis(), sender); 〜mToast初期化処理〜 mToast = Toast.makeText(AlarmController.this, "SecondAlarm",Toast.LENGTH_LONG); 上記のようなプログラムを記述しているのですが、 mToastは連続して発行できない(最後のだけが残る)と言う事でしょうか? また2回だけ実行するにはどのような手順・記述法がいいのでしょうか?
mToast も mToast1 と mToast2 に分けてみたら
>>347 android端末持ってる同僚のを借りて試してみたら
どれも同じ現象が発生して混乱が増したw
試した機種
ギャラクシーS 2.1
IS03 2.2
IS04 2.1
まさかこれら全部実は擬似マルチ…?
なわけないよなあ…
>>351 それじゃコンパイルとオらねえだろ。。
Calendar calendar1 = Calendar.getInstance();
:
Calendar calendar1 = Calendar.getInstance();
2はどうした?
>>346 こんな感じにしないと駄目じゃなかったっけ?
int i=event.getActionIndex();
int x = event.getX(i);
int y = event.getY(i);
SQLiteOpenHelper を継承したクラスを作成しているのですが、 コンストラクタと実装されていないメソッドをエクリプスで自動生成 コンストラクタのsuperの第2引数、第4引数を適当に書き換え、継承したクラスのインスタンスを生成。 という処理を書いたのですが、デバッガで追ってもコンストラクタの後にonCreateが実行されません。 何処のサイトでもsuperの第2引数で指定したDBが無ければoneCreateが実行されるとしか書いておらず、 第2引数の文字列を適当に変えたり、アプリのアンインストールもしてみたのですが、それでも実行されません。 何処かが悪くてエラーでも出てくれば良いのですが、コンストラクタがそのまま終了してしまうのだけなので全く原因がつかめなくて困っています。 (別なクラスでの)インスタンスの生成 DBHelper DB = new DBHelper(getBaseContext()); 継承したクラスのコンストラクタ、onCreate public DBHelper(Context context) { super(context, "testdb", null, 2); } public void onCreate(SQLiteDatabase arg0) { arg0.execSQL(""); } 念のため、コンテキストもnullやthis等試してみましたが駄目でした。 一体、何が悪いのでしょうか。
初回起動→onCreateを実行してDB作成。 二回目以降→DBが存在しているからonCreateは実行しない。 こうじゃなくて、初回からonCreateを実行しにいかないって事?
>>355 これだ!
調べてみると、getActionIndex()はSDK8からの実装みたい
今までずっとAndroid2.1(SDK7)で弄ってたので気付かなかった・・
引数無しのgetX()だとaction_down時だけおかしくて、
moveやupではきちんと取得出来てて混乱してたのだけど
不具合対策がSDK8に導入されたって事なのかな
超サンクス!
>>358 いや違う。
7以前は、マスクとシフトでインデックスを取りだすようにしていたのが、
8では関数になっただけだよ
失礼、全然見当違いな事書いてた SDK7でもマスクしてINDEX取れる(getActionIndex相当)から、 それを使ってgetしないとダメって事か・・w スレ汚し申し訳ない
この辺は分かりづらいからな。 ちなみに7以前だと int action=event.getAction(); int index=(action & MotionEvent.ACTION_POINTER_ID_MASK)>>MotionEvent.ACTION_POINTER_ID_SHIFT; こうだな
リロードorz ほんと失礼しました
webView にプロキシが反映されません。 ブラウザでは見ることができます。 どこに設定すればよいでしょうか。
実際にDB開こうとしたタイミングでOnCreateが走った気がする
SDカードのtxtファイルを読み込むにはどうしたらいいですか?
Thread.sleepについてなのですが、 画面が表示されている間は指定した時間だけ待機してくれます。 しかし、画面をオフ(スリープ状態)にすると、 指定した時間の何倍も待機しています(体感的には5倍程度)。 動作機種はGalaxySなのですが、原因を探ろうとUSBを繋いだ状態でlogcatを監視したところ、、 上記のように何倍も待機することは起きませんでした。 USBを繋いでいないときだけ起きると考えられます。 このような問題を回避する場合はsleepは使わないほうがよろしいでしょうか? 分かる方、アドバイスをよろしくお願いします。
UBS接続中は給電中だからスリープしないんだろうな スリープ中にも定期的に処理したいなら スリープを無効にするかAlarmManager使う
C言語を利用してAndroidアプリを作成する方法について 解説している書籍やサイトのオススメはありますか? よろしくお願いします。
HorizontalScrollView内のLinearLayoutに動的にViewを追加していくと、 横に長くなって画面からはみ出てしまいます。 画面からはみ出ずにスクロールさせることはできるのでしょうか? よろしくお願いします。
372 :
367 :2011/04/21(木) 23:54:29.91
>>371 横スクロールは現在も可能です。Viewを一定数以上追加したところで、
HorizontalScrollViewが画面から少しはみ出してしまいます。
はみ出し部分の長さは、Viewをどれだけ追加してもそれ以上長くはなりません。
どうやら症状は画面を少し横長に認識してしまっているような感じです。
>>367 PARTIAL_WAKE_LOCKはCPUがスリープに入らなくなって
バッテリーの消費増えるから使用するときは注意してください
>>366 SDカードは/sdcard/にマウントされとるそうな。
ステラリウムというソフトを移植したいのですが、openGLで動いてるようですが、 openGL esを勉強すればいいのでしょうか? PC版はLinax版とソースコードが有るようです。 一から勉強するとして必要なプログラム言語とか教えていただけませんか?
377 :
376 :2011/04/22(金) 06:45:44.71
自己解決しました。 今手持ちの機種はOSが2.1でopenGL2.0で書かれたステラリウムを動かす openGL es2.0がサポートされていない様で・・・ rootとれてないのでOSアップデートまでおあずけですねorz それまでに勉強しときます。
>>375 一応フォローしとく。
バージョンによっては、/mnt/sdcardとなる。
sdcardのマウント先を取得するapiあるから、それを使用した方がいい。
>>377 openGL ES 1.0もたまには(ry
>>380 dbは使ってないので…。
各インスタンスを作成したら、その中身を見たら?
>>381 すいません、見落としてました。で、できました。
どうもコンストラクタのsuperの直後ではなく、
getWritableDatabase()なりgetReadableDatabase()を実行したときに走るようです
ありがとうございます
;ω;
開発環境整えて、いざ開発を初めて見たのだけれど、 Emuも含めてめちゃ重い。 俺の石器時代のPC(Pen4-2.6GHz Mem1GB)じゃお話にならんw 満足とは言わないまでも、とりあえずこれくらいないとやっていられんと言う PCスペックを教えてください。
Vista + Core2Duo2.4GHz + 2G (5年前のスペック) でやってるけどエミュは2.3までならまぁそこそこ動いてくれてますよ でも正直エミュで実行するのはストレス溜まるね ソース編集が主でエミュでしょっちゅう実行させるんじゃなければ 上記を最低限にみればいいんじゃないかな?
>>384 linux入れれ
windowsよりはエミュレータが快適
>>384 ウチはPen4-2.8GHz Mem1.5GB似たようなスペック。
エミュ重いけど、閉じないで起動しっぱなしにしとけば、そこまで苦にはならなかったよ。
ただ、OpenGL触りたかったし、実機を入手してからエミュ使わん。転送速いし、楽だし。
どうせだから、実機手に入れれば?
>>384 eclipseならmem1Gは無理
2Gは必要
古いメモリは高いから最近の安いPC買え
C++ のBoostって使える?
そういえば、eclipseの最新バージョン(Helios)のコード補完機能が表示されるまでが メチャクチャが遅いバグは修正されたのだろうか? 前バージョン(ガリレオ)で十分なので試してない。 質問 GLSurfaceを動作させているとき、たまにWiFiなどが動作したりしてフレームが奪われて 一時不安定になる時があるので、自分のアプリ側で一時的にWiFiをOFFにしていいのかな?
SQLiteでgetWritableDatabase()を実行したときにエラーで 強制終了されるのですが原因がさっぱり分かりません。 どなたか教えていただけますか。
ログ見れ
あーごめん、ちょんミスだった。無視して。
>>390 俺がユーザなら勝手にOFFにされるのは嫌だ
せめてオプションで選択させてほしい
むしろふざけんなって話だが。
サービスの解説で、バインドという言葉が出てくるのですが、 肝心のバインドそのものがなんなのかを説明している所が見あたりません。 バインドとはどういう意味で何のために使うのでしょうか。
サービスが実装しているインタフェースを取得することです サービスが実装している機能を呼び出すために使います
そうするとバインドという言葉は色々意味があってSQLなんかでも使いますが、 androidでバインドと言ったらサービスの機能を呼ぶためだけに使うものであって、 それ以外には使わないという解釈でいいのでしょうか。
いやぜんぜん サービスの話ではそういうものだということ
洗うって言葉は「顔を洗う」ときだけに使われるものでしょうか?
バカにカタカナ語は難しい そしてバカほどカタカナ語を使いたがる
タシカニムズカシイデスネ
WidgetとService間でデータをやり取りするにはどうしたら良いですか?今WidgetからIntentのブロードキャストを試しているのですが、Serviceの中のReceiverでは受け取れなくて困ってます。
俺男だけど女性向けアプリの勉強のため女子カレを入れてみた 設定とかすげーはずかしー///
408 :
367 :2011/04/22(金) 21:16:45.17
Thread.sleepの者です
>>374 電池に優しくないのですね。勉強になります。
そこで、AlarmManagerについても調べてみたのですが、
こちらの方法でも実装することができそうです。
ありがとうございました。
>>384 多少ぼろっちくてもいいからセカンドPCなりノートなり持ってるならそっちでemuとかx86版を動かすって手も
ネットワーク経由でもデバッグできるからね
>>406 まじですか
ServiceはなぜかブロードキャストのIntent受け取ってくれなくて、
調べてもWidgetとService間のデータ受け渡しがなかなかなくて、
方法が思いつきません。教えてもらえないでしょうか
>>410 直接がだめなら間接
いろいろおかしいから知恵使え
ちょっと聞きたいのですが、ボタンが3つあって違う文字をonCreat時に setTextでセットしてるのですが、その文字を取得してTextViewエリアに 表示するにはどうしたらいいのでしょうか? public void onClick(View v1) { 〜略〜 のところで INP += getText(v.getId()); (INPはStringで上の方で定義) として、INPをsetTextしてもfalseとしか表示されません。 String型ではないのかと思い、下記のように試しても同じでした。 INP += getText(v.getId()).toString; よろしくお願いします。 m(__)m
>>410 ブロードキャストはレシーバーでしか受けれないぞ
415 :
sage :2011/04/22(金) 23:26:36.89
>>410 そうだったんですか、ACTION_MEDIA_MOUNTEDとかは受け取れたので
Widgetから送信したブロードキャストも受け取れると思ってました…
bindもできないし、SereviceとWidget相互間のデータ受け渡しはどうすればいいんだろう。
>>416 それだとWidgetからIntentにデータをのせて渡せますが、
SereviceからWidgetのほうに渡すのはできなくないですか?
callback用意すればオッケーなんじゃなかったけ aidlとかで
>>417 そっち方向はブロードキャストでいいんじゃない?
プログラム全くの初心者ですが、おすすめの本はありますか?
>>413 getText(v.getId())じゃなくてv.getText()でどうですか?
>>417 AppWidgetProvider#onReceiveの中でIntent受け取って
処理するのは駄目なの?Serviceを介さないといけない理由が
あるんだろうけど。
>>423 さんくす!それも試しましたが駄目だったので、もしかしたらと思い
((TextView)v).getText()
とやったら行けました。
一度TextViewをキャストしなければ駄目だったのですね。
enumはパフォーマンス的に避けたほうがよいということで 定数を使おうとしてるんですがint型の定数の値決めるのに何かガイドラインってありますか? 重複の危険性を避けたいと思い public static final int HOGE = "hoge".hashCode(); なんてしてみたんですけど邪道?
>>424 重複が嫌なら重複してないチェックするしかないわけだが
idリソース定義してそのまま使えば? R.id.xxx が不恰好ではあるけど、値を気にする必要はなくなるよ
intの定数ってcとかjavaでは普通どうやって決めんの? 某#でEnumばっかりだったもんでちょっと面食らっております。。。
>>427 なるほどん。
PC版と兼用の部分書いてるんでできれば正攻法でいきたいなと思いまして。。
430 :
675 :2011/04/23(土) 20:53:30.88
>>428 単純に連番にしとけばいいと思うよ。 別に特にルールがあるわけじゃないし。
よく使われる決め方としては正常を表す定数は正の数で異常を表す定数は負の数とか、
and演算での抽出やor演算での合成ができるように決めるとか。
内部のルーチンで使う定数をそのまま使うとか。(別名として使ってってことね)
0で無効な状態(もしくはデフォルトの状態)を表すようにするとか。
あとは使うべきデータやルーチンを配列やハッシュマッブに詰め込んどいて定数指定だけでアクセスできるようにするとか。
>>430 なるほど、参考にしてみます。
ありがとう。
普通にenum使えばいいじゃん 最近の機種でenumが問題になるなら、そもそもロジックを見直した方がいい
どうせたいしたもの作るんじゃないんだからどうでも良いよ リビジョン管理とかしねえだろ?
皆は何を参考に作成してるの? ウェブ上にはまともな解説がないような気がするんだけど
リファレンスがあればふつー十分 まあいざとなったらソースをgitで
英語がまるで読めない俺がこの先生きのこるには
>>436 だいたいこんなもん的で、英語はなんとかなる。
英語を勉強すべし 中学程度の文法知識とネット上の英和辞書でだいたい読める
別に英語できなくてもプログラミング出来るっしょ?
ゲームスレッドAとGLSurfaceスレッドBがあります スレッドAで以下処理を行います 処理1 描画内容が入ってる配列の中身を書き換える 処理2 カメラ位置変数の内容を書き換える 処理3 スレッドBが描画(onDrawFrame)していない時にそれらを渡す (onDrawFrameの最初と最後でフラグをon/offさせて描画してないときを判断しています) スレッドBは手元にある配列を元に延々描画だけしています この処理3で渡してるにも関わらず 処理1後処理2前の状態の描画が合間にされているようで、 表示がちらついてるんですが、どういう状況なんでしょう? ちなみに処理1を行わない場合、表示のちらつきはGC時以外ほぼありません
AがBのOFFを確認してからBに値を渡し終わるまでBはONにならないようにしてる?
>>442 わかりづらかったので、以下のように変更してみました
ただ、ちらつきは依然発生しています
スレッドB側クラスにフィールド追加
boolean isSetting = false;
スレッドA側からの処理
isSetting = true;
スレッドBの配列 a' の中身書き換え
スレッドBの変数 xyz' (カメラ位置)書き換え
isSetting = false;
スレッドB
onDrawFrame(GL10 gl) {
if( ! isSetting) {
a = a' ;
xyz = xyz' ;
}
xyz を元にカメラ位置設定
a を元に描画
}
複数スレッドのアプリ作成は初めてなんですが、なかなか難しいです
スレッドA側にスレッドBを待つ部分が見あたらないんで、 スレッドBがa'をaにコピーしている間にスレッドAがa'書き換えてる気がする。 volatileとかsynchronized使ってる?
>>444 なるほど・・
その状態は想像出来ていませんでした
両方の処理が同時に起こらないようにロックする必要があるんですね
volatileもsynchronizedも使っていませんでした
ちょっと使い方から調べてきます、ありがとでした!
さっそくアプリパクられててワロタw つーか後から出すのに劣化してるの出してどうするのってかんじなんだがw プログラマーって馬鹿なの?
1年ぐらい前はc言語で実装する際の問題として 1,Cのみで作ることは出来ずに結局Javaから呼び出さないといけない 2,JavaからCで書いたものを呼び出しデータの受け渡しをするのに時間がかかる 3,APIがJavaからしか叩けないため、APIを使う度にJavaに戻ってこないといけない があったみたいだけど、今はどれか改善されてますか? 特に3が辛い
>>448 NDK r5 からは NativeActivity が使える様になって、1 だけは部分的に解消されたと思う
>>449 ありがとう、それ調べてみるともうグラフィックの描写やセンサからの入力までNDKのみで
出来るようになってるのね。もうこれである程度のアプリは作れるね
でも、おおこれでやっとJava切り捨てて慣れ親しんだCに移行できる。と思ったら2.3からしか駄目なのか
開発環境を整えてる段階で x86エミュ動かしてadbで接続するところまでいけたんだけど これをvirtual deviceとして認識させることはできますか? (eclipseでビルド+実行までできると嬉しい) それともエミュつかってる人はここから先は antとか(使ったこと内)でadb接続やらビルドやらを実行する スクリプト的なものを書いてるのです?
>>446 INFOLIFE LLCの悪口は止めてもらえませんか
あーもーJavaめんどくせー VBなら余裕なのに
>>451 adb connect ipアドレス
で繋ぐのはダメなの?
>>451 わざわざ完成度の低いAndroid x86を使う意味が分からん。
VB(笑)
つか
>>453 オマエにはAndroidは無理だから止めとけ
スレチだし
>>456 デフォルトのエミュは遅すぎて話にならなかったから
俺もAndroid x86使ってた時期あったわ
俺の環境だとVMに突っ込んで使っても実機より数倍速かった
でも色々使いづらいし結局実機買った後はほぼ使わなくなった
Android x86動くならぜひ使いたいわ。
実機あるけど全部のバージョン(2.2,2.3,3.0とか)のAndroidが欲しい。
というわけで
>>451 超頑張れ。出来たら報告頼む。
既にSQLiteOpenHelperで作成したデータベースが存在するアプリがあって、 テーブルのカラムを変更するにはonUpgradeに記述するとかはわかったのですが 単純に別のテーブルを作成したいときはonCreateに追記しても大丈夫なのでしょうか
大丈夫じゃないと。 素直にDBバージョン上げてonUpgradeにどうぞ。
そのonCreateはいつ呼ばれるの?っと
>>461 >>462 onCreateはデータベースが存在しなかったら呼ばれるのですね
新規インストール用にonCreateに追記して
アップデート用として素直にonUpgradeで処理します
ありがとうございました
>>455 adb connectしてadb shellで操作ができるとこまではできてますお
>>456 x86 vs 公式エミュの起動が5秒 vs 1分弱なので
>>458 と同じ理由ですが、
まだ初心者なので実機デバッグが怖いというのもあります
>>459 なる!と思ってx86プロジェクト見ると1.6と2.2のReleaseしかない。書ボンー
でももうちょっとだけがんばってみます
AsyncTaskの使い方について質問させてください. SampleAsyncTask task = new SampleAsyncTask(); task.execute() while(task.getStatus() == AsyncTask.Status.RUNNING) { if(task.getStatus() == AsyncTask.Status.FINISHED) { task.get(); break; } } 上記のように、処理が終了したことを判定してから値を取得したい のですが、無限ループのままfinishが取得できません. task.execute().get() とすると値は取れるのですが、AsyncTask内で起動するダイアログが 正常に表示できないことで上記の方法を取ろうとしました. 処理の終了判定の正しい取り方を教えてください.
どのみちループしてる限りダイアログは表示できないと思うけど
>>467 いまいちその辺の知識がなくてすみません.
メインスレッドで処理してるから、ダイアログがフォアグラウンドに
でてこれないってことでよろしいでしょうか.
>>468 UIの操作はすべてメインスレッドで行わなければならない
ダイアログを開くのも閉じるのもUIの操作だからすべてメインスレッドで行わなければならない
しかしメインスレッドがループしてる間はメインスレッドは他のことができない
つまりメインスレッドがループしてる間はダイアログを開くことはできない
>>469 ご説明ありがとうございます.なるほどそうですよね.
となると、AsyncTaskのステータスの監視(loop)を別スレッドで
行うことで実現可能ということでよろしいでしょうか.
onPostExecuteから通知しろ
>>471 解答ありがとうございます.
onPostExecuteからResults以外に通知することができるのでしょうか?
独自listenerなり実装(&継承)してそいつのメソッド 呼べば良いじゃない。handlerに投げてもよし。 ブロードキャストメッセージ投げるもよし。 やりようはいくらでも。
>>473 ありがとうございます.上記の方法でやりたいと思います.
>>465 いや、だから
connectで繋いだらEclipse上からビルドも実行も出来るんでないかと・・
出来てないのん?
Androidアプリを開発する言語として使えるものには何がありますか? 自分が把握しているのは以下の3つです。 ・ Java (Android SDK) ・ C++ (Android NDK) ・ ActionScript (AIR) JavaScriptでも開発できるという話を小耳に挟んだのですが、 ブラウザ上ではなくインストールする形式のアプリをJavaScriptで作れるとは信じがたいのですが…… 真偽の程は? また、これら以外にも使用できる言語はありますか?
>>476 pythonやjavascript/html5/cssとか
monodroidとか
>>476 一応sl4a
Javaとの親和性の高いRhinoやJRubyは別格扱いすね。
480 :
忍法帖【Lv=8,xxxP】 :2011/04/25(月) 08:46:14.18
ずぶの初心者な質問ですいません。 趣味でプログラミングを勉強しようと思っています。 10回本体を降らないととまらないようなアラームを作りたいのですが、それを勉強するいい書籍はないでしょうか?
>>480 どうしてピンポイントで記載があると考えるんだ?
メーリングリストにメールを投げましたが レスが来る見込みゼロなのでこちらでも質問します。 現在、ScrollViewを使ったアプリを開発しておりまして ScrollViewがこれ以上移動できなくなった際に 表示されている画像を非表示にしたいのですが、なかなかうまくいきません。 長くなりますので分けて投稿します。
484 :
483 :2011/04/25(月) 09:53:07.24
■仕様について 具体的に申しますとレイアウトの構成は以下のようになっております。 01 <ImageView /> 02 <ScrollView> 03 <RelativeLayout> 04 省略(ImageViewが複数縦に並んでいます) 05 </RelativeLayout> 06 </ScrollView> 07 <ImageView />
485 :
デフォルトの名無しさん :2011/04/25(月) 10:21:13.96
>>481-482 回答ありがとうございます。
ピンポイントというよりも応用までを勉強したかったのです。
言葉足らずですいません。
そのページも拝見したのですが、やはり書籍のほうが解説が丁寧かと思いまして。。。
大学の空きコマにチョボチョボとやろうと思っている次第です。
486 :
483 :2011/04/25(月) 10:31:54.88
>ScrollViewがこれ以上移動できなくなった際に >表示されている画像を非表示にしたい これ以上はないよっていうことを知らせるために画像を消すってことなの? 別に消さなくてもいいじゃんって思うけど
488 :
483 :2011/04/25(月) 11:55:27.66
>>487 iPhoneでリリースされているアプリをandroidでも作ってほしいって仕事をしていて
(ちなみにiPhone版は別会社が作りました)
お客様の要望でこの処理を実装しないといけなくて・・・
Android向けにWebサイト作る場合、ログイン処理はどのように実装すべきでしょうか? ガラケーサイトでは簡単ログインにしてしまうことが多いと思いますが、スマフォでも端末ID取って簡単ログインにしてしまうのは問題ないのでしょうか? あるいは毎回ログインさせるべきですか?
>>489 クッキーでいいんじゃないの?
Gmailのweb版みたいな感じで
>>486 ScrollViewのon~系とかcompute~系のメソッドをオーバーライドして挙動を確かめてみたら?
中で子の位置を取得してみるとか。
492 :
489 :2011/04/25(月) 16:34:14.06
>>490 ありがとうございます。
クッキーだとログイン処理が頻繁に必要になる印象なのですが、
これは仕方ないのでしょうか?
スマフォ向けのサイトでクッキーでログイン管理しているサイトは
かなり面倒な印象を受けてしまいます。
(1)public class MyActivity extends Activity{} こんなクラスを作って (2)public class MyApp extends MyActivity{} こんな風に使いたい。 要はAndroid用の自作ライブラリを作りたい(`・ω・´) でも、(1)のクラスを別のプロジェクトに持ってって ライブラリ参照するとエミュ実行時にとまる(´・ω・`) (同一プロジェクト内なら大丈夫) エミュ停止後、Eclipse上では 『ActivityThread.performLaunchActivity(ActivityThread$ActivityRecord, Intent) line: 2324』 のタブが増えて、ソースねーよって言ってる。 もしかしたらAndroidじゃなくてJavaかEclipseの質問なのかもしれませんが 何か気づいた点ありましたらやさしく教えてください(*´ω`)
>>492 さてここで問題です
無期限のクッキーと端末IDの違いは何でしょう
>>492 cookieを使ってるサイトで定期的にログインが必要になるのは、セキュリティ上の理由から定期的にパスワードを確認させるようにしてるだけで、cookie自体の制限というわけじゃない。
cookieだってIDだけでログインするような仕組みはできるよ。
ただ誰もそんな作り方はしないというだけ。
496 :
493 :2011/04/25(月) 17:25:15.63
>>492 クッキー セッションID 保持
とかでググるといいよ
>>489 あと、簡単ログインは携帯網専用な。
スマホだろうがガラケだろうが無線lan経由のアクセスを認める時点で簡単ログインはあり得ない。
履歴とっときゃ良い 人のアカウントにアタックしたら不正アクセスで逮捕
VideoViewの videoView.setVideoURI(URI)で動画の再生を行ったのですが、 参照先の動画サイズが小さいので、動画を引き延ばし(拡大)したいです. ですが、どのようにやればよいか見つかりませんでした どのような手段を取ればよいでしょうか. SurfaceViewで動画領域を確保すればよいでしょうか?
501 :
476 :2011/04/26(火) 00:57:06.50
>477-479 お返事ありがとうございます。 sl4aという名称は初めて聞きました。 ググッてみましたが日本語情報が少ない…… これを使うことでJavaScriptやPythonでインストール形式のアプリが作れる、ということでしょうか。 情報ありがとうございました。
>>501 セオリー通りに進めた方が良い様な気がする。
携帯でvb動いてるってなんかやだなw ウィンドウズモバイルとかだとvb動いたりするの? もう7なりxpを携帯に載せちゃえ酔って気がするが。インテルも組み込みatom作ってるみたいだし。 マカーな客って馬鹿だなw グーグル携帯ならこうだって実装提案したほうが前向きだな。むこうで実装出来ない処理でお返ししといたらw エクリプスのメモリ喰いっぷりには飽きれるな。2gb上限のミニノートじゃ厳しいかw
スレチ
>>500 VideoViewの縦横サイズを変えればええんちゃう?
>>505 知識不足ですみません。
videoviewのどこで縦横を設定してよいのか
見つからず困っている現状です。
そうだよ
職安の職業訓練校でAndroid関連の学校増えてるね。 学校行った人いたら感想聞かせて。
>>509 このスレにくるような人々には無用のモノだぞw
ワード使えます!みたいな人が行っちゃうところだし
>>509 職業訓練のプログラミングは意味無いよ
結局は実務経験がないとそういう仕事には就けない
性格ひん曲がった奴多いし、わざわざ行った奴とか居そう
さすがにVB厨でもそんなに視野は狭くないだろ
今失業中なんだけどAndroidの職業訓練有るなら行きたい。 講師のレベルには期待してないが、本読んで自習するよりは役に立つだろう。
職業訓練なんか第2次産業以外の職種だと役にたたない
>>510 videoviewのレイアウトはxmlで定義しています(幅も高さもfillです).
動画を読み込むまでは
レイアウト通り画面全体にvideoviewが表示されています.
しかし、動画の読み込みが完了するとその動画のサイズに縮小
されてしまいます.
>>516 知り合いが行ってたみたいだけど、
結局本読んで自習した方がマシレベルみたいだよ
というか実際やることが本に書いてある事を講義するらしいし
プログラムってナニ?ってレベルの人に合わせるからペース合わないらしい
講師もぐぐって調べるだけのレベルばっかだから意味ないな
実際就職に役立つかというと
>>512 まんま
職業訓練は学校でもないから○○卒業とか書けないし
ただ無収入の場合訓練行けば毎月10万位貰える仕組みはあるなw
Android2.Xで、ListViewをフリップではなくてプログラムでスムーズに上下に動かした いのです。 Android3.0にはsmoothScrollByOffsetなどの関数が用意されており、動作を確認でき ていませんが、おそらく期待する動作をするのではと思っています。 同じようなことをAndroid2.Xで実装するにはどのような方法がありますでしょうか? scrollByなど色々試してみましたがどうもうまくいきません。
>>520 フリップではなくて、フリックです。
ごめんなさい。
>>522 ありがとうございます。
Scrollerのコンストラクタ引数に、ListView.getCotex()を指定すれば良いのでしょうか?
それともthisでよいのか?
Contexの概念がよく分からないのですが、まずは試してみたいと思います。
Webviewで画像を表示した場合に端末の画面からはみ出てしまいます。 リサイズして表示するにはどうすればいのてしょうか?
Javaも初心者なので既存ソースを見ながら学習しようとしています。 今LunarLanderのプログラムを見ながら修正しようと思い、 壁判定を追加しようとしました(壁当たるとX軸速度が反転) 以下のようなメソッドを追加したのですが、右側は判定するのですが左側が音沙汰なし… 原因は何でしょうか? //mXの移動後に画面外に出るかの判定 Display disp = ((WindowManager)mContext.getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay(); int width = disp.getWidth(); if(mX < 0){ leftCrash(); }else if(mX > width ){ rightCrash(); } public void rightCrash(){ // X軸の速度反転 mDX = -Math.abs(mDX); } public void leftCrash(){ // X軸の速度反転 mDX = -Math.abs(mDX); } 以上宜しくお願い致します。
>>524 該当Viewの解像度を取得して画像サイズを相対的にリサイズする。
(ケースバイケースだが)その際にセンタリングもしてあげると、ユーザは喜ぶ…かも。
ソース見てないからあれだけど、mXとmDXは別物? ※たぶん同一情報と勝手にエスパー(笑) > //mXの移動後に画面外に出るかの判定 > Display disp = ((WindowManager)mContext.getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay(); > int width = disp.getWidth(); > > if(mX < 0){ > leftCrash(); > }else if(mX > width ){ > rightCrash(); > } if ((mX < 0)||(mX > width )) { lrCrash(); } > public void rightCrash(){ > // X軸の速度反転 > mDX = -Math.abs(mDX); > } > public void leftCrash(){ > // X軸の速度反転 > mDX = -Math.abs(mDX); > } これは内容が同じなので纏める。 public void lrCrash(){ // X軸の速度反転 mX = -Math.abs(mX); }
>>525 こうじゃね〜のか?
public void leftCrash(){
// X軸の速度反転
mDX = -mDX;
}
結局左右で速度反転するんだから、どちらも同じ処理で良いじゃん。
>>527 >>528 早速のお答ありがとうございます
左右で処理を分けたのはそれぞれ機体の向きの描画変更処理を入れるつもりだった為です
527殿の助言の通りに処理した所左右の判定には成功いたしました。
528殿の助言の用に変更させていただきました。
この後mDXの0大小で描画を選択させようと思います
>>525 mDXが x方向の移動量なら、、、
leftCrashの中でmDXに必ずマイナス値が代入されるのが問題なのでは?
それと符合を反転させるなら、mDX=-(mDX)で良いかと
>>525
なんか公式マーケットからメールきたな
532 :
デフォルトの名無しさん :2011/04/27(水) 12:26:06.01
家計簿アプリを作ってて、個々の日付の使った金額の表示はできるようにしたんだけど、 今までの残高を表示させるようなプログラムも書きたいんだけど、 なんかうまい方法ありますかね?さっぱり分からない
その個々の金額を全部足して合計するだけなんじゃないの?
534 :
デフォルトの名無しさん :2011/04/27(水) 12:40:29.96
そうすると例えば二月二日と四日に金額書いてた場合、あとから三日の残高を見ると四日の分も足されちゃう
>>534 出入金が無くても毎日自動で記録するようにして、3日のデータには3日までの残高を記録しておけばいいじゃん
>>527 absって絶対値じゃないか。
今頃気付いたw
537 :
デフォルトの名無しさん :2011/04/27(水) 13:25:45.47
知っていたら教えてください。 EditTextで文字等を入力する時に ソフトウェアキーボード&予測変換候補が表示され EditTextがキーボード裏に隠れてしまいます。 対処法としてマニフェストファイルに android:windowSoftInputMode="adjustPan"を指定しても改善されませんでした。 やりたい事はEvernoteのログイン画面の様に ソフトウェアキーボード&予測変換候補が表示された場合、 EditTextが画面上部に移動し表示できるようにしたいです。
>>535 そんな設計部下が出してきたらぬっころすぜ。
以下のような構成で、標準widgetを継承したクラス内で100msごとに定期的に処理を 行うサンプルを作ってみましたが、どうもHogeTick()内から、HogeClass内の変数Aが うまく参照出来ないようです。Handlerからコールされる場合、メモリ空間が共有出来ないような 制限が何かあるのでしょうか? Home.java: public Home extends Activity{ ... public void onClick(View v){ HogeStart(); } } hoge.java: public HogeClass extends xxx_widget{ private int A;/* 機能が動作するかどうかのスイッチ */ private final Handler handler = new Handler(){ @Override public void handleMessage(Message msg){ HogeTick(); handler.sendMessageDelayed(obtainMessage(), 100); } }; public void HogeStart(){ A=1;/* 動作オン */ } public void HogeEnd(){ A=0;/* 動作オフ */ } private void HogeTick(){ if(A==1){ /* 何かやる */ } } }
542 :
デフォルトの名無しさん :2011/04/27(水) 16:18:55.51
>>542 Android SQLite でググればいっぱい出てくるよ
SQLiteじゃなくてもいいと思うけどDBは使ったほうがよさげ
意味分からん 変数に残高入れとけばいいだけじゃないの? プログラミング初心者ならAndroidじゃなくてCUIからやったほうがいいんじゃないの
545 :
541 :2011/04/27(水) 16:49:11.01
>>542 その日までに使用した全金額を集計して、その金額を初期の所持金から
引けばいいだけじゃないか?
集計のしかたは、DBのテーブル設計がどうなっている分からんと
答えられんな。
あぁ、SQLがわからないってだけなのかw
基本的にはsum、total辺りで解決出来るけど、詳細は
>>546 の言うとおり設計次第だな
548 :
542 :2011/04/27(水) 17:11:10.17
どうやらSQLの知識不足のようです もうちょっと勉強してきます、ありがとう
549 :
デフォルトの名無しさん :2011/04/27(水) 18:06:54.59
TabActivityで、タブを管理するクラスから タブの中身であるclassのレイアウトをいじることはできますか? 例えば、タブを管理するクラスに設置されているボタンを押すと、 現在表示されているタブの中にある画像を変更する、というような。
SQLはAndroidに限らず何かとお世話になるもんだし 覚えておいた方がいいね、簡単だし
SQLiteってAndroidとJava(PC)じゃ扱い方一緒にすることはできないよね
初心者で申し訳ありませんが ndk-r5bで作ったプログラムの速度がARMコードよりthumbコードの方が 速いのですが、そんなもんなのででしょうか?・・・
553 :
デフォルトの名無しさん :2011/04/27(水) 20:41:29.34
初心者ですがデザインパターンはやっておいたほうがいいですか?
>>553 要らない。
Javaの基本と、Androidアプリのフレームワーク理解に努めるべき。
Androidのソースいつも読んでればデザパタは自然と身につくよ つか、ソース読んでて頭こんがらがってきたら一度デザパタの本とか読むとスッキリするよ
556 :
デフォルトの名無しさん :2011/04/27(水) 21:01:50.62
デザインパターンとかどうでもいいから、しっかりとフレームワークの解説が実例コードと一緒に乗ってる日本語のサイトないかなぁ。 DatabaseHelperとかいうの使ったら、DBが開けませんみたいなエラーが出まくって、全然楽に使えなくて悩んだ。
デザパタを持ちださんとあかん時点で設計としては十分汚い。
結城浩の本を買おうかと思ったんですがいらないということですね。 ちなみに結城さんのデザインパターンマルチスレッド編もAndroidには不要ですか?
559 :
デフォルトの名無しさん :2011/04/27(水) 22:16:29.10
>>552 thumbコードで吐き出す設定方法教えてくれーー
thumbコードだと命令のバイト数少ないからフェッチ時間が短いとかの関係じゃね
560 :
デフォルトの名無しさん :2011/04/27(水) 22:16:58.05
>>559 デフォルトでthumbコードだから何もしなくていいよ
LOCAL_ARM_MODE でぐぐるといいよ
スレッドならゲーツの本を読むべき
Javaでスレッドなら、doug leaじゃね? 良翻訳の本は少ないけど
ExpandableListの子要素を削除したいんですが、どのように実現すればいいでしょうか
565 :
564 :2011/04/28(木) 00:02:00.01
すみません,言葉足らずでした。ちゃんと書きます。 ExpandableListを作りました. 子要素を選択したときに,リストから削除したいんです。 リスト操作はadapterを使って行うと思うのですが,ExpandableListAdapterには ListAdapterにおけるremove的なメソッドが見当たりませんでした。 どうすべきでしょうか。
>>565 お前は既にArraylistの参照を持っている。
568 :
564 :2011/04/28(木) 01:17:13.06
>>566 そっちからいくんですか!
できました。ありがとうございました!
>>549 ↓これで表示中のタブのViewGroupが取得できるから、そこからたどればいんじゃね?
RelativeLayout layout = (RelativeLayout)tabHost.getCurrentTabView();
>>537 俺もどっぷり浸かったがそれは違うわw
androidは仕様がどうとかじゃないから
お前の画面全体のレイアウトがわからないので答えようが無い
なんでlinux板にandroidのスレが無いんですか?
eclipseで開発しているのですが、実機デバッグ時にインストール?された実行ファイルが残る場合と削除される場合があります。 複数のプロジェクトを読み込んでいるときにそのような状態になっているような印象もありますが、 削除されるかされないかはどこかで設定するものなのでしょうか? それとも何らかのルールの下、削除されるかどうかを判断しているのでしょうか。 (複数のプロジェクトでパッケージ名は違いますがプロジェクト名などはもちろん違います)
開発者IDが埋め込まれてるので 同じアプリで違うIDだと更新されない
576 :
デフォルトの名無しさん :2011/04/28(木) 23:46:22.75
携帯としてじゃなくて、アプリ作成用にAndroid機種買おうと思ってるんだが、 電話出来なくてもいいから、出来るだけ安くて電池持ちがいい機種ってないだろうか
IDEOSじゃね。ただし画面はQVGA スマホで電池持ちがいい機種はないと思うw
電池そのものに進化してもらわにゃ無理だわな
電池持ちは諦めた方がいいですか。 日本語のアプリ作ろうとしたらさすがにQVGAはハードルが高いなぁ
ht03aの中古なんていかが
IDEOSはマルチタッチ非対応なのが注意かな 俺は中古のX10白ロム買った WVGAだし速度もまあまあ早いし使い易い 擬似マルチだからその辺厳密に拘るとアレだけど
584 :
583 :2011/04/29(金) 11:12:23.38
javaSDKは64bit入れれ
画像を読み込み、手書きで追記し、保存するアプリケーションで 画像サイズのオフスクリーンバッファを用意し 手書き線はタッチイベントを取得し、Canvas.drawPathで描画しております。 この手書き機能とスクリーンに入りきらない画像を読み込んだ際の、 画像内のスクロールや拡大、縮小などの機能を組み込むとき、 どのようなアルゴリズムで実装すればよいのでしょうか?
ビットマップ操作のアルゴリスムじゃまいか
SurfaceViewからAlertDialogを表示するのは無理なんでしょうか? SurfaceViewで描画した自作ボタンを押下→ダイアログ表示するみたいな動作にしたいんですが何故か例外になってしまいます…
UIスレッドでしか出せませんが、そのへんは問題ない?
>>518 亀ですまんが。
読み込み終わった動画の幅高さはどうやって取得するのかわからんけど、
LayoutParams p = mVideoView.getLayoutParams();
p.width = 好きな幅;
p.height = 好きな高さ;
mVideoView.setLayoutParams(p);
でサイズだけは変更出来るんでないかい?
どのタイミングでそれを実行するのか問題になりそうだけど。
少なくとも俺はこの方法を使って、動画再生中にピンチ操作で拡大縮小処理とか作れたぞ。
591 :
588 :2011/04/29(金) 19:03:58.59
>>589 ありがとうございます。onTouchEventからダイアログを生成してるのでメインスレッドのつもりです…
エラーの内容はこんな感じです。
Uncaught handler: thread main exiting due to uncaught exception
android.view.WindowManager$BadTokenException: Unable to add window -- token null is not for an application
AlertDialogのコンストラクタに渡してるコンテキストがアクティビティじゃないとか
>>586 マルチタッチでやれば
ピンチイン、アウトでズーム
二本指ドラッグでキャンバス移動
二本指回転でキャンバス回転
594 :
588 :2011/04/29(金) 19:32:14.38
>>592 あ!できました!
getApplicationContext()を渡してました。本当にありがとうございます!
595 :
586 :2011/04/29(金) 20:51:01.13
>>593 ありがとうございます。
例えば編集済の500*400のbitmapに対して、
300*200のスクリーンがあり、そのなかをスクロールする場合、
500*400画像の中から300*200分を切り取って表示しています。
これだと、その後の手書き実行の際、整合性が取れなくなってしまいます。
ここで悩んでおります。
リスト形式のダイアログを出したいんですが、 各リストアイテムの中に1行の文字列しかないサンプルソースしか見つかりませんでした。 1個のアイテムの中に数行の文字を表示したい場合はどうすればいいでしょうか?
>>596 アダプタを自分で作る
BaseAdapterを継承して、getViewで数行の文字を表示するようなビューを作って返せばよい
>>595 手書きのバッファも画像と同じサイズで作れば?
>>597 ,598
ありがとうございます。
すみません、ちょっと質問内容が違っていました。
複数選択リストを作りたいとき、文字を数行表示させるにはどのようにすればいいでしょうか。
setMultiChoiceItemsは使わずにadapterでチェックボックスを含んだviewを返せばいいんでしょうか?
601 :
583 :2011/04/29(金) 22:57:43.29
>>585 ありがとうございます。
JavaのJDK,JREの64bit版も入れてパスを変えたり試してみましたが、
やはり起動しませんでした。
なにか対策はないでしょうか・・・・
602 :
デフォルトの名無しさん :2011/04/29(金) 23:01:22.44
3辺の長さを入力すると、三角形を成しているなら面積、成さないなら「三角形になりません」と返してくれるプログラムをcで作りたいのですがどうすればいいのでしょう?
603 :
デフォルトの名無しさん :2011/04/29(金) 23:07:10.63
プログラミングまったくの初心者なんですがなにから始めればいいですか?
605 :
デフォルトの名無しさん :2011/04/29(金) 23:13:14.43
>>602 まず最長辺を求める、if文とかで
そして三角形にならないパターンは、最長辺≧他二辺の合計、の時だよね
三角形になる時は「ヘロンの公式」でググってくれ
>>600 文字を数行の意味が不明だが、他はそんな感じ。
選択したpositionが入ってくるからそれを全部
裏で保持して、見た目はチェックボックスでも、
imageviewの画像貼り替えでもお好きにどうぞ。
>>606 よくわかりました。ありがとうございます。
608 :
デフォルトの名無しさん :2011/04/30(土) 01:11:18.09
AndroidSDK逆引きハンドブックという本を買いました。 なんと4410円もしました なぜか2、3000円くらいかなぁって思い込んでたからレジでびっくらこきました(核爆) おかけでエルシャダイが買えませんでした(涙目) 4410円を回収するにはどの程度のアプリを作ればいいのでしょうかねぇ。。。
何でそんな本買っちゃうんだろうなアホは。。 公式ref見るために英語勉強した方がいろいろ捗るだろ。。
>>608 定期的に使ってもらえるようなアプリに広告を乗っければいい。
すぐ元はとれる。
611 :
デフォルトの名無しさん :2011/04/30(土) 01:30:23.09
初歩的な質問だったらすみません。 ある画面上にある <WebView android:id="+id/webview1" </> のようなWebViewをすべての画面に表示したいのです。 webviewのコピーではなくwebviewのインスタンスは一つで、 全画面に共通して表示させたい。 広告みたいなイメージです。 そのように単一のwebviewインスタンスを全画面に配置する もっとも簡単な方法は何でしょうか
日本語でおk
613 :
デフォルトの名無しさん :2011/04/30(土) 01:55:09.38
611です。 補足ですが、全画面=全ページ(全activity)という意味です。 それぞれのActivityの画面ごとに別のレイアウトxmlファイルがあるんですが、 それらすべての画面で同じwebviewを表示させたいのです。
>>595 オフセット値を記録しといてその都度足せばいいんじゃないの?
そういう単純な問題じゃない?
標準のアラーム(目覚まし時計)をインテントから起動する方法ってありますか? ブラウザとかは参考例が多くあるのですが…
>>601 JDKのバージョン複数入ってないか?
古いバージョンが入っている状態で 1.6.0_25入れても、
前のバージョンは消えない。
以前、複数のバージョン入っていてトラブったことがあるので
書いてみた。
617 :
デフォルトの名無しさん :2011/04/30(土) 07:32:33.46
初心者じゃないようのスレってもう立てないの?
>>613 複数のActivityに同じインスタンスを表示する方法は知らないけど、
Activityは1つにして、
SetContentView で表示する内容を変えてみる、
とか
ViewFlipperを使って切り替えたい部分を差し替える、
とかしか思いつかない。
620 :
デフォルトの名無しさん :2011/04/30(土) 08:43:02.01
Activityと画面のActivityの間に共通クラス挟むとか
きれいなやり方じゃないけど シングルトンのクラス作ってそこに Webview をもたせて各 Activity からアクセスする、とか?
622 :
583 :2011/04/30(土) 10:21:59.58
>>616 ありがとうございます。
確認してみたのですが、
jdk1.6.0_25
jre6
だけがインストールされている状態でした。
>>583 エラー的に環境変数の問題な気がするけど・・
「swt-win32」でぐぐってくれ
624 :
デフォルトの名無しさん :2011/04/30(土) 11:20:11.69
文字コードってMS932のままでおkですかね? UTF-8とかにした方がいいんですか? やってみたら日本語は化けましたが・・・。
>>615 参考になるかわからないけど、
Retro Clock Widgetってアプリで出来てたよ
sqliteってjdbcでも使えんだな
Threadについて聞きたいのです。 どの解説本でもnew Thread(new Runnable(void run()))となっていますが、Java的にはnew Thread(void run())でも問題ないのにわざわざ長いほうを記載しているのはなぜでしょうか? Androidの場合、前者が適しているのでしょうか?
>>625 こういったアプリがあるということは、一応起動する方法があるということですね。
どこかに標準アプリのパッケージ名一覧とかないだろうか
参考書なんて買う奴いるの? 俺は全部ネットで調べてやってるぞ
英語が読める自慢をするスレはここですか
ネット=英語なのかよ ちゃんとぐぐってんのか?
書籍は書籍で利点があって、それを不要だと思うならそれでいいんじゃない ネットで十分ならそれにこしたことないし 参考書買うやつが信じられないみたいな聞き方して どうしたいのかよくわからんが
自己主張したい年頃なんだろう そっとしてあげるのも優しさだぜ
今まで、自分用にToDoアプリやテキストエディタみたいなものを作ってきました。 そろそろマーケットへ公開用のアプリを作ってみたいのですが、どのようなアプリが需要があるのでしょうか? あくまでゲームではなく、ツール的なものを狙っています。 また、OSのバージョンはどこまでサポートするべきでしょうか? シェア的に2.x以降をターゲットにしようと思うのですが、1.xも対応させるべきですか?
そんなのも自分で考えろよ。
そんな事すら他人に聞くとか一体なんなんだ・・ もうどんなアプリが需要あるか聞くアプリでも作ってこい
自分の欲しいものを作ると言うスタンスが普通と思ってたんで、他人の欲しいものを作ると言うのにビックリした。 確かに市場調査は大事かもしれんが、一攫千金を狙うならそう言うスタンスじゃ成功しないだろうね。
あっちのスレはなくなったんか
でもまあ、プログラミングじゃなくてマーケティングの話だから ここで聞いてもしょうがないとおもうけど。 むしろ、家電板あたりで聞くかリサーチする方がいいんじゃなかろーか。
はじめまして、質問です。 画像を表示しているGridViewがあります。 画像をタップしたら別Activityに遷移しているのですが、 画像をタップされたら画像の周りをハイライトするような (画像の周りに軟らかな光のような見た目) エフェクトをつけたいと思っておりますが、shapeをつかっても アニメーションを使ってもどうにも上手く行きません。 こうすればいいよ!とかこれ使ってみたら? などありましたら是非ご教授頂きたく。 以上、よろしくお願い致します。
画面回転とかでアクティビティが再スタートするときって アクティビティのデータを保存・復元する必要があるじゃない? それって、メモリのデータ→ストレージに保存→メモリに復元、っていう無駄なことやらないと駄目なの? ずっとメモリに保持し続ける方法ってないんすか?
onRetainNonConfigurationInstance と getLastNonConfigurationInstance を使って受け渡すのが正統なやり方
ちょっと携帯からなんで思い出せないけど、activityのonSaveStateっぽいのでBundleに保存して、onRestoreStateっぽいので復元がスマートなやりかたかと。
>>647 ほほう、なんかそれっぽい調べてみるか
>>648 これやるとまさしくストレージに保存されるんじゃないの?
>>636 まずは友達に聞いたら?
合コンでも良い
addContentView()でこれまで出していたViewに重畳してViewを出した場合、 これまで出していたViewにキーイベント等を通知させない方法ってありますか? 下のViewも触れちゃってカオスです…。
すみません。メニューを押してオプションメニューを表示させ、 何かをタッチしたあとアプリの画面に戻ったとき、 画面に一回touchして初めて操作が反映されるのですが、何が原因かわかりますか? そのため、ファイル保存もメニュー押しても出来ていない感じです。
>>653 操作が反映される、の意味がよくわからない。
メニューでやってることとかもう少し詳しく言ってくれないと。
リストのデータ操作したけど表示が変わらない、とかだと notfiyDataChanged を呼んでないからじゃね?とか言えるけど。
webkitのC++コード(mydroid/external/webkitあたり)をeclipseでデバッグする方法ってありますか?
656 :
デフォルトの名無しさん :2011/05/01(日) 13:51:03.29
動的なリストを作って、それを複数個選択して、 選択したものが名前となるボタンを表示したい SQLiteを使って、どうやって実装すればいいでしょうか?
>>656 ・listviewとadapter使う
・adapterに動的なアイテム渡して好きに表示する
・getviewの選択位置でアイテム(テキスト)取得
・buttonにsettext
・・・sqlite出番なし。
658 :
ひみつの検閲さん :2024/12/31(火) 07:25:50 ID:MarkedRes
変数名とかファイル名の命名の仕方を指南してくれるHP教えてください
あと他人に見られても恥ずかしくない様なコメントの仕方なども
久しぶりに開発再開しようと思ったら自分のソースが難解すぎて萎えたorz
>>542 俺と全く同じアプリ作っててムカツク!笑
あと1ヶ月ちょいで公開する予定
SQLiteは簡単だし勉強しといて損はないよ
WebView の縦スクロールバーをカスタマイズして、Fast Scrollbar?(スクロールすると耳が出て好きな場所にスクロールできるようになる) のようなことをしたいのですが、そもそもFast Scrollbarを出すにはどうすればよいのでしょうか ネットを徘徊してるとデフォルトの機能であるようなのですが、サンプルなどが見つからず・・・
ListViewにデフォでついてる
663 :
デフォルトの名無しさん :2011/05/01(日) 15:09:11.39
>>659 全く同じってことはないでしょ〜
まぁ公開したら参考にさせてもらうよ
>>654 すみません。とりあえずメニューをXMLで作成してみます。
私自身も学習でサンプルを見ている程度なので何がなんだか分からない状態です。
>>653 もしかしてOnTouchListenerに処理書いてない? もしそうならオプションメニューの処理はActivityのonOptionsItemSelectedをオーバーライドしてそこに書け。
>>662 ありがとうございます
ListViewではFastScrollEnabled="true"でできました
ですがWebViewでは同様の機能が付いてないようです・・・
このためだけにListViewの中にWebViewを入れるとか変なことはしたくないので、他になにか方法がないか探してみます
>>660 ん〜、あくまで英語苦手で変数名やファイル名を付けるのに苦戦しているので
命名の仕方やルールを指南してくれるのをお願いします。
すみません。
>>663 全く同じではないけど
発想とかが被ってるように感じただけです(カレンダーの日付タッチで詳細表示とか)
っていってもこの手のアプリはみんなそんな気がしますが・・・
avdで作成したデバイスのHOMEキーが効かないのですが、これはそういうものなのでしょうか? エミュレータの右側の仮想キーのHOMEも、ショートカットのHOMEキーもどちらも効きません。 HOMEキーを使用できるようにするための設定が必要なのでしょうか? 試したのは、Android 2.1とAndroid 2.2 google apiの2つです。
>>669 まずは、PCのディスプレイをタッチするのを
やめてみようか。
外部サイトからダウンロードした mp3 ファイルを MediaPlayer で再生しよう としています。ファイルの保存先をSDカードにした時は、ちゃんと音が鳴るの ですが、アプリケーション領域 (getDir("foo", MODE_WORLD_READALBE) で取得) にしたときは、prepare() で OpenFileOrSharedFd Error = -1 とログに出力されて再生に失敗してしまいます。 何か回避する方法はないでしょうか?
>>671 getFDを使って再生させた記憶がある。
673 :
669 :2011/05/01(日) 19:16:18.91
>>671 自分も少し前になったけどファイルのread権限が無いせいだった。
アプリケーション領域へのコピー処理はどんな方法でやってる?
root取ってるなら一旦chmodで権限追加してエラーになるか試してみて。
>>672 できました。getFD()でググったら事例が見つかりました。
>>674 やっぱり別権限で動いてたんですね。
なんと分かり難いメッセージか
>>673 よく言われるけど自己解決でも
原因と解決策を書いとくと次に同じ壁にぶつかった人のためになるかとー。
>>608 値段、安いね。
まともな本は9000〜20000円くらいするのが普通。
678 :
デフォルトの名無しさん :2011/05/01(日) 22:54:47.37
そんな馬鹿高い本は一般書店に置いてねえよw
>>678 一般書店の定義が君とは決定的に違うらしい。
680 :
デフォルトの名無しさん :2011/05/01(日) 23:00:00.20
Amazonでも一万以上するプログラミング書なんてなかなかないぞ
というか Android の解説本で 5000円超えるような本がないような。
682 :
● :2011/05/02(月) 01:04:55.98
Game Programing Gems でも15000円までは行かなかったと思うんだが…… 仮に20000円の本があるとしても、『普通』ではないよな。
病気の人の普通も理解してあげてください
>>642 どなたかご存じないでしょうか?
やりたいことはGridViewの周りに
単色でそっけない線ではなく、
グラデーションのような淡い見た目の
エフェクトをつけるだけなのですが・・・
>>684 1.通常の画像(raw_image.png)とタップされた時の画像(エフェクトをつけた画像(raw_image_pushed.png))をそれぞれ用意
2.↓のような XML(image.xml) を用意して drawable ディレクトリ下に配置
<selector>
<item android:state_pressed="true" android:drawable="@drawable/raw_image_pushed"/>
<item android:drawable="@drawable/raw_image"/>
</selector>
3.GridView に配置する画像のソースに ↑の XML を指定
これできれいに変化はしないけど、タップされた時に画像の変更はできるはず。
そのままコピペで使われても動かないので修正、↓ね。ファイル名は適当に。 <?xml version="1.0" encoding="utf-8"?> <selector> <item android:state_pressed="true" android:drawable="@drawable/raw_image_pushed"/> <item android:drawable="@drawable/raw_image"/> </selector>
実機でDDMSのファイルエクスプローラーを使ってdataディレクトリの中身を見るのは不可能でしょうか? 実機はGalaxy S、root化済みです
>>688 見れません
ってよりこれadb shellをグラフィカルにしただけだよね?
rootモードでどうやって実行するの?
そもそも/dataはrootじゃなくても見られるはずだが
>>690 エミュレータだとそうだけど…
実機ですよ?
ファイラーを作ってて疑問点があり、解決法を教えて下さい。 root Explorer 等は、root 権限の必要なフォルダ内の閲覧が可能ですよね? どの様にすればroot 権限をファイラーに実装出来るのでしょうか?
>>691 解答者が馬鹿だとどうしようもないな、好きなの選べ
dev phone買う
ギャラのROM書き換え
エミュレータで頑張る
>>694 ありがとうございます
root化だけじゃダメなんですね…
エミュレータで頑張ります
>>693 提示して下さった単語を検索すると、linuxコマンドをアプリ内から実行する様ですね。
自分にはちと敷居が高いかも知れませんが、試行してみます。
ありがとうございました。
>>694 root取ってるって書いてあるだろ
コマンドプロンプトから
adb root
でadbがrootで起動する
IS01だが普通に/dataの中は見られたけど。
質問も解答も馬鹿ばかり ro.secureですべて解決
ちなみに質問はGalaxy Sについてだろ? ギャラは初期状態でro.secure=1 boot.imgを焼き直せ
IS01はデフォルトでro.secureが0にはなっていないが、 rootすらいらずにノーマルで/dataにアクセスできるよ。 原因があるとすれば別だろう。
どっちにしろ ro.secure ro.debuggable persist.service.adb.enable このなかのどれかだろ IS01が基準のこのスレ…
どうだっていいがIS01人気あるんだなwww
>>704 どうダメだったの?
もしかしたらエディターで開いて値変えたとかじゃないよね?
そんな馬鹿ことしたわけじゃないよねw?
お前ら喧嘩するな ro.secure=0 ro.debuggable=1 persist.service.adb.enable=1 に設定しとけ ちなみにエディターで変更しても意味ないぞ bootイメージを変更しろ この話はおしまい
>>703 そりゃ8円運用祭りでゲット人が多いからなw
俺もだが
Smartiaな俺は異端か
Eclips糞すぎえ嫌になる。VisualStudio使いたい
俺から言わせるとVSの方が糞 という感じに、完全に好みの問題だから、慣れろ
エディタなんて好きなの使えばいいじゃない vsでもjava出来るんじゃね
いっその事、バイナリエディタ使え。
GraphicsActivity内でメニューを作成して、中のメニューをクリックしたら メソッドを呼び出すという感じの動作は可能ですかね?
androidでCSVの読み込みの仕方がよくわからないから助けて。 res/rawにaaa.csvを配置してるんだけども Resouces res = getResources();でリソースを取得して 画像ならaaa = BitmapFactory.decodeResource(res, R.drawable.aaa);とするんだろうけど CSVならどうすれば取得できる?
721 :
718 :2011/05/02(月) 23:47:51.32
>>719 &720
dクス
ActivityからしかgetResourcesできないのかぁ
STG作ってるんだけど、敵クラスからステージの敵配置&移動CSVを取得するには
getメソッドを追加するしかなさそうだね。
>>721 Contextの参照渡せば良いだけだろ
アプリが存在してるってことはContextはどこかに存在してるわけだし
TabHostに設定しているActivityのひとつをSingleTopモードにしているのですが、 そのActivityに実装したQSBで検索を実行すると別のActivityが生成されてしまいます。 TabHostに設定していない単独の状態であれば、きちんとSingleTopの動作になるのでTabHostが関係していると思うのですが、 なにか上手い方法はないものでしょうか?
質問です。
ListViewの中のArrayAdapterにて、
WebViewとTextViewとImageViewを組み合わせています。
ImageViewはsetFocusable(false)にすることでonClickが拾えたのですが、
WebViewはsetFocusable(false)にしてもonClickでは拾えず、
onTouchのリスナーでしかイベントを拾えませんでした。
どなたか解決策をご存じないでしょうか?
こちらで試してみたことは以下です。
・ImageViewやWebViewをListViewに組み込む。
→ListView自体(TextViewなど)をクリックした際のイベントが取れなくなる
→
ttp://kuniakisuzuki.cocolog-nifty.com/blog/2011/03/androidlistview.html こちらを参考に解決を図る
・WebViewをXMLでandroid:focusable="false"にする
→ImageViewはXMLでの定義でOKだったが、WebViewは駄目だった
相変わらずListView自体のonClickItemイベントが反応しない
・WebViewをソースでsetFocusable(false)にする
→ListView自体のonClickItemは反応するようになったが、
WebViewのonClickが反応しない、onTouchでなら反応するが、
タッチなのでフリックやスライドにも反応してしまいNG
なお、WebViewはWeb上の画像を表示するためだけに使用しており、
WebViewの中のリンクをクリックする必要などはありません。
(fromHTMLはimgタグのborderを解釈できずNGでした。)
WebViewクリック時はListViewのonClickItemと同様の処理を行います。
725 :
デフォルトの名無しさん :2011/05/03(火) 02:40:44.63
すいません。 初歩的な事になりますが、 俗に言うきせかえアプリとはホームアプリと言う物になるのでしょうか?
726 :
デフォルトの名無しさん :2011/05/03(火) 04:37:53.93
すみません。アンドロイド向けで作りたいアプリがあるんですが、プログラミングさっぱりわかりません。 誰かアルバイトしてくれる方いませんか?開発環境とプログラミングの方法論を教えてくだされば結構です。 一日一万円だします。家は新宿です。スレ違いだったらすみません。
そんなんでも講習受けにいったら、一日数万はとられるだろ。安すぎ。
俺今失業中だからやってもいいわw近いしw まあ物凄く深い知識求められると無理だけど
729 :
デフォルトの名無しさん :2011/05/03(火) 04:58:13.64
>>728 ほんとですか!では何かさらしてもいいアドレス教えてもらえませんか?
>>729 いやあの、マジな話だったのか
流石にリアルとお金絡む話は荒れそうな気が・・w
金取る事になるとこっちも相応の責任持って接しなきゃダメだし
トラブル等も考えて割りに合わないってのも大きいし、
簡単な部分はネットで調べて済ませてから
プログラムでわからん部分をここで聞くのがいいんじゃないかい?
731 :
デフォルトの名無しさん :2011/05/03(火) 05:14:18.16
いや気軽な感じで大丈夫です。開発環境を整えてもらうのと、プログラミング言語の文法の 検索の仕方とか記述の仕方とか方法論的なことだけ教えてもらうので十分です。 僕は学生です。試験前に後輩にちょっと勉強教えてあげるみたいな感じで十分です。 よろしくお願いします。
まずはGoogleの使い方でも覚えた方が有意義
その1万で参考書数冊買って読めばおつりくるぞ 学生なら尚更
734 :
デフォルトの名無しさん :2011/05/03(火) 05:47:53.49
時間がないんです。わかっている人にさっと教えてほしいんです。 たぶんわかっている人なら一時間くらいで十分なはずです。
736 :
デフォルトの名無しさん :2011/05/03(火) 06:10:20.92
わかりました。もう少しやってみます。 さっき持ってる雑誌にしたがってやってみたんですが エミュレーターを動かすところで詰まりました。 コマンドプロンプトを起動してemulator-avd sdk2.2と打てばエミュレーターが作動するはずなのにしません・・
匿名掲示板で先生探しするよりは自分で調べてやった方が早いって意味ね アプリ作るのも結局イチから全部わからない事だらけになるし 時間が大量に必要なのは確定的 本当に時間が無いのなら誰かに作って貰った方が効率的だな 最も重要な事を言うと グーグル先生より詳しい人はほぼ存在しない
たしかにグーグル先生が最強。 でもグーグル先生は古い情報も普通に出てくるから注意。 古いバージョンと新しいバージョンでやり方が違うことが結構あったりする。
740 :
デフォルトの名無しさん :2011/05/03(火) 08:12:53.97
すみませんApp Inventorを使い始めたのですがこれって日本語化どうやってするんですか??
>>740 GWをもっと有意義なことに使うべきだ。
今までiPhoneいじってて、Androidの開発機が一台欲しいんだけど とりあえず一番台数出てるのはGalaxy Sでいいのかしら。 ドコモの中古でいい?それともSIMフリー版輸入したほうがよかですか、その辺をひとつ
> たぶんわかっている人なら一時間くらいで十分なはずです。 たぶんこれが大きな間違い
>>742 Android 2.3 + 800x480のを狙うがよろし。
学生で1日1万出せるってなんだよ 金持ちかよちくしょー
746 :
656 :2011/05/03(火) 10:33:14.20
ありがとうございます。 Listviewに入力したリストを、設定ファイルとして保存したいのですが、 infファイルを作って、読み書きする以外にいい方法がありますか?
>>742 今ならarcがいいんじゃね
ギャラと同じくらいの値段で2.3だし
748 :
デフォルトの名無しさん :2011/05/03(火) 12:44:39.64
質問させて下さい。 Serviceを起動した状態で、ハードウェアの「戻る(BACK)キー」が 長押しされたかどうかを、その起動したService上で検知したいと思っています。 下記のようにしてみたのですが、onKeyLongPressのLog.dは実行されません。 -------------------------- import android.app.Service; import android.view.KeyEvent; import android.util.Log; public class NantokaService extends Service implements KeyEvent.Callback { @Override public boolean onKeyLongPress(int keyCode, KeyEvent event) { if (event.getKeyCode() == KeyEvent.KEYCODE_BACK) { Log.d("NantokaService", "onKeyLongPress"); return true; } return false; } } -------------------------- ServiceクラスはKeyEventに関するメソッドを持たないようなので KeyEvent.Callbackインターフェースを実装しているのですが、 そもそもこのようなやり方で正しいのでしょうか? (Eclipse + minSdk 7)
んでそのリスナーをどこに登録する気だい?
750 :
デフォルトの名無しさん :2011/05/03(火) 13:04:39.99
>>749 onKeyLongPressをオーバーライドするのではなく
onCreateにリスナーを作るべきということですか?
いや、リスナーをビューなりアクティビティなりに登録しないとコールバックは呼ばれないでしょ? 結論から言うとサービス単体で入力を受け取るのは無理 その時点でキー入力を受け取れるビューにリスナーを登録しないといけない 出なきゃキーロガーとか簡単に作れちゃうよね?
>>736 emulatorと-avdの間にスペースが必要かも
753 :
デフォルトの名無しさん :2011/05/03(火) 13:57:55.15
>>751 理解しました。ありがとうございます。
ハードウェアキーの長押しという部分は変更できないので、
intent.actionで代用することにします。
>>753 長押しでのIntentは他のアプリがデフォルト設定されると動作できないし
ノーティフィケーションじゃだめなの?
>>754 なるほど、挙動としてはそちらの方がスマートかもしれません。
検討してみます。ありがとうございます。
>>752 単にPathが通って無いだけかも知れん。
エラー内容が提示されていないから、エスパーだが。。
757 :
デフォルトの名無しさん :2011/05/03(火) 21:39:31.02
凄い初歩的な質問ですが、最初に、 public void onCreate(Bundle savedInstanceState) で書き始めると思いますが、このonCreateの部分は分かるんですけど、 引数のBundle savedInstanceStateってなんですか?
>>757 長期間バックグラウンドに回ってたりすると、OSが勝手にアプリを殺したり復活させたりする。
復活したときには前世の記憶はないので、殺されるときに来世に引き継ぎたい記憶をsavedInstanceStateに書いておく。
760 :
デフォルトの名無しさん :2011/05/03(火) 22:14:14.51
なるほど、ありがとうございます
761 :
デフォルトの名無しさん :2011/05/04(水) 00:05:44.06
736です。 打ち込むとemulatorは内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッジファイルとして認識されていません。 ってでます。 一応PATHに付け加える作業はしたのですが・・・
>>761 なにをpathに付け加えたのかな?
windowsなら、${インストールしたディレクトリ}?android-sdk-windows?toolsにpathを通す必要があるよ
それと、もしGUIで環境変数を設定してるなら、DOSブロンプトは再起動する必要あるから
>>762 書き込みミス
?は半角の¥に置き換えて読んで
764 :
デフォルトの名無しさん :2011/05/04(水) 01:02:43.07
すみませんさっぱりわかりません・・ コントロールパネルからシステムの環境変数でpathの後に C:\android\tools;C:\android\platform-toolsを付け加えました。 すみません・・
ExpandableListViewで、親要素に サマリーをつけることはできないのでしょうか? 子要素はExpandableListAdapterのコンストラクタで指定すると サマリーをつけられるのですが、同じようにやっても親要素には つけられません。 どなたかお力を貸してください・・・
申し訳ありません、自己解決しました。 引数にandroid.R.layout.simple_expandable_list_item_1だったのを2に直せば サマリー表示されました。 試さずに書き込んですみません、出直します…
>>761 それはパスがきちんと設定されてないから出る事象だね
そもそも君はDOSプロンプトで弄る必要性があるのだろうか。
eclipseで開発するんだろうしあまり触る必要ない部分だと思う。
たとえば
>>735 の内容とか、パスの設定とかなしで進んでる。
知ってて損もないけど、必要になった時に改めて・・でも。
急いでるんだろう?
Eclipseで環境揃えようとしてるんだけど ユーザーフォルダに勝手に色々と作るのをやめてほしい… 日本語ユーザ名だったから、半角文字のユーザつくってプロファイルコピーしたにも関わらず コピー元の日本語ユーザ名のフォルダに勝手にファイルを作りに行ってエラー吐く 普通にC直下にフォルダつくってそこで全部作業してもらいたいけど無理なもんかね…
756な俺は、これからエスパーって名乗る事にしようw
736はやっぱり知ってる人を呼んで、まずは環境とかそういったとっかかりを教えて貰った方が早いよ。 新宿なら俺、行ってやってもいいが。 と言っても、俺も自信はないから金はもらいたくないな。 誰か気軽に呼べる知人がいるといいんだけどね。
>>767 つか。そもそもエミュレータを直接起動することって無い気がする
>>768 eclipeのせいじゃないよ。
ワークスペースをユーザーフォルダ下に設定してるだけでしょ。ワークスペースをCドライブ直下とかにしてみ
>>772 俺もやったことないわ。
ADBはよく弄るが。
>>767 >DOSプロンプト
WindowsXP以降にはそんなもの存在しないんだが、
お前は未だにWindows9x系でも使っているのか?
>>773 ワークスペースはC:\workspaceってフォルダにしてる
日本語ユーザ名のところに.androidを探しにいって
いまログインしている半角ユーザ名のところに.androidを作ってくれないんだよなぁ
ユーザプロファイスのコピーっていらん情報までコピーしてしまうんだろうか…
特定の機種向けのエミュレータを起動しようとしたら コマンドプロンプトから起動しないとダメだったりする
>>778 16bitベースで互換性が残されている物と、それ以外は雲泥の差。
そういう部分をいい加減に認識している奴は、別の局面でも間違いだらけの発言をする。
>>779 お前に友達いないのはお前が悪いんじゃない
お前以外のすべての人間が悪い
そういうことにしとこうな
>>779 なるほど。コマンドプロンプトと言うべき、というかDOSプロンプトとは似て異なるものなのね。
スレチな話題を引っ張ってすまん
いまだにDOS窓って言うオッサンが居てウザい
もっと寛容になろうぜ
通はシーエムディーと呼ぶ これ豆な
ついコンソールと言ってしまう・・・
黒いアレって言っちゃう…
バイトコードが別物だからjavaって言うなとか言われそうだ
コンパイル時点ではまだJavaだから大丈夫
cuiでいい
作ったアプリがなぜかDL数<アクティブ数なんだが、これありえるの? まぁ適当アプリだからめちゃくちゃDL数少ないんだけどさ
ちゃんと集計されていれば有り得ないから、ちゃんと集計されてないんだろ。
ドス窓でもコマプロでもいいじゃない
cuiは無くね?
ListViewにandroid.R.layout.simple_list_item_1で日本語のアイテムを入れていますが、 下や上にフリックするとリストのみえていないところも見えるのと同時に、文字サイズが変わってしまいます。 ちょっと経つともどるのですが。原因はわかりますでしょうか?できれば文字サイズ固定で行きたいのです。 ListViewは以下の感じで宣言しています。 <ListView android:id="@+id/trendsList" android:layout_width="fill_parent" android:layout_height="wrap_content" />
アプリ評価のコメントをスパム報告しても 自分が見れなくなるだけで削除はされないんだな
>>796 複数の報告が来たアプリを手作業でrejectするんだろう。
自分の一存でどうにかなるとか何様だと思ってんだ。
>>797 するんだろうって憶測なのになんで偉そうなの?w
クソ評価いっぱいついてるの
かわいそうに
いや797の方が先にキレテルと思うんだがw
ドス窓とかアプリ評価とか 下らないなお前らw
初心者スレだしw
お前ら全員死ねよw
飯行ってくるわw
本スレから流れ込んで来て雑談してる奴しね。
本スレってどこよ? ここが本スレじゃないのかw
>>806 元々あった本スレだな。今は消えうせたが。
今日も2chのどこかで喧嘩がはじまるお
ホント理系ってコミュ障の奴が多いよなw
アダプターを自作してリストビューを作ったんですが, XMLでbackgroundを設定してしまうと,アイテムを選択したときに オレンジ色に光らずに黒くなります. アイテムを選択した時,デフォルトのように光らせるにはどうすればいいですか?
うろ覚えだけど アニメーションを設定するXMLみたいなのと同様に リスト選択時とかの各状態毎に 背景色?画像?を定義するようなモノがXMLで書けたと思う ぐぐってれば多分見つかる
>>811 バックグラウンドの色も
xmlにdrawableだかcolorだかで作って
選択したときの色を指定する
youtube の動画を自分のアプリ内で再生・制御したいんですが、 webview でホストしてもうまく動作しません。 何か方法ないでしょうか?
815 :
776 :2011/05/05(木) 02:47:29.94
Virtual Deviceのリストは、旧ユーザのフォルダを見に行き 起動時には、新ユーザのフォルダを見に行く(新ユーザの所にフォルダが無いとエラー吐く) 両方に全く同じファイルを用意すれば起動できるというワケのわからない状態になった まぁ一応これでも起動するから気持ち悪いけどこれで開発しようかな…
textviewに何か文字列が入ってる時だけ表示して 何も入っていない時は表示せずに領域を詰めるようにしたいです。 できればXMLだけで実現したいので、 selectorを作ってテキストの中身によってvisibleを切り替える方法を 試してみたんですがうまくいきませんでした。 <item android:text="" android:visibility="gone" /> <item android:visibility="visible" /> こんな感じで書いたんですが,だめなんでしょうか?
818 :
817 :2011/05/05(木) 15:37:04.39
すみません selectorの使い方を間違っていたみたいです 他のやり方を考えることにします ありがとうございました
PC買い換えようと思うんですがプログラムするなら CPUはインテル系にしといたほうがいいってホント? Phenom IIとかにしようと思ってたんだけどなんかまずいですかね
>>819 JAVAさんはそういうとこ気にしなくていい言語です。
>>820 レスありがとう
気にしないでAMD系でいきます
ここらへん(
ttp://techbooster.jpn.org/andriod/ui/3162/ )を参考にして,
折りたたみできるリストを作ってるんですが,
SimpleExpandableListAdapterだと画像を表示することはできないんでしょうか?
たとえば,上のリンクのサンプルソースをちょっと変えて,
子要素を
Map<String, String>からMap<String, Object>のリストにしーの,
29行目と32行目を
new String[] { "ICON", "TITLE", "SUMMARY" },
new int[] { R.id.icon, R.id.title, R.id.summary }
というように変えてアイコン画像を子要素につけたいんですがエラーが出まくります.
どうやらImageViewのidを入れること自体がだめみたいなんですが・・・
打開策おねがいします
>>817 > <item
> android:text=""
> android:visibility="gone" />
> <item
> android:visibility="visible" />
>
> こんな感じで書いたんですが,だめなんでしょうか?
駄目だったんだろ?
3行目の/>と4行目の<itemを消してみれば、どーなる?
>>823 おんなじ属性を複数指定して何が楽しいの?
>>822 > Map<String, Object>のリストに(略
Map<String, int>では、あかんのか?
826 :
デフォルトの名無しさん :2011/05/05(木) 19:38:57.92
Windows環境でEclipseからAndroidエミュレーターを起動後、 ×をクリックしても終了しません。 通常は×で終了が普通でしょうか。 タスクマネージャーからも終了しませんのでOSは強制終了 しかありません。とても困っています。 何か解決方法はあるでしょうか。 ググっても情報が少なく分かりませんでした。
>>825 プリミティブ型ってジェネリクス型に適用できたっけ?Integer
>>827 どっちか忘れた。
そんな感じで行けた筈だが、違ったっけ。
>>822 textviewにテキストを表示するからStringを渡す、じゃあ
imageviewに画像を表示するには何を渡す?
って事じゃないの?imageviewができるかどうかは知らね。
ドコモのgalaxyなんですけど3Gとハイスピードをプログラムで切り替えることはできますかね?
>>830 やり方あるなら、是非教えて欲しいもんだ。
>>822 SimpleExpandableListAdapterのソース見てみたけど
固定でsetTextしてるから無理
833 :
822 :2011/05/05(木) 22:57:40.21
>>825 ,829,832
ありがとうございます
どうやら無理っぽいですね・・・
adapter作ります
うーん作ったアプリが初回は起動するけど2回目以降起動しない。。。 メモリ周りが怪しいんだけど、onDestroyで何をしなきゃいけないのかわからない。
>>834 ちゃんと終了出来てるなら、次の子は別プロセスだからメモリ的に独立してね?
GridViewを使って画像表示+名前の表示を実現したいです。 表示する画像をアダプタにsetしていた(確か)ので、名前も同じくsetした のですが、うまく表示されません。 xmlのカスタマイズ?が必要っぽいのですが、理解できないのでさっぱり・・・。 どなたかご教授ください。
>>834 情報無さ過ぎて何も言えない、せめてログぐらい見て
>>835 アクティビティ閉じただけじゃあプロセスは終了しないよ
>>836 GridViewもAdapterViewだから
1項目を表示するためのViewのレイアウトと
そいつを返すAdapterを作ってやれば良い
>>838 レイアウトが画像のみを表示する記述になっているので、テキスト(画像名) も表示させる記述が必要ということでしょうか?
(アダプタには、画像と名前の情報はセットできています。)
すみません、もう少しヒントを頂けないでしょうか。
具体的な回答もできないような雑魚は引っ込んでろよ。
答えをくれるまでずっとこのスレで待つのかw
adtを使ってAndroidのプロジェクトを外部ライブラリとして使いたいのですが、うまくいきません。 どなたか助けてください。 ADTのバージョンは10.0.0.0です。 eclipseは3.4を使ってます。 外部ライブラリとして使いたいプロジェクトのプロパティに、Libraryの項目があるのですが、 そのうちの"isLibrary"の項目にもチェックしてます。 上記プロジェクトを参照するために、他のプロジェクトのLibraryプロパティから"Add"を 押して、上記プロジェクトを参照しようとしているのですが、何故か参照できません。 (Addを押すと外部プロジェクトの選択ウィンドウが表示されるのですが、選択してOKを押しても何も変化しません) 参照しようとしているプロジェクトは、GoogleのLVLプロジェクトです。 よろしくお願いします。
>>836 com.android.launcher2とかのソース詠むことをおすすめ。
先にヒント言うとTextViewでテキストラベル付き画像表示ができます。そのロジックをadapterのgetView内ですればおk
誰がヒントをくださいと言いました?
>>844 とりあえずADT 10.0.1に更新してみたらどう?
SurfaceViewの初期背景色って変えられるでしょうか? setBackground(Color.WHITE)などで背景色を設定すると、 上の場合ですと、描画されず常に白になってしまい困っています。
>>848 背景色を指定せずにbitmap等の描画は出来てる?
それが出来ないなら、フォーカスを調べて。
850 :
848 :2011/05/06(金) 13:16:18.70
自己解決しました
>>849 setBackgroundを設定する前は普通に描画できてたのですが、
setBackgroundを設定するとその色一色に染まってしまう感じでした。
でも、どうやら勘違いしていたみたいで
Canvas.drawColor(Color.WHITE);
で普通にできました。
SDカード内のtxtデータを読み込むサンプルを誰か教えてください(><)
852 :
851 :2011/05/06(金) 14:18:04.26
854 :
851 :2011/05/06(金) 14:46:12.37
>>853 ありがとうございます。ここを見ても分からなかったのです…。
String path = Environment.getDownloadCacheDirectory() + "/data.txt"
FileReader reader = new FileReader(path);
char[] buffer = new char[1000];
reader.read(buffer);
edit.setText(new String(buffer).trim());
reader.close();
とかすればいいのでしょうか…?
でpathはなんて出てるの?とりあえずそこが一番大事 次に大事なのはそのファイルが存在してるか とりあえず中身が読み込めるかとかはどうでもいい
856 :
851 :2011/05/06(金) 16:38:56.80
pathは/mnt/sdcardだった。dataファイルはsdカードの一番上に存在してます。
> String path = Environment.getDownloadCacheDirectory() + "/data.txt" だうんろーどきゃっしゅ・・・?/sdcard/data.txtじゃだめ?
Androidアプリを作りたいんですが パソコンとWindows7があれば大丈夫ですか? パソコンはネットに繋げません
Galaxy Sなんかは、Environment.getExternalStorageDirectory() が返す /mnt/sdcard は内蔵領域が割り当てられてて、外付けのSDカードは /mnt/sdcard/external_sd にマウントされるけど、その辺りは大丈夫?
>>859 OSのバージョン毎に使えるAPI に制限はあるが、機種毎にある訳ではない。
861 :
851 :2011/05/06(金) 17:58:57.20
DesireなんでOSは同じ2.2だと思うのですがexternal_sdを間に入れても認識しませんでした。
Desire なら… 2.1: /sdcard/ 2.2: /mnt/sdcard/ だな。
>>860 外部SDカードに置いたファイルのパスは機種毎に変わる可能性があるって話を
したのだが、何の話だ?
864 :
851 :2011/05/06(金) 18:09:47.49
これを色んな機種に適応させるためにEnvironment.getExternalStrageDirectry() が存在するわけですよね?/mnt/sdcard/でも動かない僕が言うのも何なんですが・・・ (ーー!)
どう動いてないか書かないと分からないぞ 例外出てるのか、読み込んだ結果が空なのかとか
パーミッションガー 無くても読み書きできちゃうんだけどな
867 :
851 :2011/05/06(金) 19:40:04.62
読み込んだ結果が空になるのです。
868 :
851 :2011/05/06(金) 20:00:41.04
TextView tv = new TextView(context); FileOutputStream fos = null; BufferedWriter out = null; String filePath = Environment.getExternalStorageDirectory() + "/memo.txt" File file = new File(filePath); file.getParentFile().mkdir(); try{ fos = new FileOutputStream(file, true); OutputStreamWriter osw = new OutputStreamWriter(fos,"UTF-8"); BufferedWriter bw = new BufferedWriter(osw); String str = ((EditText)findViewById(R.id.text_save)).getText().toString(); bw.write(str); bw.flush(); bw.close(); } catch{ ・・・ 書き込みはこんな感じで出来たのですが読み込み方がわかりません。
FileReader#readの結果がEOFになるまでちゃんと読み込め
>>870 エクリプス?とかいうjavaのやつと
AndroidのSDKはスマフォでダウンロードします
ネットの説明を読むと
これだけではダメみたいで
エクリプス?でダウンロードも
必要らしいです
全部をブラウザから
ダウンロードできないんですかね?
何故、スマフォからDLするかな。 ネカフェでUSB等にDLすりゃあいいのに。 1時間もかからんだろうに?
中途半端に略さないで、きちんとUSBメモリと言いなさい。
>>873 「USBメモリ」もかなり非公式な略称だけどな。
なんだかプログラミング初心者以前の質問が多くなってきたね
ここって本来Androidに関するプログラミング初心者スレだったような・・・
関するじゃないや対する
Universal Serial Bus Memory …めんどくさ。
>>878 なんでEnvironmentから取得してるのに/mnt消す必要があるんだよ
バッファリングしてないんから読めてないだけ
>>869 に書いてあるとおりEOF来るまで読み込むか
BufferedReader使えば良い
>>879 USB Flash Memoryだ。オバカさん。
USB Removable Flash Drive の話なら USB メモリスレで
そもそも業界的に「USBメモリ」というより「USB」の略の方が一般的じゃないか?
次スレからスレタイから「初心者」ってのを削ろうぜ
>>883 「合鴨のロースト ブルゴーニュ風 エシャロットとサワークリームを添えて」
をブルゴーニュと呼ぶような暴挙。
USBメモリをUSBと略してしまうとUSBマウスはなんと呼べばいいんだろう USB地デジチューナーは? USB扇風機は? USBトングルは?
全部USBでいいだろ。 文脈でわかる。
>>887 >USBトングルは?
ドングルのことか?
USBで保温しながらパンを挟むやつだろ
どこの講座もめんどくさい便利機能つきの紹介ばっかりで読むのがめんどい… アクティビティ遷移できてタッチ座標取得して板ポリ出せればそれでいいんだが…
そこで WebGL の出番ですな
元の文脈が「USB等にDL」なんだからUSBといえばわかるだろう、 USB扇風機にファイル保存できるっていうなら別だが・・・ ちなみに長年USB扇風機を使ってたが今年の節電の影響で ついにAC電源の扇風機を買って来た、USB(扇風機)がカスに見える。
スマートフォン用のアプリでもビルトターゲットは最新の3.0にしておくべき? 3.0ってたしかiPadみたいなやつに載ってるOSですよね
意味通じればなんでもいいだろw コミュ障持ち多すぎw
終わったネタにレス・・・
>>896 特別な理由がない限り1.5にしておくべき。
でないと俺が泣く。
>>899 TargetVersionとMinSDKVersionは別だぞ
自分はTargetは2.2(A2SDのため)、Minは1.6にしてる
>>897 そうやって素人が勝手に自分用語を作っていく。
そして周りに通じるはずだと勝手に思い込む。
>>895 わかるかどうかじゃない。
USBといえばUSBという規格そのものを指すという一般的な認識を無視してわざわざ自分用語をねじ込む
その身勝手さがキモいんだよ。
902 :
900 :2011/05/07(土) 03:06:27.24
違った Targetを2.2にしてるのは A2SDのためじゃなくてバックキー押下時の動作を標準にあわせるためだった
USBにダウンロードで意味が通じなかったやつなんているのか?
>>899 普通にタッチで操作して、板ポリのキャラを動かす程度だから1.5とかでも大丈夫なのかな…
>>900 最新版の3.0で開発するとまずかったりしますか?
ビルドターゲットを低くすると新しい機種用にコンパイル出来ないらしいですが
つまり新しいOSの機種がリリースされるたびにアップしなおす必要があるということ?
>>903 通じない。どうしても使いたければUSB(メモリ)と書け。
某政治家<こまけぇこたぁいいんだよ!
907 :
904 :2011/05/07(土) 03:50:53.48
すみません自己解決しました。 必要最低限のバージョンで作っておけば上位のOSでは基本的に動くみたいですね 自分も2.2で開発してみます
>>907 OpenGL使う話なら
2.2以降とそれより前で大きく違うから
そこだけ注意だね
上位OSで使えるけど下位では使えないってのもあるから なるべくターゲットと最低のバージョンは同じがいいと思うがね
OpenGLが違うのは2.1以降じゃね?
>>910 NDKからだと2.0以降、
SDKにAPIが追加されたのは2.2以降って事みたいだね
U S B! U S B! U S B! U S B! U S B!
1.5は切り捨てた方が良い 貧乏クズユーザー多いから 一般人向けなら2.1〜で問題ないし、大半は2.2だ マニュアルは3.0を見とけ
914 :
851 :2011/05/07(土) 08:25:02.84
BufferdReaderでSDカード内のtxtファイルが読み込めるようにはなったのですが、 平仮名が文字化けしてしまいます。文字化けしないようにするにはどうしたらいいのでしょうか?
文字コードをきちんと考慮する
>>903 それ自体は通じるかも知れないけど
「USB」が「USBメモリ」のことだと信じこむ(それ以外の意味があると夢にも思わない)やつが増えると厄介なんだよな。
終いには「USBメモリって普通のUSBのこと?」とか「USBメモリなんて専門用語使われても困ります」とか言い出しそうでね…
大容量のメモリが欲しいって言うからメインメモリの事かと思ってたら、 USBメモリだった事はあるな…あれはズコーだった
918 :
851 :2011/05/07(土) 08:56:32.42
>>915 ありがとうございました。Shift-JISで出来ました。
U:うざいし、 S:スレ違いだし、 B:バカばっか
>>901 こいつが友達居ないということはわかった。
キモオタは成長しないからな。。
そもそもスマホで直にダウンロードするくらいならUSBテザーすりゃいい
通信して表示するデータを更新するときに、progressDialogを使いたいのですが、 そのスレッド処理に苦しんでいます。データ更新は問題なく出来ています。 こうゆう場合のサンプルをご存じないでしょうか?
AsyncTaskはcancelにバグがあるから使うな。
>>926 バグの発生条件見たら気をつけて使えば問題無い
というかonDestroyで何かしようとするのが間違いじゃないの?
すみません。AdModの質問ですが下記のサイトの通りに設定
http://ohwhsmm7.blog28.fc2.com/blog-entry-67.html xmlファイル等の設定も終わり、onCreateの中に「AdManager.setTestDevices〜」というのを入れる段階なのですが
eclipseで「AdManagerを解決出来ません」という表示が出て困っています。
解決方法がクラスAdManagerを作成などしか出てこないのですが、
どなたか解決方法が分かる方いらっしゃいますか?
ちなみに import com.admob.android.ads.AdManager; import com.admob.android.ads.AdView; としてみてもimportされた〜は見つかりませんとなります。 ※サイトの手順の通りlibsフォルダにインポートはしています。
>>928 そのブログ古いバージョンの広告の入れ方だよ
今のSDKは4.0.4だよ
933 :
デフォルトの名無しさん :2011/05/07(土) 15:39:19.93
鞠逆転キタ━━━━(゚∀゚)━━━━!!!!
誤爆スマソ
GridViewに画像+テキストを表示させてる者です。 アダプターのgetViewでImageView、TextViewに画像、テキストをセット したんですが、API側(Absなんたら)でClassCastExceptionがでてしまします。 その下がLinerLayoutでエラーだったんですが、レイアウトファイルの書き方がまずいんでしょうか?
Eclipseで実機デバッグしようとしたら Launch error: リモート VM に接続できませんでした。 接続は拒否されました。 と出てしまいますが原因わかりますでしょうか?
エスパー過ぎる気もするが DDMSで見えるかどうか。 見えてないなら 実機側のアプリケーション設定の提供元不明のアプリと開発-USBデバッグはチェックされてるか 見えてるなら DDMSの設定でタイムアウトを延ばして見れ
>>937 ありがとうございます
通常の実行はできるから繋がってはいると思います。
タイムアウトを50000000msぐらいにしてみても同じエラーがでました。
コンテントプロバイダ android.provider.Telephonyクラスで ezwebのメールのデータって取得できないんでしょうかね? 完全非公開なのかな・・・ 機種 IS03
バンドルへデータを保存して読み出すとかはどのアプリも当然のように実装されているのでしょうか 好きなクラスのメンバをまとめてバイナリデータにしてぶち込むとか出来ないもんなんですかね…
>>940 ParcerableかSerializableを継承すれば良い
>>935 アダプターのレイアウトXMLが
<LinearLayout>
<ImageView />
<TextView id="aaa"/>
</LinearLayout>
みたいな感じになってるよね?
そしたらgetViewの中で
TextView hogehoge = (TextView) convertView.findViewById(R.id.aaa);
hogehoge.setText(R.string.comment);
って感じかな。
高速化対応のためにhogehogeの部分はholder対応した方がいいよ。
>>942 ありがとうございます。
XMLは、その通りの記述です。
getViewの方も
>>942 さんの言う形で記述してあります。
それでコンパイルは通るんですが、動かすとCastClassExceptionで落ちてしまします。
なにがいけないんでしょうか?
>>943 ClassCastが起きてる行のソースを貼り付けてください。
恐らくですが、
(TextView) convertView.findViewById(R.id.aaa);
こういった「キャスト」のある行で起きてると思います。
その場合自分が予想したのと違う型で取れているので
根本的な問題はIDの指定間違い。
詳しく調べるなら
Object obj = convertView.findViewById(R.id.aaa);
まずはオブジェクト型(何でも入る)にいったん入れて、
デバッグで直接型を見るか、ログに出力するとか。
Log.v("hoge",obj.getClass().getName());
とかで見れないっけ?(手元にソース環境ないからgetClassとかあたりから微妙)
945 :
sage :2011/05/07(土) 21:23:04.74
アプリ内からAndroid自体のプロキシを通すことは無理なようですが, HTTPの通信にプロキシを噛ませたいのですが,どのようにすればいいんでしょうか? ちなみに,System.setProperty("http.proxyHost","proxy.example.com"),System.setProperty("http.proxyPort","8080"); は効きませんでした.
USB DRAMがあったら欲しい。 フォーマットしたらRAMディスクとして使えるような。
>>939 android:exported=falseもしくはpermission指定があったら大人しく諦める。非rootedであれば。
>>935 adapterが違うかも。自分のアプリでは二重キャストしている。
SurfaceViewを使うかGLSurfaceViewを使うかで悩んでるんですが OpenGLによる描画を行うならGLSurfaceViewのほうがいいんですかね 電池の消費量とかで少し気になっています
フラグメントの情報ってまだ少ないね 1.6-2.3でフラグメントを使ったアプリって公開されてる?
エラーが表示されるなら、そのエラー自体をググればいいのに。 手取り足取り教えるにも限界あるわな。
やっぱりスレまとめるのか...。
OpenGLを使った描画で、描画用のスレッドとゲーム進行用のスレッドを分けておく…というテクニックがあると読みました。 これって、 1) ゲーム進行用のスレッドと描画用のスレッドを用意 2) 何をどこにどういう順番でどのように描画するか、ってデータの置き場を用意 3) ゲーム進行用のスレッドは、ひたすら(2)を更新し続ける 4) 描画スレッドはひたすら(2)の内容に沿って描画し続ける ってことでしょうか? これ、何をどこにどういうふうに描画するか という情報を描画用のスレッドに一括で丸投げして、 勝手に描画スレッドが描画処理してくれるってことですよね。
読んだって事は出典があるんだろ?晒すのが先じゃね?
>>957 > これ、何をどこにどういうふうに描画するか という情報を描画用のスレッドに一括で丸投げして、
> 勝手に描画スレッドが描画処理してくれるってことですよね。
してくれる…じゃなく、君がするんだよ。
960 :
デフォルトの名無しさん :2011/05/08(日) 00:24:47.79
Eclipseで署名付きapkファイルをつくって、アップロードはできたのですが、 スクリーンショットをアップロードしようとすると 「応答を解析できません。JSON 応答を変更するブラウザ拡張機能やアドオンがインストールされている場合は、 それらを無効にしてからこのページを更新してください。」 ってメッセージが出てうまくいきません。 どうすればいいでしょうか??
NDKでほとんどのゲームのコードを書くと移植性が悪くなるっていうのはどういう事なんですか? タッチ座標の取得や、描画自体はjavaで書かないといけないと思うので 他に機種依存にからみそうな所があまり想像できない
>>944 ありがとうございます。
学校用の端末なので今詳しく書けないのですが、アドバイスの内容でもう少し調べてみます。
>>948 ArayyAdapterを継承したものを使っているのですが、もしかしてそれが関係しているんでしょうか?
>>960 > 「応答を解析できません。JSON 応答を変更するブラウザ拡張機能やアドオンがインストールされている場合は、
> それらを無効にしてからこのページを更新してください。」
> ってメッセージが出てうまくいきません。
> どうすればいいでしょうか??
指示通りに無効にすればいい。
横からすまんが、無効にするべきモノに心当たりが無い場合、どのあたりを疑ってかかればいい? 一般的に。
>>953 今まででも、同じようなことはViewGroupで出来てたからなあ
>>954 エラー出てる行も分かるはずなのに、
何故かエラーになりますとか言われてもねえ…
>>957 onDraw呼ばれるのは描画用のスレッドだろ
>>961 NDKでコンパイルした後のネイティブコードはCPU依存だから。
ARM用にコンパイルするとARM以外の機種だと動かなくなる。
加えて同じARMでも世代やSoCにしているメーカーで微妙に違う部分がある。
>>967 コンパイルする時に何用でコンパイルするかとか選ぶ必要があるんですね
全部網羅して別バージョンをアップするのもアホらしいし
速度には目をつぶって全部javaで書くべきなんですかね
Notificationのアイテムの有無を調べる方法ってありますか?
970 :
969 :2011/05/08(日) 02:55:48.92
自分以外のアプリが発行した通知も含めてです
>>968 いやアーキテクチャ別のバイナリを複数まとめて入れておく機能もあるんだが
今のところARMv5とv7とx86しかなくてしかもx86は一部機能しか対応してないので
実質ARMしか使えないのと変わらない状態になってる
>>968 「(基本的には)CPUは上位互換だから、どのCPUを最低ラインに持って行くか」かと個人的には思う。
またCPUの型番とか、ADKの提供APIで取得出来なかったっけかな?
しかしみんな凄い知識だな どうしたらそんな詳しいこと知れるんだ プロって奴なのか
レイアウトの一部を動的に生成してListViewやTextViewにしたいのですがどのようにするのが良いでしょうか? レイアウトに<view>をいれ、動的に生成する部分は別layoutファイルを生成するコンテンツごとに設定する方法を試したのですが、生成したViewオブジェクトをlayout内のviewに設定することができませんでした。 // コンテンツ部分 View view = (View) findViewById(R.id.mainView); LayoutInflater lf = LayoutInflater.from(this); // ListViewの場合 View content = lf.inflate(R.layout.list, null); ↑をviewに設定したい ご教示お願いいたいます。
>>974 ViewGroupにaddしたりremoveしたり
>>974 >レイアウトに<view>をいれ、動的に生成する部分は別layoutファイルを生成するコンテンツごとに設定する方法を試したのですが、生成したViewオブジェクトをlayout内のviewに設定することができませんでした。
それをやるなら<viewstub>じゃね?
977 :
デフォルトの名無しさん :2011/05/08(日) 08:18:21.11
サイトを作って起業したく、プログラマーをやといたいんですが、なかなか出合えません。 どうすれば出会えるでしょうか?
>>977 まず600万円を用意してください。
次に、年間1200万円以上利益が出せる事業計画を立ててください。
んで、年棒600万で求人かけたらワンサカ来るだろ。
>>977 とりあえず派遣使ったら?
時給5000円ならそこそこ
人間としてクセ強いけどね
>>973 Android DevelopersのReference みて、自身でサンプル作る事が一番手っ取り早いと思う。
JIETに相談してみるといいよ、派遣業者も紹介してくれるし。
>>982 黙殺してんだよ。とんでもないことを。。。。
984 :
デフォルトの名無しさん :2011/05/08(日) 12:14:56.02
>>982 今の流れならアンドロイドもプログラミングも外した方がいいな
>>847 それもやろうとしたんですが、eclipse3.4だと、アップデートできない?ようです。
Eclipse 3.5 に変更すればいいんですが、今はちょっと時間がないので、とりあえず外部ライブラリ化は諦めて、プロジェクトに直接取り込むことにします。
ありがとうございました。
デベローパーコンソールで見ることができる統計情報って、sdカードにインストールされてるアプリの情報も含まれてるのかな?
>>986 マーケットでインストール状態になってるものってこと
>>987 オナニー開発者は知らなくて良い
>>986 何で含まれないって思ったのか不思議でならない
>>991 有料アプリがいくつか売れたんだけど、アクティブインストールの数と販売アカウントで確認した売上が一致しない。
キャンセルされたわけでもないのに。。
ゲームアプリを作っているのですが、GLSurfaceViewのonDrawFrameを使った場合は基本60fpsみたいですが 30fpsに固定する事は出来ないのでしょうか。 ポリゴンの描画等もするので60fpsはあまり現実的ではないように感じています。
>>992 普通に考えれば買ったけど使わないからアンインストール
>>992 アクティブインストールの方が更新されてないだけかと
最近2,3日に1回しか更新されない
996 :
デフォルトの名無しさん :2011/05/08(日) 17:01:15.75
エロアプリってどこが登録可ですかね? マーケットはおkなの?ま、審査ないから登録は可能だろうけど、消されそうだし
>>993 うろ覚えだがGLSurfaceViewのonDrawFrameが60fpsだって保証もされてなかったような。
取り敢えずフレームレートの下限決めたいなら、
時間計って1/60秒なり1/30秒なり経ってなかったらすぐリターンすれば良いんでない?
>>997 ありがとうございます。
でもそれだと、リターンした後に次にonDrawFrameがどのタイミングで呼ばれるかがわからなくて
結果バラバラに30以下ランダムfpsになっちゃったりしませんかね
999
恥ずかしながら私目が1000ゲット
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。