トップページ⇒tech
1001コメント363KB

Androidプログラミング質問スレ Part23

レス数が950を超えています。1000を超えると書き込みができなくなります。
0001デフォルトの名無しさん2012/06/19(火) 19:57:12.12
このスレではAndroidSDK・NDKやAndroidマーケットに関する質問を扱ってます。

※プログラミング自体が初めて!なあなたには↓↓↓こちらへ
スレ立てるまでもない質問はここで 118匹目
http://toro.2ch.net/test/read.cgi/tech/1331904826/
Eclipse統合M32【Java/C++/Ruby/Python/Perl】
http://toro.2ch.net/test/read.cgi/tech/1320318310/
★★Java質問・相談スレッド153★★
http://toro.2ch.net/test/read.cgi/tech/1334438859/

****関連リンク****
■ Android developers http://developer.android.com/
■ ソフトウェア技術ドキュメントを勝手に翻訳 http://www.techdoctranslator.com/

****前スレ****
Androidプログラミング質問スレ Part22
http://toro.2ch.net/test/read.cgi/tech/1337170429/
0856デフォルトの名無しさん2012/07/16(月) 20:53:23.58
>>855
Bundle
0857デフォルトの名無しさん2012/07/16(月) 20:59:47.65
>>853
よしエスパーに任せろ。
暗黙的に何らかのヘッダーがリクエストに入ってしまっているんだ。
それが原因でtwitter側で弾かれてしまっている。
というわけで、明示的に指定してオーバーライドすればよい。
0858デフォルトの名無しさん2012/07/16(月) 21:00:07.47
>>856
ありがとうございます。調べ中です。
ちなみに、アクティビティ遷移のアニメーション使ってて、
そいつだけ遷移のアニメーションの影響を受けないで残ってる感じにするのは無理ですよね?
08592462012/07/16(月) 23:00:58.29
もうどうにもならないので質問させてください。
このメソッドを実行するだけで約10秒(曲数2000)かかります。
この処理を出来れば1秒程度で終わらせたいのですが、何かいい方法は無いでしょうか?
ちなみにAsynkTaskを取り入れようとしたんですけど、どうにも上手くいきませんでした。

http://pastebin.com/1AHxhpr1
0860デフォルトの名無しさん2012/07/16(月) 23:16:22.11
>>859
ない。AsyncTaskに入れろ。
0861デフォルトの名無しさん2012/07/16(月) 23:21:49.83
20倍ぐらい速い機種で実行すればいいんじゃないかな。
0862デフォルトの名無しさん2012/07/16(月) 23:24:47.85
全部読み込んでるから重いんじゃないの?
上のほうで書いてるようにCorsorAdapterで必要な分だけ読めば?
0863デフォルトの名無しさん2012/07/16(月) 23:32:10.78
AsynkTaskの何が難しいんだよ
サンプル見ながら書けばいいだろ
0864デフォルトの名無しさん2012/07/16(月) 23:44:08.94
質問なんですけどSDK 20で既存のプロジェクトで新規プロジェクトの作成ってどうやってやるんですか?
0865デフォルトの名無しさん2012/07/17(火) 00:03:24.15
File->Import->Existing Project into Workspace
08662462012/07/17(火) 00:18:15.02
>>860
やっぱりAsynkTaskが必要ですかぁ。AsynkTaskはホントに良く分からないんですが、

1、getAlbumのメソッドは文字だけ追加で、
  AsynkTaskでは始めに汎用画像をセットして、
  その後、onPostExecuteで直接リストアダプターに入れこむんでしょうか?
2、その場合、リストアダプターでtask.execute(引数はposition?)ですか?
3、だとしたらdoInBackgroundは画像1枚を取得し何度もnew Taskしてやると言うことでしょうか?
08672462012/07/17(火) 00:19:29.42
>>862
CorsorAdapterですか。もう一度調べてみます。
ホントに困ってまして…。
0868デフォルトの名無しさん2012/07/17(火) 01:38:00.96
>>857
なるほど、なんとなくは分かったんですけど具体的にどうしたら…
もう少しヒントをください!
08692462012/07/17(火) 02:02:14.51
>>862
いま、CursorAdapteを調べてみたんですけど、
アルバムアートの様にカーソルをNextさせても出て来ない物がある場合、
CursorAdapteって不向きじゃないですかね?間違ってます?
もしそれが可能であれば、一番ベストな選択だと思うんですけど。
0870デフォルトの名無しさん2012/07/17(火) 17:17:43.33
AndroidのByte[]データをGoogleAppsEngineのblobストアへアップロードしたいのですが、
どうすればいいのでしょう。 Webサイトからのアップロードはできるのですが、
Androidからのアップロードがよくわかりません。お願い致します
0871デフォルトの名無しさん2012/07/17(火) 17:31:51.46
まだ時代が追いついてなんだ
6コアが主流になれば1秒で終了すると思うぞw
0872デフォルトの名無しさん2012/07/17(火) 17:40:32.04
馬鹿には無理
0873デフォルトの名無しさん2012/07/17(火) 19:46:30.10
カメラビューにOpenGLのビューを重て表示したいのですが上手くいきません。
どうやらActivity呼び出し時のデバイスの向きによってそれぞれのサーフェスビューの順序が変わってしまっているようです。
縦向きでActivityを呼び出すとちゃんと表示できるのに、横向きで呼び出すとうまくいきません。

そもそもサーフェスビューを複数使うということがいけないのでしょうか?
ボスケテ。
0874デフォルトの名無しさん2012/07/17(火) 20:28:13.82
setZOrderOnTopかな。
0875デフォルトの名無しさん2012/07/17(火) 20:36:40.81
zorderあたりマジでややこしいよな
0876デフォルトの名無しさん2012/07/17(火) 22:58:08.29
WebViewに関して質問です。

内部ストレージの/data/data/jp.hoge.android.piyo/web/hogera.htmlが存在したとして、
そのページをWebViewで表示させようとしたのですが、

WebView webView = (WebView)findViewById(R.id.webView);
webView.getSettings().setJavaScriptEnabled(true);
webView.loadUrl("/data/data/jp.hoge.android.piyo/web/hogera.html");

としても実行されません。

何か追加で書かないといけない点、loadUrlの使用方法などの誤りがあれば
ご指摘ください。お願いいたします。

assetsから呼び出す方法ではすでに実装できているので、内部ストレージ内の
ファイルを呼び出して表示する方法が知りたいです。
0877デフォルトの名無しさん2012/07/17(火) 23:39:20.73
webView.loadUrl("web/hogera.html"); でできない?
0878デフォルトの名無しさん2012/07/17(火) 23:47:20.40
>>877

それはできない。
0879デフォルトの名無しさん2012/07/17(火) 23:48:03.39
LVLの導入について質問です

http://tech.topgate.co.jp/android/android-lvl-introduction
このサイトを参考に導入しようとしたところSDKManagerにMarket Licensing packageはなく代わりにGoogle Play Licensing Libraryがありました
これで合っているのでしょうか?
もし合っているならこれはAndroidのディレクトリのどこにあるのでしょうか?
0880デフォルトの名無しさん2012/07/17(火) 23:52:53.87
>>876
ここは?
つttp://fron.sitemix.jp/blog/2012/02/23/30/
0881デフォルトの名無しさん2012/07/17(火) 23:54:08.47
>>879
extras/google/market_licensing/library
0882デフォルトの名無しさん2012/07/18(水) 01:02:37.59
>>881
ありがとうございます
早速入れてみます
0883デフォルトの名無しさん2012/07/18(水) 01:17:25.47
>>876
file:///data/data/.......で見れない?
0884デフォルトの名無しさん2012/07/18(水) 08:11:16.75
初心者ですみません

R.layout.main と opengl の画面を両方同時に出したいのですが、
どすればできますでしょうか

ご教授いただければ幸いです
0885デフォルトの名無しさん2012/07/18(水) 09:39:03.78
SC-01DでGoogleのADKのDemoKit動かせた人いませぬか?
どうも修正するべきところ修正してもうまくいかない・・・
0886デフォルトの名無しさん2012/07/18(水) 10:10:23.70
>>884
res/layout/main.xml の中に <android.opengl.GLSurfaceView>を書く
0887デフォルトの名無しさん2012/07/18(水) 11:55:28.05
>>883
ありがとう、見れました
0888デフォルトの名無しさん2012/07/18(水) 13:46:16.93
LVLのテストライセンスの設定って反映まで時間がかかったりしますか?
昨日設定を変えたのに反映されなくてさっきもう一度やってみたら反映されてました
0889デフォルトの名無しさん2012/07/18(水) 14:04:40.59
解答お願いいたします。

現在、簡単な音楽プレイヤーを作成しているのですが、その際に使用するmediaplayerがアプリを再起動したときに毎回別のそれを参照してしまいます。

staticなど試したのですが、うまくいきませんでした。

常にひとつのmediaplayerを参照する方法はないのでしょうか?

ご教授いただけたら幸いです。
0890デフォルトの名無しさん2012/07/18(水) 15:46:41.63
表示方法を動的に変更するため、ArrayAdapterを継承したカスタムAdapterの
getView()でプリファレンスを取得して切り替えています。
これだとgetView()の度に処理が走るので効率悪いと思いますが、
表示方法を切り替える度にAdapterのインスタンスを生成し直して
コンストラクタでプリファレンスを取得した方がいいのでしょうか?
0891デフォルトの名無しさん2012/07/18(水) 16:05:25.56
yes
0892デフォルトの名無しさん2012/07/18(水) 16:08:15.98
>>891
了解です。ありがとうございます。
0893デフォルトの名無しさん2012/07/18(水) 16:37:16.60
>>886
できました
ありがとうございます
0894デフォルトの名無しさん2012/07/18(水) 17:14:09.97
>>889
よくわかんないけど,毎回同じmediaplayerじゃないと何が困るの?
0895デフォルトの名無しさん2012/07/18(水) 17:49:48.44
>>889
最初にisPlaying()で再生中かどうか調べて再生中ならstop();release();する処理書けばいいんじゃない?
08968732012/07/18(水) 20:10:12.64
解決しました。ありがとうございます。
0897デフォルトの名無しさん2012/07/18(水) 21:50:01.65
ViewPagerでImageViewsスクロール実装しましたが、これに
ピンチイン・アウトっていけます?
0898デフォルトの名無しさん2012/07/18(水) 23:06:02.31

自作アプリからskypeを起動して発信させようと以下のコードを書きましたが
うまくいかない部分があるんで知恵を貸してください。

Intent SkypeIntent = new Intent("android.intent.action.VIEW");
SkypeIntent.setData(Uri.parse("skype:" + user_name));
startActivity(SkypeIntent);

最初の1回はうまく動作します。

�@skypeが起動する
�A"通話を開始します [skypeユーザ名]さんと通話しますか? "のダイアログが表示される。
�Bはいをクリックすると発信、通話開始
�C通話を終了すると自作アプリのアクティビティに戻る


ところが2回目は
�@skypeが起動する
�A"通話を開始します [skypeユーザ名]さんと通話しますか? "のダイアログが一瞬表示されて消える
�Bskypeのホーム画面が表示される
�C変化せずそのまま

という動作をして、発信ができません。
1回目の�Aのダイアログが出た時点で、"今後表示しない"のチェックを入れれば回避は出来るんですが、
もっと良い方法をご存知の方が居れば教えてもらえませんか?
よろしくです。

0899デフォルトの名無しさん2012/07/19(木) 04:46:23.82
くだらない事なんだけど、プリファレンスの値を取得するメソッドの
第2引数のデフォルト値はどこで管理するのがいいのだろう?
0900デフォルトの名無しさん2012/07/19(木) 09:29:57.39
>>899
キッチリやるなら定数は全てリソースで管理する何だろうけど、
手間とメンテナンス性のバランスだね。
オレの場合は、そのクラスにstatic finalで定義するな。
0901デフォルトの名無しさん2012/07/19(木) 12:45:36.10
>>899
俺はアプリ起動時に未設定の項目全部初期値で埋めて保存することにした
常に値があるから第2引数無意味になったので 0 とか false とか適当
0902デフォルトの名無しさん2012/07/19(木) 15:27:51.72
>>900
1つのファイル内ならstatid finalで済むとして
例えばarrays.xmlに定義する配列の1要素が
デフォルト値だったらstrings.xmlに定義するのが
いいのかな
0903デフォルトの名無しさん2012/07/19(木) 15:46:54.51
>>901
設定項目少なければそれもありな気がする
0904デフォルトの名無しさん2012/07/19(木) 18:23:28.23
static classで管理するのもありかと
0905デフォルトの名無しさん2012/07/19(木) 19:00:47.29
SDKをr20にしてからコンテンツローダー?の読み込みで起動と終了がすごい遅くなったのですがこれは仕様ですか?
0906デフォルトの名無しさん2012/07/19(木) 19:01:42.05
うむ
0907デフォルトの名無しさん2012/07/19(木) 19:08:37.99
どうにか起動と終了早くできないですかね
0908デフォルトの名無しさん2012/07/19(木) 22:00:10.25
あかん、何度やってもglTexSubImage2d()で設定した画像がテクスチャに反映されない…
NDKかつOpenGLの話題って、ここで質問しても良いんかね?
OpenGLスレとか行くべき?
0909デフォルトの名無しさん2012/07/20(金) 01:04:12.26
ここで聞いても解決しなさそうだけどなw
0910デフォルトの名無しさん2012/07/20(金) 13:40:05.56
エラー: No resource identifier found for attribute 'layout_heigth' in package 'android'
ってでるのですがどういう意味でしょうか?
よろしくお願いします
0911デフォルトの名無しさん2012/07/20(金) 13:53:26.77
layout_heigth
layout_height
0912デフォルトの名無しさん2012/07/20(金) 13:56:10.36
>>910
まんまの意味だね
落ち着いて見れば分かると思うけどスペルミスしたから出てる
0913デフォルトの名無しさん2012/07/20(金) 14:30:49.24
思うんだが、エラー文なんでしょうと言われてもそのまんまの意味だよなぁ・・・

>>910
「layout_heigth」のスペルってそれでいいのか?
0914デフォルトの名無しさん2012/07/20(金) 14:35:32.39
きっとまだ英語を習ってない小学生なんだよ
0915デフォルトの名無しさん2012/07/20(金) 15:45:41.71
結局クラック対策にNHKの知識もいるんだから
なんか二度手間だよなあAndroidって
0916デフォルトの名無しさん2012/07/20(金) 21:56:28.43
ホームアプリ上でホームボタンをダブルタップした時は
自分のアプリを起動、シングルタップの時はホームアプリの
標準動作(ホームポジションに移動)をさせたいのですが、
どうしてもシングルタップ時の動作ができません。
自分のアプリのActivityをfinish()した後で上記の標準動作を
実行させる事は可能でしょうか?
0917デフォルトの名無しさん2012/07/20(金) 23:17:12.38
Applicationクラスをextendsしたクラスで
startActivityを実行すればできそうな気がしてきました。
0918デフォルトの名無しさん2012/07/20(金) 23:53:15.22
どういう状況で何がしたいかさっぱりわからんがまあ頑張れ
09199082012/07/21(土) 01:12:19.93
一応自己解決したので、誰の参考にもならんだろうが書いておく。
glほげほげ は、OpenGL用のスレッド以外で呼んでも動かないよ!
ていう話だった。
ネットの至る所に転がっていたぜ…

ネイティブ 側でGLSurfaceViewの持つスレッドなんて取得できるんだろうか。
結局殆どの処理がonDrawFrameに集中してしまう。
0920デフォルトの名無しさん2012/07/21(土) 02:17:44.67
初歩的な質問ですみません
自前で用意したPDFファイルを読ませる方法はどんな方法がありますか?
0921デフォルトの名無しさん2012/07/21(土) 02:18:31.84
読み込んで画面に表示する方法の間違いです
0922デフォルトの名無しさん2012/07/21(土) 03:29:10.72
>>920
まずpdfの仕様書を読みます。
0923デフォルトの名無しさん2012/07/21(土) 03:34:30.81
>>920
http://sourceforge.net/projects/andpdf/
0924デフォルトの名無しさん2012/07/21(土) 09:44:29.35
new File("directory").mkdir()
でfalseが返ってきます。
何故でしょうか?
0925デフォルトの名無しさん2012/07/21(土) 09:58:26.65
パスの指定を間違っていました。
0926デフォルトの名無しさん2012/07/21(土) 10:46:32.51
うむ
0927デフォルトの名無しさん2012/07/21(土) 11:14:22.43
今開かれているアプリを取得するにはどうしたら良いでしょうか?

Android 開いてるアプリ取得などでぐぐっても見つかりません
0928デフォルトの名無しさん2012/07/21(土) 11:18:37.49
ActivityManager#getRunningTasks とか
0929デフォルトの名無しさん2012/07/21(土) 14:18:19.87
データを予めSQLiteで用意して使おうかと思ったのですがDBのファイルはどうやってアプリに同包するんでしょうか?
というかデータはどのように用意しておくのが普通なんでしょうか?
データはゲームキャラのパラメータです
0930デフォルトの名無しさん2012/07/21(土) 14:58:19.05
>>929
「android sqlite database」で検索
0931デフォルトの名無しさん2012/07/21(土) 15:45:38.16
>>929
容量と速度とコストの関係で変わる。
0932デフォルトの名無しさん2012/07/21(土) 16:40:48.52
流れぶった切ってすみません、質問があります。
0933デフォルトの名無しさん2012/07/21(土) 16:47:56.53
お断りします
0934デフォルトの名無しさん2012/07/21(土) 16:54:16.57
ホーム画面にシェルスクリプトを実行するショートカットを置きたいのだが、
簡単なものって作れないかな
ScriptManagerで似たようなことはできるんだけど、大袈裟すぎるというか
0935デフォルトの名無しさん2012/07/21(土) 18:03:53.68
Preferenceの設定画面でリストアイテムの右側に▽マークが
付いているのですが、これを見えなくするにはどうすればいいでしょうか?
そのようなDialogPreferenceやListPreference等もマークが付いてしまいます…。
0936デフォルトの名無しさん2012/07/21(土) 18:07:18.54
アホだった…まさにPreferenceを継承すればよかったんですね。
0937デフォルトの名無しさん2012/07/21(土) 21:32:49.20
>>929
assetsフォルダにDBファイル入れておいてコピーするか、
csvファイルとか入れておいてアプリ初期化時にインサートするか。
「android sqlite assets」でぐぐる。
0938デフォルトの名無しさん2012/07/21(土) 23:47:45.60
質問です。

activityクラスは一つのパッケージしか作れないのでしょうか?

eclipseで最初に作ったパッケージとは別に
新しくパッケージを作ってそこにactivityクラスを作ったんですが
layoutファイルを読み込んでくれません。
genフォルダのR.javaは最初に作ったパッケージ名のところに入っていて
試しにgenフォルダの中に新しく作ったパッケージ名と同じパッケージを作ってそこに
R.javaとBuildConfig.javaを入れたんですが
やはりlayoutファイルを読み込めませんでした。

よろしくお願いします。
0939デフォルトの名無しさん2012/07/21(土) 23:54:07.68
作れるよ
09408382012/07/22(日) 01:14:23.47
>>939
setContentView(パッケージ名.R.--)
で出来ましたね。。
0941デフォルトの名無しさん2012/07/22(日) 01:58:22.91
広告admob付けて試しにタッチしてみると
アプリが強制終了してしまうんですが
どういうことが原因と考えられるでしょうか?
対策はどういうのがありますか?
0942デフォルトの名無しさん2012/07/22(日) 05:31:05.66
>>941
原因は例外処理を行っていないことが考えられる。
対策は広告なんて出す前に基礎から勉強した方がいい。
0943デフォルトの名無しさん2012/07/22(日) 05:50:17.43
原因は例外が発生していることが考えられる。
0944デフォルトの名無しさん2012/07/22(日) 09:05:06.62
http://www.hp3200.com/android-app-development/
このサイトを参考に環境作ってたのですが
プラグインのインストールが、「環境依存違反」と出て完了できません
http://www.hp3200.com/android-app-development/5-plugin.html

ロケーションhttp://dl-ssl.google.com/android/eclipse/
からDeveloper Toolsがインストールできない状況です。
一端やめて他のサイトを参考にしようかとも思ったのですが
こういう状況はなにが原因なのでしょうか?
0945デフォルトの名無しさん2012/07/22(日) 10:00:33.67
eclipseのバージョン何つかってんだよ書けやボケ
そこのサイト見ると3.4インストールとか書いてあるが、
古いのだと動かない可能性があるらしい
そのくらい自分で調べろや、そんなのじゃプログラミングもできんだろ
0946デフォルトの名無しさん2012/07/22(日) 11:41:18.55
>>944
日付の書いてないページはどれだけ古いか分からないから信用するな
0947デフォルトの名無しさん2012/07/22(日) 15:55:51.35
>>945-946
まったくおっしゃる通りでした。
ITproの7月に書かれた導入ページがあったので
そちらからやり直し無事完了しました。
ありがとうございます。
0948デフォルトの名無しさん2012/07/22(日) 16:13:29.59
オーバーレイと裏にいるアプリ(壁紙でもなんでも)の両方ともイベント受け取れる方法ってないですか?

たとえばTYPE_SYSTEM_ALERTだとオーバーレイしか受け取れず
TYPE_SYSTEM_OVERLAYだとそもそもオーバーレイがイベント受け取れない

誰か教えてください
0949デフォルトの名無しさん2012/07/22(日) 16:38:18.85
onUserLeaveHint()はHOMEボタン押した時と広告を踏んだ時にも呼ばれるようですが
これらを区別するにはどうすればいいですか?
広告踏んだ時呼ばれるon〜という類なのはあるんでしょうか?
0950デフォルトの名無しさん2012/07/22(日) 16:42:51.64
onPresentScreen()にブレークポイントおいても呼ばれませんでした (先にonUserLeaveHint()に行くせい?)
0951デフォルトの名無しさん2012/07/22(日) 17:02:30.01
広告の親ビューでタッチ監視しとけばぁ
0952デフォルトの名無しさん2012/07/22(日) 17:29:04.14
ハンドラーでonUserLeaveHint()の中身を時間差でonPresentScreen()の後ろに回すことによって解決できました。
0953デフォルトの名無しさん2012/07/22(日) 18:10:52.77
ActionBarSherlockと一緒に使える、オヌヌメのUIフレームワークを教えてください。
ターゲットは、SDK10〜15で使えるとうれしい。
使う使わないはともかく、どんなのがあるのか知りたい。
0954デフォルトの名無しさん2012/07/22(日) 19:12:45.36
>>952
それじゃ機種によっては、動かないだろ。
0955デフォルトの名無しさん2012/07/23(月) 18:18:02.13
4.0以降一部の機能をSwitchを使ったものに切り替えているのですが、
android.widget.Switchをimportした時点で、4.0以前の端末だと以下のエラーがlogcatで表示されます。
Could not find class 'android.widget.Switch', referenced from method 〜(省略)

実際に動かしているときは4.0以前、以降で処理を切り替えているためエラー落ちしたりすることはないのものの、
気持ち悪いのでエラー自体を出ないようにしたいのですが何か方法はないでしょうか。

クラス自体を4.0以前、以降で2種類作る。という方法はありますが
無駄にクラスが増えてしまいますし、機能は同じなので極力一つのクラスで済ませたいです。
レス数が950を超えています。1000を超えると書き込みができなくなります。