Androidプログラミング質問スレ Part29
1 :
デフォルトの名無しさん :
2013/02/03(日) 07:07:27.61
前スレでAlertDialogを表示しても 背景を暗くしない方法について質問した者です。 教えていただいた方法でできました。 ありがとうございました。 dialog = new AlertDialog.Builder(Hogehoge.this) dialog.getWindow().addFlags(WindowManager.LayoutParams.FLAG_BLUR_BEHIND);
EditTextは中身がほとんど空で、TextViewに全部実装されてる。 TextViewでも編集できるし、選択させたいだけならtextIsSelectableがある。
あれ,暗くしないだけじゃなくてぼやかしたいって話なの? 暗くしないだけなら dialog.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND); とかやったらよさそうなもんだけど ていうかFLAG_BLUR_BEHINDってdeprecatedなんだね
いいなぁ 解決出来て... BluetoothSPP - PC データ転送 文字化けしないでキレイに同じレコードを拾ってきちゃう (1)1レコードあたり待ち時間0.5秒入れるとなんとか全部拾えるけど遅すぎ (2)ハンドシェイクしないと待ち時間に関係なく起きる orz 疲れた...
>>6 不思議な事にレコード数は送信側(PC)、受信側(Android)で合ってるんだよなぁ
Android NFCでSuica定期券の定期区間って取得できます? 利用履歴の取得ならいくつか実装例が見つかるんですが・・・
>>6 sspってtcpみたいに品質保証しないわけ?
自己訂正できるチェックサム入れたら?
>>9 欠落でなくて増えるのか。シーケンスも付けて、重複したものは無視。
11 :
デフォルトの名無しさん :2013/02/03(日) 16:27:18.07
listviewにOnScrolllistenerをsetした状態で指を離さずにスクロールし、スクロールの途中でlistviewのadapterにaddしてaddした項目までスクロールするとlistviewの項目数がaddする前の状態のままのようでぬるぽを吐きます listviewを更新するにはどうしたら良いでしょうか? android2.x系のみの症状みたいです
12 :
デフォルトの名無しさん :2013/02/03(日) 17:14:51.92
developer垢だれかかして
13 :
デフォルトの名無しさん :2013/02/03(日) 18:10:05.32
Javaは一年かじった程度なのですが、何か簡単なゲームをつくってGooglePlayに公開しようと思っています。 みなさんのおすすめ本はありますか?
AtoZ
>>15 やっぱりそれなんですかねぇ
とりあえずamazonで一番上に出てきたやつを買おうかと思いましたが、安直すぎるかなぁと
A to Zぽちってきます。ありがとうございました。
AtoZは本格的に作りたい人向け 15歳からはじめるくらいから始めたら
ボタンを均等な位置に割り当てたいんですが、layout_weightパラメータが見当たらないです。 Activity.mainに直接書き込んでもInvalid layout param in a RelativeLayout: layout_weightと警告されます。 理由を教えていただきたいです。
layout_weightはRelativeLayoutの中では無効なレイアウトパラメーターです
自動翻訳も
>>19 位綺麗に翻訳してくれると英語のページを読むのに楽になるのにな
>>excite
RelativeLayoutの中の無効のレイアウトparam:
layout_weight
RelativeLayoutになってました。自己解決
22 :
3 :2013/02/04(月) 01:34:08.72
>>5 ちょっと言葉足らずでした。
暗くしたいだけです。
×:教えていただいた方法でできました。
〇:教えていただいた方法を参考にしてできました。
明日仕事なのに、早く寝なければ・・・
ここ見てるのはアプリ開発者だけじゃないと思うけどあえて書いてみる 有料コンテンツ絡みでとあるアプリが端末にある場合起動しないようにしたり起動時の署名チェックとストアのライセンスチェック以外で何か対策ありますか? 2.x系のhdpiサイズの端末でアクションバーが使えるようにActionbakSharlock使いたいんだけど見事にレイアウトが崩れる場合はやっぱり始めから作らなきゃダメなのかな… draw9苦手なんだよな
>>23 激しく間違えてた…orz
ActionbarSharlockでした
>>25 下手な文章ですみません
そうなんです
個人で出来ることで有効なプロテクトがあれば教えてもらえませんか?
SQLiteのテーブルは作成されるんだが、insertされない… INTEGERで作ったカテゴリにint型の値を挿入したい ContentValuesでカテゴリ名と値をputして、db.insert(テーブル名,null,values) db.insertに書くのはSQLiteOpenHelperで定義した物で合ってますよね? 使ってはならない言葉とかありますか? 2日くらい詰まっててやばい。
追記:ログに出たエラーコードは19でした
error 19はSQLiteConstraintExceptionかな。制約が満たされてないみたいだから、満たせばいい。 テーブル定義とvaluesの中身が分からないので、これ以上は何とも。
すいません自己解決しました テーブルに年、月、日、性別の4つを用意してたのですが、性別だけputして年月日は何も入れてないのが原因でした 全部に入れないといけないんですね…
2.xと4.x両方対応アプリでタブのレイアウトを使った画面を使いたいのですが、OSのバージョン拾ってそれぞれ切り替えるというような事をしないとダメでしょうか?
つくりによる
selenium使うために10個ほどjar入れただけでまるでフリーズするおれのノートパソコン。
34 :
デフォルトの名無しさん :2013/02/04(月) 22:17:26.02
つい最近までメモリの使用量変えられるの知らなくて落ちてた俺のeclipse
javascriptが含まれたhtmlがあります。 このjavascriptには実行されるとhtmlが書き換えられるメソッドが含まれています。 この結果のhtmlを得る方法やapiはございませんでしょうか? 形としてはUI表示せずに結果htmlを取得して欲しいと思っています。 webviewやseleniumはブラウザが立ち上がりますし、htmlunitはandroidでは動かないような記載と 個人的な結果で見えました。 どうぞお知恵を貸してください。よろしくお願いいたします
webviewをinvisibleにする
アマゾンアプリと連動して設定金額分だけランダムに買い物てくれるアプリ作りたいのですがどなたか協力していただけませんか?
そんなもん需要ねーよ
>>39 ありがとうございます。
アフェリエイトリンクみたいなものですけど中身を不明にする事で福袋のような買い物が出来るアプリを作りたいと思っています。 設定金額以上には絶対に買い物しない、且つジャンルを選ぶ事が出来ればと思うのですが出来るのでしょうか。当方全くの初心者です。
>>41 これは買い物代行サービスだと認識しています。違いはユーザーが自分でできる点だと思ってます。
最終的な判断をユーザーに託すことで代行サービスどの違いがあるとおもいます。設定金額を任意に変更出来、且つジャンルを選ぶ事が出来るので少しイメージは違うと思っています。
スレ汚しであるならば大変失礼いたしました。
初心者で金に関わる物はやめとけ
少なくともアプリでやることじゃないな やるならWebでやれ
720 x 1280 4.0.4でのActionBarについて質問です アクションバーにはA、B、C、Dと四つのメニューボタンがあります android:configChanges="orientation|keyboardHidden|screenSize|screenLayout" 画面の回転による初期化は制御してあります android:uiOptions="splitActionBarWhenNarrow" スマフォでは下方に配置されるようになっています そこで画面回転時のアクションバーの動きを見てみると… ポートレートで起動すると下方に[A__B__C__D]と綺麗に配置されています 端末を動かしてランドスケープにすると [アイコン__タイトル______________________A__B__C__D] この時にAのアイコンの左端が少し切れてしまっています そして今度はランドスケープで起動すると [アイコン__タイトル______________________A__B__C__D]と綺麗に配置されています 端末を動かしてポートレートにすると [ABCD______] この時は左寄せになってしまっています 問題なく綺麗に自動整列させる為にはどうすればよいでしょうか? よろしくおねがいします
>>42 初心者といっても
(1)Androidが初心者(C++はバリバリ)
(2)javaが初心者(C++はバリバリ)
(3)Androidが初心者
(4)javaが初心者
(5)プログラム開発が初心者
と色々なレベルがあります
(1)、(2)なら短期間での開発が可能でしょうがそれ以外の場合はかなりの開発期間がかかると思います
福袋とかいったってお得感がないと流行らないよ ガチャのサイトもアマゾンからクレーム来て即終了しそうw
>>46 レスありがとうございます。
いわゆる完全なる初心者ですので時間はかかると思います。先ずは簡単なプログラミングを覚えてから出直します。
親切丁寧なご説明ありがとうございます。
処分品とか試供品とか集めてガチャサービスやったら流行るかもね 技術云々より営業が全てだけど
>>46 こんなズレたことを書いて擁護するのが突然来るとか
>>48 の自演だろ間違いなく。上の方も同じく
プログラマとしてのなんたらというより、金の流れ、需要、どのような動作ならユーザが許容するのか、そういうところの知識が、経験が重要なんだろ
51 :
45 :2013/02/05(火) 10:59:10.73
ちょっと分かってきたのは ランドスケープで起動された時に作られたアクションバーのボタンは ※[アイコン__タイトル______________________A__B__C__D] パディングが狭い ポートレートになって下方に並べられる時には再作成されずに移動しているだけなんですね ※ [ABCD______] パディングが狭いままなので左寄せで詰まる だからボタンの当たり判定の幅も狭いままだし高さも足りなくてハイライトが 下のアクションバーの上端まで届いていませんでした アクションバーだけ初期化するような方法があればよいのですが…
>>49 楽しそうですね。
色々とアイデアは有るのですが、形に出来ないもどかしさがあります。
>>49 やるならまず突撃営業して仕入からだろw
販売もすべて独自で
>>49 アイデアは面白いと思う
今はsnが発達してるから超お得か超珍しいと口伝てで一気に広がるよ
みんなガキだから世間知しらずが多いね
この人は自分で造ってやりたいんだと思うよ
オレはこの人が丁寧だからそれなりに応対しているだけ
バカにはバカなりのキツイ対応もする
自演にマルチを行うやつが丁寧でバカじゃないとww自演乙ww
自演ではありません。 この板へ来るのが初めてなだけです。 アンドロイドアプリには可能性が有ると思ってます。ご協力頂ける方が見えればと思いレスをしたまでです。 当方、スレを汚してしまったのであれば申し訳ございません。
>>54 アドバイスありがとうございました。
万が一ご協力いただける場合は是非お願いいたします。
今の時代、プログラミングが出来ることのすばらしさを痛感しております。
先程から矢面に立たされてしまわれておられますことには謝罪いたします。
すみませんでした。
別にそれやるならアプリじゃなくてもいいような スマホサイトでいいじゃね
>>58 はっ!Σ(゚Д゚)
目から鱗です。サイトで考えます。
ありがとうございました。
>>57 2chなんかでスレ汚しとかで恐縮する事なんてないですよ
ほとんど罵倒し合う所ですから うさばらしする場所
暴力に対抗出来ない軟弱なガキがほとんどだからしょうがないですけどね
リアルに会うとこっちと目も合わせられないようなお子ちゃま達ばかり
質問するならmixiの方がまともに対応してもらえると思います
ここに来てるヤツでもmixiならまともに受け答えする人が多いですから
Amazonガチャの二番煎じじゃなかったのか。
ルートとってなくてもSDカード挿してなくても 一度インスコすると記録でマーキングしておくことができる 書き込み可能なフォルダとかありますか?
マルチは全く否定しないのなw つか自演を指摘された途端に急に鳥付け始めたが、それ自演じゃない証明にならないからな しかもどう見ても臭い擁護を更に重ねちゃってるし、指摘されたもまともに聞き入れてないし
>>63 支那畜か? 日本語かなりおかしいぞw
もしくは中坊?
>>マルチは全く否定しないのなw
>>つか自演を指摘された途端に急に鳥付け始めたが、それ自演じゃない証明にならないからな
>>しかもどう見ても臭い擁護を更に重ねちゃってるし、指摘されたもまともに聞き入れてないし
>>62 /data/data/[パッケージ名]/files/[ファイル名]
>>65 これは一度アンインスコしたら全てクリアされるでしょう
アンインスコ>インスコ した時に
以前インスコしたことある足跡が判別できるようにしたいのです
>>60 できましたら暴力にどう対抗するのかご教授願えませんでしょうか
できれば警察を呼ぶという方法以外で
もしかして範馬勇次郎さんですか?
>>66 >書き込み可能なフォルダとかありますか?
最低限SDカードとは別にインターナルストレージはあるでしょ
>>70 しかないですよね
新しいまっさらのプロジェクトを建てて
4つのボタンを配置して実験してみたらやっぱり再現されました
本当に素のAPIのバグか仕様なんですね
>>71 バグではないね
画面が変わるんだからしょうがないでしょ
左倒し-縦(直立)-右倒し
ってパターンもあるよ
Activity1でボタンを押し、SQiteへデータの書き込み。intentで2へ Activity2のonCreateでデータの読み込みをしてtextviewへ表示 この際にSQLiteへ登録したデータの最初のデータだけ、Activity2で表示されません。 最初の値の書き込みはSQLiteManegerで確認出来ているのですが… 2回目以降の登録→表示は問題無くできています。 どのような問題が考えられるでしょうか?
テーマの切り替えを実装しようとしたのですが Activity内で setTheme(R.style.AppTheme); を指定 values/styles.xml <?xml version="1.0" encoding="utf-8"?> <resources> <style name="AppTheme" parent="@android:style/Theme.Holo.Light"> <item name="android:actionBarStyle">@style/my_actionbar_style</item> </style> <style name="my_actionbar_style" parent="@android:style/Widget.Holo.Light.ActionBar"> <item name="android:background">#FF0000</item> </style> </resources> アクションバーの背景は切り替わりませんでした その他にも開発サイトなどを参考にしてテストしてみましたが 何一つ上書きされませんでした これ以外に何か必要なのでしょうか?
>>73 Activity1で書き込んだと試しに直ぐにテーブル読んでみてデータある?
closeしてる?
>>75 すぐに見てデータは書き込まれてました、がcloseしていませんでした…
移動中なので後で確かめてみます。ありがとうございます。
ちなみにネットで調べていたらCursorは明示的にClose、databaseは明示的にCloseしない方が良いと書いてあったのですが、closeしても大丈夫なのでしょうか?
>>46 ちなみに俺は
(1)Androidが初心者(C++はバリバリ) → Androidプログラム歴2年
(2)javaが初心者(C++はバリバリ) → Javaプログラム歴2年
(3)Androidが初心者 → たぶん中級者
(4)javaが初心者 → たぶん中級者
(5)プログラム開発が初心者 → 15年(VB、C、C#、Perl、PHP、MySQL、HTML、CSS)
>>74 setThemeはsetContentViewを呼ぶ前に呼ばなきゃ行けない
SQLLiteのDBファイルってテキストファイル?バイナリーファイル? DBファイルをメモ帳みたいので直接開いて、中身見られる事(解析)って簡単なのかな? 今、パスワードを永続的に登録しようと思ってるんだけど DBファイルがバイナリーファイルで、解析されにくならSQLLite採用して、 解析されやすいなら他の方法にしようかと悩んでる…
>>80 SQLLiteじゃなくてSQLite。
バイナリファイルだけど、中を覗くのは簡単。パスワードとか平文で保存するのはNG。
82 :
80 :2013/02/05(火) 19:51:18.34
>>81 NGりょうかい。素早い回答ありがとう、助かったよ!
ずっとSQLLiteだとおもってたorz
83 :
74 :2013/02/05(火) 20:07:36.96
>>78 // テーマ
setTheme(R.style.AppTheme);
// レイアウト
setContentView(R.layout.activity_main);
となってます
>>83 テーマを設定できるのはViewを設定する前&1回限り
>>84 新規プロジェクトでstyles.xml書いてAndroidManifest.xmlの方は消してsetTheme()をペタリ……なぜでしょう;;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setTheme(R.style.AppTheme);
setContentView(R.layout.activity_main);
}
>>73 です。
原因はonCreateでSQLのデータを読み込む際、moveToFirst()が最初だけきちんとインデックスを読みこんでくれなかったのが原因でした
super.onCreate(savedInstanceState)より前で呼ばないとダメかも? その中で多分デフォルトのテーマ設定してる
webviewからjavascript結果のhtmlを抜きだそうとしてます。 onpagefinishをオーバーライドすれば、読込み完了は待てるようですが、スクリプト実行完了はまてないようです。 wait以外にスマートな待機ありませんか
>>89 その前にクライアントサイドで実行されるjavascriptの結果って取得できるものなの?
Preference関連って最近のSDKだとFragment使わないと警告出まくるけど 将来的に本当に削除されることなんて有り得る? 設定画面の使い勝手なんてどうでもいいし新しいやり方面倒だしテストの手間増えるし 無視して昔のやり方だけで行こうと思うんだが
>>89 ずっと更新し続けるページもあるから、無理なんじゃない?
常駐サービスからフォアグラウンドのアプリがFullScreenかどうかを知る方法ないでしょうか? ステータスバーというかノーティフィケーションが引き出せる常態か否かを知りたいのですが
>>93 通知を引き出すのはフルスクリーンでも常に可能だよ
>>90 DOM経由でアクセスできるはず
>>91 過去にdeprecatedのメソッドが空実装になったり削除されたりした実績はあるから無いとは言い切れない
メジャーどころだとTabActivityとか
>>88 そもそもそのテーマをマニフェストに書いた場合はちゃんと変化するの?
>>94 getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
とかされると出なくなると思いますが?
>>88 んじゃテーマの設定の仕方じゃなくてテーマ自体がおかしいんだろ
99 :
88 :2013/02/06(水) 10:02:38.67
>>96 >>98 parent= で継承する元のHoloやLightなどは適用されるのですが
その後の各要素を上書き指定して背景やテキストカラーを弄ろうと
どのサイトのxmlをコピペしてもなんら変化がありません
スマフォもタブもエミュも…
>>97 ステータスバーは直接スワイプしなくてもアプリ側の命令で引き下ろせるよ
それはともかくステータスバーはなくてもシステムバーの通知領域があったりするから
確認はむずかしいんじゃないかしら
root取ってハードキーかナビバーかなんかでいつでも通知下ろせるようにすることはできるし ベンダーによってそういうカスタマイズがなされてる端末がないとも限らない
お助けください。下記がtrueもfalseも実行されます。 if(String.equals(null) | String.equals("")){ Log.d("iftrue","trueらしい"); }else{ Log.d("iffalse","falseらしい"); }
>>102 if(String.equals(null) | | String.equals("")){
| |
>>102 •String ってクラス名? 変数名?
•null との比較は equals ではなく == を使うべき
•条件式の「または」は | ではなく ||
•true と false の両方実行されることはあり得ないと思うんだけど…
String str = "hoge"; if( str == null || str.equals("") ) { // true } else { // false }
107 :
デフォルトの名無しさん :2013/02/06(水) 16:17:56.40
>>105 102じゃないけど|だけだとどうなるの?
>>107 boolean 同士に使う
わかりにくいし、タイプミス→バグ発生 って事もあるから自分は使わない
||だと左が条件を満たしたら右は評価されないけど |だと両方とも評価される、じゃなかったっけ?
>>107 | は両辺が必ず評価される。int でも使える (ビット単位の論理和になる)。
|| は左辺が true なら右辺を評価しない。boolean のみ。
例えば str が null の時、str == null | str.equals("") は右辺も評価されて
例外が発生するけど、|| なら左辺が true なので右辺は評価されず、例外も出ない。
111 :
デフォルトの名無しさん :2013/02/06(水) 17:09:35.57
ほんの少し考えろ。
Android技術者認定試験(ベーシック)受かった
他人の評価を喜んでるヤツはスーパープログラマには絶対になれない ご愁傷様
115 :
114 :2013/02/06(水) 19:52:37.54
ほ、星5つなんて、嬉しくないんだからね勘違いしないでよね
日曜プログラマで十分っす
>>100 知りたいのはユーザーが引き出せる状況なのかなので
フルスクリーンだと引き出せない、
で知る方法はなさそう。ってことですね。
論理演算子を変な風に覚えてる人が多くて震えてる
>>111 A && B
A == true → B == true → 条件式のtrue
A == false → 条件式のfalse
~ はチルダだっけ | は知らん平易にand or notって記述にすればよかったのに
&&や||のほうが無駄な処理でないから普通こっち使うな
使う場面が違うかと
String[] columns = { MediaStore.Video.Media._ID, MediaStore.Video.Media.DATA, MediaStore.Video.Media.DISPLAY_NAME, MediaStore.Video.Media.DURATION, MediaStore.Video.Media.DATE_ADDED }; ContentProvider(SQLite)の質問です getContentResolver().query(MediaStore.Video.Media.EXTERNAL_CONTENT_URI, columns, ???, ???, orderHoge); 特定のフォルダ以下のレコードだけ取得したいのですが どのようにString selection, String[] selectionArgs,を書けばよろしいでしょうか? 先頭一致のようなものだと思うのですが… よろしくおねがいします
今年36歳なんですが、これからAndroidアプリの開発を覚えて 就職できますか?
前職は
Androidアプリっつっても実態はスマホ向けWebサイトだよ
やるならサーバーサイドJava
本物のAndroidアプリは
>>126
128 :
デフォルトの名無しさん :2013/02/07(木) 00:03:48.60
>>119 ありがとう
そう言うものだと思って使ってたからしらんかった
あれ PreferenceActivityでリストをタップした時にAlertDialogを表示したいんだけど
↑みすった さーせん あれ PreferenceActivityでリストをタップした時にAlertDialogを表示したいんだけど その時みんなListPreferenceかEditPreferenceを代用してる感じなの? 表示だけするTextViewみたいな要素はないのね
マッシュルームって(事実上)日本国内だけすか? SimejiやATOKって日本語だけですよね。 海外にも公開するアプリなのですが、 機能として書いても無駄なのでしょうか?
>>130 onclicklistenerとかそんなので普通にできる
DialogPreferenceってなかったっけ?
>>118 そやね
ビット演算には使うが、if文にはね...
|| ←これってキーボードのどこで出る?いつもコピペで打ち込んでる
ListViewを二段にして、一段目にTextView1つ、2段目にTextViewを横に2つってやりたい 自前のxml用意してArrayAdapterに配置したらエラーになる 色々調べてるとAdapterの自作からって方法ばかりなんだが、簡単な実装方法はありませんか?
137 :
デフォルトの名無しさん :2013/02/07(木) 07:23:35.66
>>137 ||||||||||||||||でたw
サンクス|||||||||||||||||||||
>>136 今後のことも考えて
いろんなViewやAdaperは継承して自前のクラスを作るのが基本なんだって慣れておいた方が良いよ
>>102 はコンパイル通るんだな。
bool値にビット演算子使えるって知らなかったわ。
ifの条件に整数を入れたらエラーになるって仕様になったのに、bool値に
ビット演算可能って、なんでこんな仕様なんだ。
ビット演算子というか論理演算子だし
zip操作関連で zipEntry.getName()でファイル名のみは取得できますが 収められているパス名を取得するにはどうすればいいですか?
ファイル名のみじゃないだろ
実現不可だろうけど、達人がいましたらお願いします (1)ダイアログの中で処理をさせる時にプログレスダイアログって出せますか?(無理っぽい) (2)非UIにContext渡してトーストは表示出来るけどダイアログを表示させようとすると例外発生(まぁ当たり前ですけどw) モーダレスダイアログがあれば無問題なんだけどな...
実装がきれいかどうかは置いておいて、ダイアログくらい複数表示出来ると思うが…
なんか理解のしかたが間違ってる気がするんだが… (2)はダイアログ表示の土台になるだけの透明Activityを作ればよろしい
だから〜達人以外の回答いらないって書いたでしょ(笑)
出来ない事は承知してるから
>>150 出来ないの はじかれちゃう
>>151 MainActivityの関数を使うから別のActivityは造りたくないのよね〜
複数の同じ関数を造りたくないし メンテが手間
javaにはライブラリって機能もないしね
UIだろうが非UIだろうが親がUIなんだから別に使わせればいいじゃんね
あれだけエラーをちまちま出すくせにコンパイル(正確にはコンパイルと呼べないが)は通るのに実行でエラーとはね(笑)
androidのjavaって高級車みたいだけど
あれ? 何、この車パワーウィンドウ無いの?
え? この車リモコンミラー無いの?
って事があるねぇ
モーダルダイアログ、オープンファイルダイアログ
嫌がらせとしか思えないな(笑)
注1)じゃばらーの人は関数をメソッドに置き換えて読んでね
注2)じゃばらーの人はエラーを例外に置き換えて読んでね
なんだ、いつぞやのモーダルくんか
>>150 補足しておくね
出来るよでも今問題なのはダイアログを継承しているヤツなのよ
あと、複数のダイアログは出せるけど、どっちが最前面に出てくるか知ってる?(笑)
最後のヤツなのね〜馬鹿にしてんのかってネ
ファイルオープDlgが存在&&モーダル ならなんの問題もないし、1行で済む(笑)
ファイルオープDlgだけでもかなりのステップ使うし、みんな使うものだから用意しておけばいいのにね
>>154 後から表示させた方が手前に表示されるなんて当たり前だろ
〜だったら出来るんだけどなーとか愚痴ってる暇あったら Androidで出来る範囲でどうやれば自分がやりたいことを実現出来るか考えりゃ良いのに
>>156 それができる奴はこんなとこで暴れたりしない
158 :
150 :2013/02/07(木) 18:48:27.64
>>156 その通り、だからグチを書いただけ、ここで解決できるなんて思ってもいないし解決出来る人もいないと思ってるよ
どうせピコピコゲームやユーティリティ造ってるレベルの人達なんだろ?みなさん
達人以外はすっこんでてね(笑)
でも、解決出来るスーパーマンも1人位はいるはず...と思いたい
>>151 Androidはライブラリの観念が無いからメインにスタティックで計算関数郡を実装してメインをハブにして周りからアクセスしてるから主要業務は別Activityではできないのよね
ちまちまnewしてるとゴミ収集人が主要業務をちまちま停めるからしょうがなくやってるの
ふぅ 満足した...では解決に向けて... みなさんお付き合いありがとう
>>159 俺は解決できない人だけどさ、
そういう態度だとスーパーマンは相手にしてくれないよ。
> Androidはライブラリの観念が無いから なに言ってんだコイツ? …とか煽ると「jarはライブラリじゃないから(震え声)」とか跡付けするんかね? > メインにスタティックで計算関数郡を実装してメインをハブにして周りからアクセスしてるから あ〜〜、VB出身者によくこういう奴いるわ〜〜
普通にできるけど、アホには無理なのかもな
やっぱりスーパーマン1人いたわ 解決した
>>163 はぃはぃ、 でわ書いてご覧(笑) かけねーだろ
お前には教えないっていうなら キーワードだけでも書いてご覧
かけねーだろ
バカをからかうのはこれくらいにして、
でわ、解決に至ったキーワードの最後の文字だけ書いておこうかね 「t」
FCN
ホームキーで裏に行っちゃう時点でモーダル(笑)だしな ダイアログなんかで実装しないでビューとして作った方がすっきりする
>>159 サービスで実装すりゃいいのに
startServiceで起動する方じゃなくてbindServiceでBindする方な
スーパーマン(笑)の質問者は非同期処理のやりかた知らないだけでしょ ハンドル、スレッド、サービスあたりをぐぐってじっくり挑めばいいと思うよ
設計が糞なだけじゃん
オープンファイルダイアログ作ってる時ばかばかしくなるよね
スレッドやらそこら辺のjavaの常識みたいなの知らんのよね、エラー処理とか。
そもそも、 「ユーザーがファイルをダイレクトに触る」ていうか 「ファイル」て概念を避けるUXを心がけましょう てGoogleは推奨してる節があるよね
GridViewにArrayAdapterで中身を表示させていますが 本来なら上下にスクロールさせると端にいったところで止まると思います 何回かグリグリしているとGridVIewの中身が画面外に飛んでいってしまうのですが これを直すにはどうしたらいいでしょうか?
175 :
デフォルトの名無しさん :2013/02/07(木) 20:57:26.29
listviewのなか(item)のviewををgetするにはどうしたら良いですか? getViewは違うみたいですし
getViewはフレームワーク側から呼ばれるものであって自分で呼ぶもんじゃないぞ 表示されてる範囲での一番先頭を0としてgetChild(index)でいけるはず
俺もオープンファイルactivity自分で作った もったいないからいろんなアプリで使いまわしてる googleがどう推奨してるか知らんが,俺はファイルを管理しながら使いたいんだよな
すいません。ネットラジオを録音するツールを作りたいと思っています。 実機でネットラジオを再生させたまま自作アプリを実行して、 setAudioSource(MediaRecorder.AudioSource.DEFAULT); してprepare()及びstart()しても、無音のファイルしか出力されません。 ちなみに録音中に実機に話しかけると声が録音されてます。 実機から出てるサウンドを録音するにはどうしたらいいですか。 MediaRecorder.AudioSource. の定数にそれらしい設定値がないです。 NDKとかいうのを使えばできますか
Uri指定のContentProvider経由かねえ
いや、ギャラリー使って内容を一覧で見せるとか、 ブラウザでよくあるスピードダイアルみたいに カードメタファーっぽく見せるとかじゃね? ファイル選択ダイアログを用意してないってことは あのファイル名をリスト形式で選ばせるみたいな 古臭いプアなUXは使うな、ってことだろう
アンドロイド用のシェルやらコマンドやら妄想しちまったぜ
IS01民はけっこうコマンドとかも使う 俺はアイコンの出ないランチャー使ってるし
UIがどうというより、ファイルシステムをみせるのはやめてくれってことなんだろうな スマホっていっても所詮電話機だし
理念は結構だがそれならアプリがSDに好き勝手に使えないようにしてくれ アプリをアンインストールするたびにゴミが増える糞仕様
187 :
デフォルトの名無しさん :2013/02/07(木) 23:08:44.55
アンインストール時に何か動作出来ればいいんだよ ファイルとかフォルダの削除が出来るとかさ もちろん確認ダイヤログ付きで
RingtoneManagerにgetTitleなんてないよね? 選択した値が取得できない。。
189 :
デフォルトの名無しさん :2013/02/08(金) 00:16:49.84
onOptionsItemSelected内でstartActivityを呼ぶとなぜか2重起動されます newJBで起こってGBでは起こらないのですがなぜでしょうか?
自分が思った通りに動かなかったときにどうやって調べれば良いのか分からない人多いんだな
Androidでアプリって何作るのが面白いんだろ?
ジャンルよりもアプリ開発が面白いかどうかはユーザーが付くかどうかが全てだな Webサービスのクライアントなんか簡単に作れて使ってもらいやすいからおすすめ ゲームは趣味レベルだと無茶苦茶な労力の割にロクなものができず全く評価もされないからやめたほうがいい
193 :
デフォルトの名無しさん :2013/02/08(金) 10:32:57.92
教えてください。 kernelのdev/tty1とかにアプリからアクセスしようとすると、jniとか使用しないとダメ? それとも直接、アクセスできます?
194 :
150 :2013/02/08(金) 10:56:08.78
>>193 jni経由ではどうやってアクセスするの?
同じ事はJavaからは出来ないの?
195 :
193 :2013/02/08(金) 11:15:26.73
>>194 Cでデーモンプロセスを作成して、jniとプロセスはsocket通信でつなぎます。jni側からプロセスに対して、
socket経由でアクセス要求を出し、プロセスは要求を受けとると、dev/tty1にアクセスするという方法でやります。
これは実現できてるんですが、メンテナンスが面倒なので、直接、javaアプリからdev/tty1にアクセスできないかと。
ちなみに Nexus7にtty1なんか無いけどな
197 :
150 :2013/02/08(金) 11:29:07.74
>>195 Javaから生成したプロセスからアクセス出来てるんだったらJavaからでもいけるだろ
198 :
193 :2013/02/08(金) 11:31:18.23
199 :
150 :2013/02/08(金) 11:34:22.25
>>198 そのcのプロセスを起動してるのは誰なの?
200 :
193 :2013/02/08(金) 11:39:08.61
>>199 systemだと。
起動方法はsystem/core/rootdir/init.rcに登録しています。
そこまでいじれるなら好きなようにしろとしか。
202 :
150 :2013/02/08(金) 11:44:57.90
cのライブラリとか使ってるんじゃなかったら後は権限だけだな
他アプリから暗黙intentでzipファイルかtxtファイルを送付された時に 受信して起動するアプリを作成したいのですが、どうしたらいいですか? マニュフェストのintent-filterは下記のように変更したのですが、 暗黙intentを受け取る候補に出て来なくて嵌っています。。。 <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.DEFAULT" /> <data android:mimeType="application/zip" /> <data android:mimeType="text/plain" /> </intent-filter>
205 :
dev :2013/02/08(金) 14:16:11.16
>>188 RingtoneにgetTitleあるよ
Ringtoneは取得したUriでRingtoneManagerからとればいい
Android4.0のSDKを使って開発してます。 自分のアプリではアクションバーを持たないので、MENUボタンが表示されません。 そのため、MENUを表示する用のボタンを作って、openOptionMenu()を呼び出すようにしてます。 しかし、ユーザーからメールでMENUが表示できない!と苦情を受けて、機種を聞いてみたところタブレット端末のようです。 どうやら一部のタブレット端末だとopenOptionMenu()が実行されないみたいなんです。 何処かに情報ありませんでしょうか? よろしくお願いします。
207 :
デフォルトの名無しさん :2013/02/08(金) 15:10:00.81
>>206 android4.0以上は基本menuボタンがないと思ったほうがいい
208 :
デフォルトの名無しさん :2013/02/08(金) 15:10:54.26
>>208 メニューボタンを使うような設計しか出来ない阿呆は馬鹿
危険が危ないと同じだな
自分で使ってみてアホだなこいつって思わないか?
>>206 完全にタブレット端末依存の問題だったら純粋なタブ端末を持ってない
自分(Nexus7しかない)にはお手上げだけど「表示されない」というと
openOptionsMenu()の挙動でメニューが画面下部に表示されるように
なっているので下部にボタンやオブジェクトを配置している場合に
フォーカスが合わないで利用できなかったりz軸上の下に描画されて
しまってメニューを押しても何も起きてないように見える事があったと思う
>>209 android+javaはクソだなやっぱり(笑)
結局回答らしい回答は1件だけだったな
透明のアクティビティを使ってのが1件 ※アホ 初めに考えるのがこいつだわw
ファイル名(パス)1個とってくるだけの為に使うか?普通(笑) あきれるわw
あとは知識もないのに吠えてるだけ(笑)
スレッド?ハンドル?
表示がずれるって知ってていってるの? アマチュアさん(笑)
いいなぁ、javaしか知らない馬鹿どもは...
android モーダレスなダイアログだが...裏の画面触れないじゃん?(笑) それなら、モーダルにしておけよ はじめから 嫌がらせ?号グルへのチューセーシン? C+++Win から降りてくるとまぁひどいもんだな ってのが感想ですわ(笑) android乞食 よくやってるよな 感心するわ(笑) B++だからなjavaは C#もB#だな あれはw
携帯端末にPC並の性能求める時点で間違ってるとは思わんか?
C+++Winから降りてこざるを得なかったような雑魚が吠えてる吠えてるw Android案件を断ることができなかった時点でお前舐められてるんだよ
とまぁ、暖かい南の島で泡盛飲んで気持ちの良い所で...っと スレッドでモーダル(もどき)を実現してる(できてるか?ホントに?)って人が2人いたが、 あんなめんどーな事をしなくても実現出来るけど なんであんなやり方してる?不思議 スーパーマンはもっと楽な方法で実現してたな、自分のはそれを参考にさらに簡潔に はぃ、そろそろandroid土方ってのが在宅して来る頃でしょ?(笑) あそぼーか? 今夜も(笑) 自分のコードの方がスゲーぞって人がいたら書いてみな いねーだろーけどさw
煽り方が陳腐だなあ
>>213 アホ 2.1の端末でもすごいスペックもってるぜ
あんたが引き出せないだけ ちばりや〜
ごちゃごちゃえらそーな事いってる馬鹿 自分のコード載せてみぃ プログラマはコードで競うもんだろ?
昨日ふと思ったけどアンドロイドのバージョンってさ ROM(フラッシュだろうが)のサブルーチンの実装だけって事か? 買い替えさせるための合グルの策略か? オブジェにライブラリで結合させれば古い機種でも最新の機能が使えるはずなのにな?
さぶるーちんのじっそう?
サブルーチンなんつう単語、久しぶりに聞いたな
222 :
デフォルトの名無しさん :2013/02/08(金) 20:08:23.43
AIDE製のってアプリってマーケットにあんの?
いつものjavaキチか。自分が一番素人のくせに他人の罵倒だけは 3人前以上とか何のギャグだよ。
友人に作ったアプリのデバッグとか感想頼みたいんだが、遠くにいるからPCと接続出来ない。 ネット経由でインストールして貰う方法はありますか?
>>225 メールに添付してGMailアプリとかで受ければそこからインストールできたはず
WebにアップでもOK
>>226 apkへのリンクをメールなりで添付したらいいのか
ありがとうございます
勉強はしたものの作りたいアプリのアイデアが浮かばない どうしたものか
練習用の定番みたいなの作ってみても良いんじゃ 電卓とかゲームならオセロとか
電卓って自分でスタックマシン作るんだっけ。
いや普通の電卓なら今の値と演算子を覚えておけばいいだけ
良い感じのUIおいてあるサイトない?
スマホ、デザインとかでググるといろいろ出てくるからその辺見てる
>>211 自分で自分の画面にツバ吐きながら、その事に気づけない精神患者は、どうぞ巣にお帰りください
winやlinuxみたいにアプデがマメにあってもいいと思うけど電話ゆえに 不具合あると不味いからサブルーチンの実装をいじれないんだろう。
サブルーチン()は置いておくにしても 電話と直に絡む部分はほとんどがチップセット依存でメーカーでもほとんど触れない場所だぞ
ガラケーの頃に比べるとランチェンも楽になったけどねえ、コスト的な意味で
broadcastなお話なのですが。 mainActivity extends Activity{ static TextView textview: //その他メンバとか onCreate{ setContentView(hogehogehogehgoeho); textview=(textviewbyid)findviewbyid(R.id.texttttt); //その他メソッド実行とか //1 Receiver receiver = new Receiver(); intentFilter = new IntentFilter(); intentFilter.addAction("MY_ACTION"); registerReceiver(receiver, intentFilter) } static class Receiver extends BroadcastReceiver{ //Activityのインナークラスにする場合staticでないとダメ onReceive{ textview.settext("なんでnullやねんぼけ"); } } これで、serviceからフラグをbroadcastReceiverを受け取ってonReceiverが働いた時、 textviewがnullです。 //1でもtextviewをsettextしますがこっちはnullではないです。 情報いただけるとありがたいです。
Receiver staticだし//1でセットしたActivityとは別インスタンスなんだろ
static class Receiver extends BroadcastReceiver{ //Activityのインナークラスにする場合staticでないとダメ onReceive{ Log.d("textview check","textview is "+textview); textview.settext("なんでnullやねんぼけ"); } } こうするとlog.dの結果は、textviewはnullです。 更によくわからないのが、nullで「強制終了します」って出たあと、実際には強制終了せず、 強制終了ダイアログのうらでtextviewは「なんでnullやねんぼけ」と、ちゃんと表示されます。 activityのリロードとonReceiveのが非同期で動いている・・・? activity1面とservice一本しか動いてないので、activityがリロードされるほどメモリリークするような要素も考えられません。
リロードされる云々は抜きにしてUI部品をスタティックに格納するなんて糞設計は止めてくれ
わかった。 broadcastreceiver内でレイアウトの定義がないからfindviewbyidの戻りを持ってきてもハテナじゃないのかな。
スコープ勉強しろし
247 :
デフォルトの名無しさん :2013/02/09(土) 09:42:04.08
>>245 本人だったんじゃねw
アプリ作れないから辞めます的なw
>>59 blog.esuteru.com/lite/archives/6913931.html
とりあえず二度と来んなカス
androidのSDカード周りのバグなんだけど(結構大きいバグ) 最近の機種って治ってるのかな? ユーザーレベルでも気が付いている人もいるけど どうやったら再現出来るかまでは見つけられないみたいだね メーカーが違っても出るから供給元のソースにバグがあるんだろうけど...
250 :
デフォルトの名無しさん :2013/02/09(土) 13:43:16.86
>>249 具体的に挙げないと、OSか、あんたのコードのバグかわからん
今日も仲良くバグとハグしてます バグはパグの名前です うちのバグもだいぶハクがついてきたなぁ
うるさいだまれ
MIBのわんこか かわいいな あれ
Javaの話になるのですが ある範囲の条件が沢山(50個ぐらい)ある場合、 if文以外でスマートな書き方ってありますか? 例えば if ( a > 1 && a < 10 ) 処理 if ( a > 9 && a < 20 ) 処理 ・ ・ ・
わかってるならJavaスレで訊けよ 境界値とその処理を行うクラスを配列に入れておくとか
いいじゃねぇかぃ androidもジャバなんだからさぁ 亜流だけど ゴーフルの我流だな(笑) >>if ( a > 1 && a < 10 ) 処理 >>if ( a > 9 && a < 20 ) 処理 こんな書き方してる位だから初心者だろうし 言語関係なくアルゴリズムだな >>ある範囲の条件が沢山(50個ぐらい)ある場合、 >>if文以外でスマートな書き方ってありますか? 全部見ないと判断出来ないが、そのままif文てのは多分スマートじゃないだろうね ex. 整数演算で剰余をとったり割ったりして switch()にするとか...
AsyncTaskLoaderで一度完了してから画面回転すると(onCreate) 次に実行した時にはコンストラクタの後うんともすんとも言わなくなるのは何故だろう…
>>259 それしちゃうと今度はアクションバーのViewが再作成されなくなるから
回転するとSplitActionBarのボタンの整列とかおかしくなるし…
というより回転によってonDestroy→onCreateってなってるんだから 全部初期化されていないんかいっていう
俺もそれどうやって初期化しようか悩んだことあるわ 結局インテントで自分のクラスを呼んだったw
何をトリガにしてloaderをキックしてるかは知らないから、当てはまるかどうかはわらかんが、 1.はじめにloaderをキックするときにはrestartloaderで開始 2.onCreateの回転対策ではinitloader 3.onloadfinishedでdestroyloader でいいんでない? actionbarのことは考慮してない
onStartLoadingでforceLoad呼ぶとかそんなんでOKだった気がする
LoaderManagerの方は縦横切り替えなんかでも状態の管理やろうとするからAsyncTaskLoader側でも考慮しないとダメ
forceload()は元々呼んでるけど onCreateでinitLoader()せず onLoadFinishedでdestroyLoader()せず 使いたい時にrestartLoader()で始める …とやってみたら回転してonCreateされた後でもLoader利いてくれたわ
267 :
266 :2013/02/09(土) 21:22:03.96
撤回いたします…
結構苦労するよね 『回転』 普通にデータを残したまま回転すればいいと思うが データもぜ〜んぶ消えちゃう 『回転』じゃなくて『回天』だな
回転したらコールバック一個とレイアウトの再割り当てだけでいいのに どうしてこんなに余計なことしてくれるんだか
>>270 あと、普通は気がつかないけど
ondraw()なんで?て思う位何回も呼ばれる
272 :
デフォルトの名無しさん :2013/02/09(土) 23:40:56.77
質問です SDカードにBitmapを保存する際に、ARGBのA(透明度)が保たれていないようで 保存したBitmapを読み込んだ時にAの値がおかしくなっています(-1 ?) 透明度の値も保って保存することはできないでしょうか・・・
>>272 Bitmapデータを何の形式で保存してるの?
275 :
デフォルトの名無しさん :2013/02/10(日) 00:15:10.65
>>274 pngです
今jpgでもやってみたのですがやはりこちらもだめでした
よくわからないんだが、A情報はpngやjpgに載るの?
277 :
デフォルトの名無しさん :2013/02/10(日) 00:29:45.58
alpha情報は保存されなってことなんでしょうかね 何形式で保存すればいいんだろ・・・png jpg以外に ありますっけ?
BitmapはちゃんとARGBで作ってるか?
279 :
デフォルトの名無しさん :2013/02/10(日) 00:45:58.53
ARGB_8888で作ってて とりあえず全ピクセルのalpha値をpng形式でSDカードに保存 んで、保存したやつを読み込んでalpha値にアクセスしてみると-1が返ってきます・・・ png jpg とあと gif がandroidでは主?みたいな感じらしいのですが 透明度情報と保存について一緒にかかれているページが無く、わからない状況です
280 :
デフォルトの名無しさん :2013/02/10(日) 00:49:34.43
>>279 ぬけてました
とりあえず全ピクセルのalpha値を(255にして)png形式でSDカードに保存
保存前のbitmapはちゃんとalpha持ってるの?
282 :
デフォルトの名無しさん :2013/02/10(日) 00:57:11.67
持ってます setPixselを使ってとりあえず 全ピクセルにColor.ARGB(255,r,g,b)をしてます r,g,bは元の値のまま
むしろGIFは使うなって言ってるはずだけど… 255以外の値設定してみて、255=-1でもあるし
284 :
デフォルトの名無しさん :2013/02/10(日) 01:13:09.18
できました! 色の取得のしかたが間違っていたようです・・・ getPixelsでpix配列に用意して a = ((pix[x+y*wid] & 0xFF000000)) >> 24; このようにやってたのがよくなかったようで int pixel = pix[x+y*wid]; a = Color.alpha(pixel); としたらできました・・・
285 :
デフォルトの名無しさん :2013/02/10(日) 01:25:11.31
>>284 です
できてなかったです・・・orz
-1じゃなくて255が帰ってきてぬか喜びしてました
透明度を全ピクセル100にして保存し、呼び出して透明度を調べると255になってました
画像の見た目自体は変わってるのになんでだろうorz
>>273 回転に関しての事
1〜2回余分に呼ばれる時もあれば、呼ばれない時もある
>>285 >>全ピクセルにColor.ARGB(255,r,g,b)をしてます
>>((pix[x+y*wid] & 0xFF000000)) >> 24;
結果は0xFFだから255
(int)にすれば-1
何もおかしくない
おかしいのは...書くのは控えておこう
バカにはムリw
>>287 言わんとしていることはわかるけど、
255をintにしても255のままだよね
h.264のままで、モザイクかけることができるフリーソフト誰か作ってよ スマホで撮影したセックス動画をアップしたいのさ
スマフォでエンコードとかw
スマホで撮影した動画をPCでエンコードしたいんだろ。
ああここAndroidスレか。 スマホでエンコは徒歩でフルマラソンやるようなもんだから あきらめろ。
296 :
デフォルトの名無しさん :2013/02/10(日) 14:53:50.91
eclipseでndkをビルドしようとすると ビルドはちゃんと通るのですが 実行時にeclipseでcppのソースコードのNULLの箇所に Symbol 'NULL' could not be resolved と出ます。 これはどうやって解消すればよいのでしょうか?
>>298 >>Symbol 'NULL' could not be resolved
>>シンボル('NULL')を解決することができませんでした。
その部分のソースは?
#include <stdio.h> をしたらエラーが取れました。 もうひとつtemplateの部分で Invalid template argumentsといわれます。 ndk-buildは通るし、間違っているように見えないのですが なぜeclipseはエラーというのでしょうか?
>>300 >>#include <stdio.h>
これを忘れるとはすごい人だな 頑張ってね〜
>>295 でも余ってるアンドロイドでエンコードできたら便利じゃないすか?
めんどくせーからそのまんまあげろよ
>>302 現物みないと判断できないから撮影したハメ撮りをとりあえずアプローダーでアップ
とりあえずそこからはじめよう
>>302 カスすぎるな
エンコードじゃなくて援交でもしてなw
>>302 アンドロイド端末のメモリをPCで使えるようにするとか、そういうこと?
>>302 お前はプログラミング技術のある奴を魔法使いかなんかと勘違いしてるのかもしれないが
アプリ作る労力を時給換算したら最上級のXeon機が十分買えるんだぞw
それは、正当に換算すれば、の話ですね、まずありえないw
SeekBarを使ったアプリ作ろうとしているんだが, SeekBarの値を1刻みではなく10刻みで動かしたい.(音量調節みたいな感じ) どうすれば良いでしょうか.ご教授お願いします.
>>307 >>アプリ作る労力
さびしいやっちゃな
キミには楽しみじゃないんだ(笑)
>>309 ヒント:SeekBarの値と実際に使う値が同じである必要はない
312 :
デフォルトの名無しさん :2013/02/10(日) 22:58:54.69
Activity_A Activity_B がありまして、Activity_A から Activity_B をstartActivityでキックします。 その後、ユーザーのBACK操作によって Activity_Bが終了して Activity_A に戻るのですが、 その時に Activity_B から Activity_A に変数を渡すには それぞれのソースにどのように記述をすれば良いのでしょうか。 宜しくお願いします。
ダイアログのレイアウトに スクロールビュー内に色々と設定ウィジェットを詰め込んだモノがあるんだけど ランドスケープだと下の方まで設定メニューがあるかどうか気づかないんだよね windowsだとスクロールバーがいつでも出てるからわかるんだけど… こういう作り方って駄目なのかな?
最後の項目が途中で切れるように調整したら? Windowsストアアプリではそういうガイドラインがあるらしい
>>314 スクロールビューのスクロールバーを出しっぱなしにしてみたけど
気づかない人は気づかない気がする
またあえて項目を切れるようにしたとしてもインチによって見た目が違うだろうし…
決定ボタンをレイアウト内のボタンとして最後に埋め込めばいいけれど
これまた人によってはバックボタン押してしまって「反映されないよ怒」ってなるだろうし
Serviceでforegroundスタートして、バインドしたときに、 unbindで終了しない方法教えてください
>>316 やったことないけど、startserviceで先にserviceしてからbindしたら?
次のアプリで試してみようと思ってたんだが、結果がわかったら教えて下さい
318 :
デフォルトの名無しさん :2013/02/11(月) 00:04:34.03
質問です ListAとListBの2つがあり両方とも List.get(int index).getName();で名前 List.get(int index).getTime();で時間(1360506520000のような時間) が取得できるとしてListに要素を加えるときは List.set(String name,Long time); だとした時 ListAとListBをあわせて時間でソート(降順)したListCを作りたいときどのようにするのがスマートでしょうか?
>>318 nameがユニークかによって返答変わる
SONYのsmallappの話ってここでOK?
321 :
デフォルトの名無しさん :2013/02/11(月) 00:38:04.72
323 :
デフォルトの名無しさん :2013/02/11(月) 01:15:11.10
お初です。よろしくお願いします。 AlertDialog上のEditTextに入力された文字列を、 ArrayListに入れてリスト表示させたいです。 OnCreateの時点で、 ArrayList<String> NameList = new ArrayList<String>(); を書いて、 ダイアログで入力された時の処理で、 NameList.add("Hoge"); を書くと、解決できない。と怒られます。 ご教授下さい…
324 :
デフォルトの名無しさん :2013/02/11(月) 01:29:23.36
ギャラリーを呼び出す時に Intent intent = new Intent(); intent.setType("image/png"); intent.setAction(Intent.ACTION_GET_CONTENT); startActivityForResult(intent,REQUEST_GALLERY); という風にしているのですが、XperiaのSO-2Cの機種で ギャラリーの画像が選択にでてきません アプリ上で作った画像もpng形式で保存しているのですがそれでもでてきません。 同じプログラムでXperiaのSO-4Dの機種ではpng形式で保存した画像も ギャラリー呼び出しで選択にでてくるのですが...
325 :
313 :2013/02/11(月) 01:34:35.71
>>323 どうせ使いまわすんだからフィールドにしたら
Android開発って楽しいなぁ いろんな所に落とし穴があって、ゲームやってるよりはるかに面白い はじめは武器もマップも持たずにダンジョンに入っているようなものだったが、いまでは武器も地図のレベルもあがって快適だ でもたまに落とし穴に落とされるがw
そうかなあ 低レベルな制御をしてなんとか動かす面白さがない代わりに手軽に普通に動くって印象だわ
みんなはActivity間で「SQLiteDatabase db」と「DatabaseManager dbHelper」の受け渡しってどうやってる? やっぱActivityごとに作るの?
>>329 何を造るかによってだね
システムと言えるレベルを造ろうとすると課題・難題が多い
332 :
デフォルトの名無しさん :2013/02/11(月) 13:15:55.62
>>323 です
ArrayListをグローバル変数にするにはどうしたらよいのでしょうか。
Javaのスコープについて勉強しろ
334 :
デフォルトの名無しさん :2013/02/11(月) 14:09:57.05
javaの基礎すら知らない奴がいるんだな
336 :
デフォルトの名無しさん :2013/02/11(月) 14:26:32.71
ArrayAdapter requires the resource ID to be a TextViewと出るのですがなぜでしょうか?
TextViewだけにしたらでなくなるというブログもありますがいろいろ追加したものを作りたいのでそれだと本末転倒です
xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="
http://schemas.android.com/apk/res/android " android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center|left" >
<Space
android:id="@+id/space_adapter"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<ImageView
android:id="@+id/icon_adapter"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_launcher" />
<Space
android:layout_width="15dp"
android:layout_height="match_parent" />
<TextView
android:id="@+id/text_adapter"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Medium Text" />
</LinearLayout>
>>332 とりあえず、クラス宣言のすぐ下におきなはれ
自分でまともにアプリも造れない意地悪(たぶん低能)が多いけどスルーするように
338 :
デフォルトの名無しさん :2013/02/11(月) 16:10:32.71
Preference の値が変更されたときに、 例えばテキストとして "hoge" に変更された時、 /data/data/{packageName}/shared_prefs/ のxmlファイルに 書き込まれる情報として "hogeX" と、文字列に"X"を足したい場合 どのように記述すれば良いでしょうか? Preferenceが変更されたときに呼ばれるリスナーの中で 記述することは分かりましたが、中でどのように書けばよいかが分かりません。 宜しくお願いします。
339 :
338 :2013/02/11(月) 17:02:05.27
なお、試したことは以下です。 これでは動作しませんでした。 PreferenceActivityをextendsしているクラス内で、 final CharSequence cs = getText(R.string.pref_key); final Preference pref = (Preference)findPreference(cs); pref.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() { @Override public boolean onPreferenceChange(Preference preference, Object newValue) { // 変更された文字列を変更する Editor e = preference.getEditor(); e.putString(getText(R.string.pref_masterpass_key).toString(), newValue.toString() + "X"); e.commit(); return true; }
340 :
338 :2013/02/11(月) 17:03:31.91
連稿すみません。編集を失敗していましたので 再投稿させていただきます。 試したのは以下のコードです。これでは変更されませんでした。 final CharSequence cs = getText(R.string.pref_masterpass_key); final Preference pref_masterpass = (Preference)findPreference(cs); pref_masterpass.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() { @Override public boolean onPreferenceChange(Preference preference, Object newValue) { // 変更された文字列を変更する Editor e = preference.getEditor(); e.putString(getText(R.string.pref_key).toString(), newValue.toString() + "m"); e.commit(); return true; }
Android経験ありますって面接に来る人間でも大体こんなレベル
onPreferenceChangeが呼ばれるタイミングをこたえよ(5点)
onPreferenceChangeが呼ばれるタイミングは あくまでもPreferenceから呼ばれるAlertDialogからの 編集のみだと思っています。 上記の e.comit() のタイミングでは呼ばれません。 とは別の話で、xmlに設定が反映されるのは あくまでも return true で true が返った時でした。 ということは、 ・書き換える内容を変更する ・true が返った後で、再度変更する のいずれかになると思いますが、 そのどちらも方法が分かりません。
カスタマイズしたlistviewにトグルボタンを追加したら リスト押下時にリストのonItemClickへイベントが来なくなった。。 助けてくれるとうれしいです
345 :
338 :2013/02/11(月) 17:20:10.57
あぁ、大変申し訳ありません。 Prefernce ではなく、 EditTextPreference でした。 いずれにしても結果は変わらずですが。
>>334 flashやjavascriptやってたやつがスマフォアプリに手を出してるんじゃないか。
347 :
338 :2013/02/11(月) 17:50:57.04
面倒がらずに、独自クラスを作って対処しました。 そう言えば過去レスにもこういうこと言っている人がいましたね。 ありがとうございました。
flashとかjavascriptにもスコープくらいあるだろ…
349 :
デフォルトの名無しさん :2013/02/11(月) 18:50:49.52
350 :
349 :2013/02/11(月) 18:57:02.41
あ、申し訳ありません。 上記はナシでお願いします。取り下げます。
>>349 なんか根本的にやり方を勘違いしているような……
>>348 グローバル変数があるかないかと言う話だろ。
354 :
デフォルトの名無しさん :2013/02/11(月) 20:14:30.53
すんません。現在一通りWinにEclipseやらAndroidSDKやら 入れて勉強してるんですが、いきなり引っかかりました。 最初プロジェクトを作って最小限のソースが出来てますが それでもう既にいきなりエラーがあってどうしようもないっす。 「activity_main は解決できないか、フィールドではありません」とエラーが出ます。 res/layout/ にあるレイアウト用のxmlは「activity_main.xml」なんすけどね… 何もしてないのにエラー出るんで困ってます助けて〜
まだ被害小さいからいったん閉じて作り直せば。 はじめたばかりはワークスペースのバックアップはマメに。毎回別フォ ルダーに。っつうかバージョンあげたら勝手にバックアップ作ってほしい =>eclipse
stackoverflow落ちた
358 :
デフォルトの名無しさん :2013/02/11(月) 20:44:12.80
>>337 親切なご回答ありがとうございます。
解決して動きました。そこでもう一つ質問させてください。
ArrayListの中にArrayListを入れたいと考えてます。
具体的には、
部屋のArrayListには、部屋の名前(String型)と中にいる人のArrayList。
部屋のArrayListのリスト表示Activityで、ある部屋名をタップすると、
その部屋の中にいる人のArrayListのリスト表示Activity。
実装するためにはどうしたらよいでしょうか…
アドバイスの程よろしくお願いします。
>>355 です
何度かプロジェクトを作り直してもエラーだったんですが
でもワークスペース(フォルダ)を移動したらエラー消えました!
一体何が悪かったのか… 出だしから困惑するなぁ。
Google playに公開しているアプリをバージョンアップする時に 「アップデートの通知をタップしてくれて、Google playのページを見に来てくれた ユーザーさんにメッセージ(注意喚起)を表示したい」 と思うのですが、これは可能でしょうか?
>>359 ワークスペースは作るフォルダ選ぶよね。マイドキュメントに作れたり
作れなかったり。日立は平気でNECは駄目だったり。
>>361 すんません!自分は
>>354 でした!
とりあえずまったく同じディレクトリにワークスペース用のフォルダを
別に作って切り替えてからそこにプロジェクトを作ったらOKでした!
Eclipseだとワークスペースはいろいろグループ分けでネストしたいのに 全部直下にぶちこまなきゃならないのが嫌なんだよな
実験でカメラやってるんですが中華タブレットで動作させた時だけ camera.setPreviewDisplay(holder); のところで例外がおこりその後の動作が正常にいかないみたいです 原因はわからないのですが何か対処法とかはありますか?
カメラの背面前面の起動時設定とかは? 手持ちの中華だけ背面がないのに、背面起動しようとしてるとか。 カメラ関連やったことないけどね!
>>359 今後そういう謎のエラーで沢山悩まされると思うから覚悟しといたほうがいいよ
そういえば前面しかカメラない どちらかの設定ってあったかな
アプリを再起動させたくて確認ダイアログの後にfinish();ってやると onPause→onStop→onDestroy のはずが onPause→・・・・・・・・・・・・・・・・ たまにホームに帰るだけで静止する場合があるんだけどどうしてだろう アプリを落としてonDestroyまで行かせたい時にfinish();じゃ駄目なのかな?
>>369 onStopやonDestroyはもともと呼ばれる保証はないよ。
onStopやonDestroyがどういうときに要るのか,いまだによくわからない
指定したフォルダ以下のファイル名(階層の下も全部)を順次取得す方法ありますか?
>>369 完全に終了させて再起動すると リソース(電池等)を多く消費する(らしい)
ので自分(アプリ側)でfinish()しても完全には終了しないで待機状態になってる
そのまま使わないでいると最後は落ちるけど、いつ落ちるかはAndroid様まかせ
ちなみにアプリを終了しなくても、そのアプリが使われていないとAndroid様が判断すると落とされる
全てAndroid様のご判断
基本的にほとんどのアプリに終了ボタンはないよね
強制的にアプリを落とす為には
(1)例外を発生させる
(2)スリーパーキラーを登場させる while(true) {} を入れてやるとすぐ登場してくる
>>371 例)
完全終了して、次の起動時に終了した状態から再開したい場合、
onDestroy()でファイル等に記憶させておくと戻せる
タッチ入力をコールバックを使わずに直接チェックする関数はありますか win32apiで言うところのgetAsyncKeyStateみたいな
layoutフォルダの件で誰か知っている方いらっしゃったら教えて下さい いま、フォルダを以下の構成にしています (1) layout (2) layout-hdpi (3) layout-sw600dp (1)に通常のレイアウト(800x480が主なターゲット)を入れて、 (3)にNexus7に対応したレイアウトを入れています (2)には、F-05D等(1280x720)に対応したレイアウトを入れてます ですが、Nexus Sだと800x480にも関わらず(2)が選ばれてしまいます この場合、どの様にlayoutフォルダを構成すればいいのでしょうか?
>>376 そもそも、ループで回して処理しようとすると落とされる
素直にコールバックで
>>377 自分の場合はlayout-small, normal, large, xlargeと画面の大きさでレイアウトや文字の大きさを
分けて表示する内容はdp(160dp=1インチ)で指定して、画面の違いに対応してる。
hdpiとかmdpiは画面の密度の指定だから、解像度が低くても画面が小さかったら密度が
高くなってしまう。
密度の指定とsw600dpとか解像度の指定と混在した場合はどういう挙動になるか意識ことが
ないから分からない。
解決しないけど参考までに。
>>375 でも,onDestroyが呼ばれるかどうかは状況によるんだよね?
メモリ不足でkillされたときは状態を復帰できない,みたいなことにならない?
320×480のバッファ領域に画面のデータを作成して、 そいつを実際のデバイスの解像度に合わせて 高さ方向か幅方向のいずれかにぶつかるまで等倍に拡大すればよい そうすれば320x480の画面に描画することしか考えなくてよくなる
>>380 確実に保存したかったらonPauseで。
>>379 なるほど layout-small, normal, large, xlarge なんて
指定方法があるんですね
これも含めてちょっと検討してみます
>>381 流石にそれだとゲーム位しか応用が利かない気がしますw
ただの拡大だと文字フォントなどガクガクになっちゃいませんか?
>>383 良く調べるとlayout-small, normal, large, xlarge は非推奨になった様です
う〜〜〜ん、これだからAndroidは面倒ですね
さぁ、どうするべきか!?
タブレット版は有料とかってどうかな 高解像度の画像やレイアウトとかの対応に手間かかるし というかそのためにタブ買ったから元を取りたいわw
>>370 まじですか途中セーブ機能つくってデストロイで呼べばいいと思ってた
>>380 kill されたら諦めるしかないでしょ
でもならないと思うよ
ってか、心配なら時間が余ってる時にsaveしておけばいい
>>382 >>387 うーん,結局状態保存とかはonPauseでやっちゃって,onDestroyとかの出番が
ないんだよね
そうするとわざわざonDestroyでやるメリットは何なんだろ,と思ってさ
リソースの解放系かなあ killされた時は解放されるから不要だけど通常終了時は必要
でも呼ばれないときあるんでしょ
>>391 呼ばれないで終了してるときはプロセス自体が終了しているのでリソースは解放されてる
おお、普通に呼ばれたときは自分で開放しないとだめなのね 設計者が悪いな軸がぶれてる
あの人は軸がぶれてない。素敵 foregroundサービスはどうするのが親切なのかな。ondestroyなんかにstopservice入れたら終了しちゃうしな
>>394 画面閉じるときにサービスも停止させていいならそれでいいし
サービスは残しておきたいなら、残しておいて、
通知領域選択から終了させるための画面を開けるようにしておくとか
約40MBの画像リソースを扱う脱出ゲームのようなアプリをJava+スクリプトエンジンにて制作中なのですが、 RAMメモリが512MB以下の端末でテストするとどうしてもLowMemoryKillerが走り、プレイ途中にアプリが落ちます。 DDMSでLogとヒープを確認したところヒープメモリ使用量は最大9MB程度で、 他の実行中プロセスがKILLと再スタートを繰り返している内に当方のアプリも落ちてしまうようです。 この対策として有効な手法などありましたら教えていただきたいのですが… どなたかご存知でしょうか?よろしくお願い致します。
>>367 うぁ〜それは嫌ですね…
そういうのはもう無いことを祈ります…
>>397 apkの総容量が50MBまでの制限なのに、画像で40MBというのがそもそもAndroid向けじゃない
仕様の設計から考え直すべきだとおもうけど。
PS3用のソフトをファミコンで動かそうとしてるのと同じことだよ。
どの環境でも言えることだけどソフト開発は、ハード設計に合わせるのが重要だよ
>>398 今までどんな開発ソフト使用してきたか知らないからなんともいえないけども
eclipseの不安定さは俺の中では歴代ワースト1位ww
原因不明のトラブルは200%起こると言い切れるww
きっと次のような事に遭遇するとおもうよん
・activity_main.xmlのGUIツールが突然「xml loadエラー」になりレイアウト修正ができなくなる。とか
・activity_main.xmlをばりばり変更したらR内のID割り当てがハチャメチャになってビルドしたらダウンするようになる。とかw
・ソースのimport文に他のプロジェクトのRが勝手に追加されててビルドエラーでるようになる。とか
・プロジェクト内にある「Android x.x」フォルダが突然消えて無くなってビルドエラーでるようになる。とか
・ひさびさに新規プロジェクト作ろうとしたら、勝手に画面が新しいのに変わってて苦戦する。とかw
・ADBがいきなりダウンしてて、実機テストが突然できなくなる。とか
・デバック用の署名が有効期限切れ起こしてビルドエラーでるようになる。とかw
ようこそ!迷走の世界へ!
私達はあなたを歓迎しますww
eclipseがデレからツンになった時の合言葉を特別に教えてあげる♪
@「プロジェクト」→「クリーン」
A「PCの再起動」
B最後は「Google検索」の3つだよお兄ちゃん♪ww
ADTが悪い
>> ・デバック用の署名が有効期限切れ起こしてビルドエラーでるようになる。とかw これはeclipse関係なくねw まあ俺もeclipse好きじゃないから使ってないけども
>>402 Eclipse関係大有りw半年か1年放置して再開するとそれなる。
全てのプロジェクトがビルドできなくなり最初焦るよ。
そしてEclipseらしいのが署名の有効期限が過ぎたから動かないというメッセージが出ないから
まったくわからないエラー化する点だな
うろ覚えだけど「Error(-1)」とか謎のメッセージ表示されるだけだったと思われ…
他のデベロッパツールでこんな事起きた事ないw
なるほどエラーメッセージが出ないってのはひでーな その点ではコマンドラインのほうがマシだなw
>>400 最近は安定してるな かなり
以前は文字化けとかへんなインポートがよく出てたが
@ABは納得だなw
C実機にもバグがある
ってのもあったな
デバッグ署名の有効期限切れはちゃんとエラー出るだろ
>>406 さて、今日の課題は、
「Activity2からAndroid1内の静的に確保したインスタンスの関数を使えるか」
です
色々抜け道があって楽しいね〜Android
xml編集してるとカーソルが乗ると他の行が表示されるバグがあるよね 見た目は編集前の状態で実際は編集後の状態で カーソルが乗ると本物が見えるみたいな あれはひどい
XMLにコメントが書けないのは何故? 不思議だなぁ
えっ?
>>409 out.xml が出るバグも いい加減に直そうとしないのかな?
そいつを消そうとする時の右クリック 'D' で削除も出来ないバグも
>>410 各パラメータの後ろに書きたいじゃん ネw
<TextView android:layout_width="fill_parent" <!-- ここに --> android:layout_height="wrap_content" <!-- 書きたいって --> android:text="@string/hello" <!-- ことでしょ。 --> />
>>411 それべつにバグじゃないよ
Eclipseのxmlに対するアドオンの挙動です
いやなら外せばいい
>>414 例:<data <!-- ここにコメントは書けない --> >
そのとおり
>>415 制限を外せるの?
コメントに対してはバグとは書いてないけどね 仕様かと思ってた
Unsignedでapkを作っても端末にインストールできない 野良apkってどうやってパッケージするのかな?
マーケット通さなくてもとりあえず署名しないとインストールできないのか…
>>418 署名なんかいらんよ
正体不明のなんとかってのにチェックを入れた?
正体不明と語句は違うがw
>>419 入れてあるけれどUnsignedはインストールできませんでしたって結果ログがでちゃう
2.3の頃も4.0でも
デバッグ証明書というのを今知った。 ググったら一年たつとeclipseでエラーがでるからdebug.keystoreを削除しなさいって 書いてあるページがでてくるのだけど、もしかしたら署名とか意識しないでできたapkを 野良インストールしてると、そっちも一年で使えなくなるの?
>>403 それeclipseのせいじゃないし、いまはもう1年じゃないし。
423 :
デフォルトの名無しさん :2013/02/13(水) 14:21:43.85
調べても分からなかったのでわらにもすがる思いで質問。 ブラウザで homu://aaaa.bbbb/ みたいなリンクを用意して、それを踏んだら起動されるService、ってのを考えています。 <activity android:name=".TestActivity" > <intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:scheme="homu" /> </intent-filter> </activity> だとActivityは呼ばれるのを確認しました。が、 <receiver android:name=".TestReceiver" > <intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:scheme="homu" /> </intent-filter> </receiver> だとBroadcastReceiverが呼ばれず、原因を探しています。 何かご存じの方がいらっしゃいましたら、教えて頂けませんでしょうか… なんかすごいくだらないミスしているだけな気がする…
viewのアニメーションを実装してるんですが、回転しながら移動させたいのですが、どうすれば良いか分からないです。 球体の画像を転がしながら右方向に移動する様なアニメーションを実装したいのですが、うまく出来ません。 さっきやってみたら、指定した位置まで大きく円を描いて回転するような動きになってしまいました。 よろしくお願いします。
ラジオボタンでいろいろ試してるんだが自分でチェックした場合と setChecked(true)でチェックした場合とで処理を分けるってのは出来る?
>>427 setChecked(true)
したあと飛べばいいじゃん
>>428 setChecked(true)は初期設定みたいなところで呼んでるんだけど
自分で押した場合のみonCheckedChangedを呼んで
setCheckd(true)の場合はonCheckedChangedを呼ばない
こんな処理でうまい方法ないだろうか?
>>428 setchecked(true)のあとにflagを使ってみたら考えた通りに動いた
ありがとう
431 :
dev :2013/02/13(水) 18:00:35.83
>>429 自分で押す時だけフラグ立てておけばいい
isLoading = true;
setChecked(true);
isLoading = false;
onCheckedChanged() {
if (!isLoading) {
//処理
}
}
>>431 ありがとう
そんな感じでうまい具合に動いてる
半日はまってたけどここで質問したらすぐ解決したw
>>407 staticの性質とAndroidのプロセスの生存範囲が分かってたら自明だと思うんだが…
435 :
425 :2013/02/13(水) 20:26:00.92
あれから色々調べた結果、 android.intent.action.VIEWはActivityじゃないと受けられないっぽい事が分かった。 Androidの仕様って事になるんだろう。 公式ページのどこかに情報あるんだろうけど、どこかわからん。 またあの 「仕様とかしらねえよ、俺は『やれ』って言ってんの」 とか言ってくる馬鹿上司を説得しないとならんのか…
>>407 インスタンス確保のタイミングにもよるけどActivity1内ですら使用可能か保証できない
実機がある人に尋ねたいんだけど Nexus7のNexus Media Importerで繋いだストレージの動画は MediaStore.Video.Media.EXTERNAL_CONTENT_URIにはいないようで…どこから取得できるのかな? 外部ストレージとして本体にマウントされいるんじゃなくて Nexus Media ImporterがContentProviderを持っていてアクセスするのかな?
>>435 >>「仕様とかしらねえよ、俺は『やれ』って言ってんの」
『じゃぁてめーでやってみろ』 とは、言えないわなw
リンククリックしたときにブロードキャストが飛ぶわけじゃないからなあ BroadcastReceiverじゃ受けれないっしょ
>>435 developer.android.com/reference/android/content/Intent.html#ACTION_VIEW
には確かに
Activity Action
とか書いてあるね
よけいなお世話かもしんないけど,どうしてもaction.VIEWでないと駄目なん?
なんか自前でactionを定義するとかさ
441 :
435 :2013/02/13(水) 21:43:06.17
>>438 言いたいけど言ったら明日からご飯が食べられないw
>>439 リンククリックしたときにブロードキャストインテント発行って訳じゃないんだ
知らなかったぜ…
恥書く前に教えてもらって感謝。
>>440 ありがとう、説得の材料が出来ました。
なんかWebブラウザで特定のボタン?リンク?を押したらサービスを起動する、みたいな話が
すでに仕様として決定しているらしいんですが、
action.VIEW以外で他に良い方法あったら是非教えて下さい。
442 :
デフォルトの名無しさん :2013/02/13(水) 21:45:26.88
シークバーカスタマイズしてるんだけど画像backgroundとprogressのサイズをぴったり合わせているのにもかかわらず かなりずれる これサイズとか規定あったりする?
>>441 透明のActivityを起動してそこからサービス起動。
Activity は onCreate で finish()。
アホくさいか。
フルーティ〜
初めてバージョンアップして、高解像度アイコンを変更したんだが、 googleplayのアプリ検索結果一覧だと、アイコン画像の表示がされず、画像が見つからない的なバツマークが出るよん。 (スマホで見るとドロイドくんの画像) 時間かかってるだけかしら。。。( TДT)
電波回復アプリってどうやってやってんの?
447 :
435 :2013/02/14(木) 00:50:00.87
>>443 なるほど、そのアイディアも検討してみます。ありがとう。
ところで、透明のActivityって作れるの…?
Backgroundをtransparentだったかにすれば出来る?
ちなみに「ほにゃららするための確認ダイアログ的なモノ(つまりactivity)出した方が良いです絶対!」みたいな
説得しようかと思ってました。
何も表示されないとユーザは何も起きてないと勘違いして連打しちゃう可能性もあるよねー
>>446 一旦、機内モードにして、戻してるだけじゃないかな?
>>447 そんな感じ
タイトルバーも非表示にしたらok
テーマでNo_Displayみたいなのがあった気がする
アプリAから、指定したアプリBを削除することは可能でしょうか? Aからaction.DELETEのインテントを投げることで、アンインストール画面を開くことは出来たのですが、そうではなく使用者の操作なしに削除する方法を探しております。
452 :
デフォルトの名無しさん :2013/02/14(木) 06:57:09.76
>>451 shellでuninstallコマンドを実行させればいいじゃん
できるのはrooted限定だろうけど
453 :
437 :2013/02/14(木) 11:40:22.63
ふと考えてみたらNexus Media Importerって別に Nexus7につけた特殊な周辺機器のドライバーというわけでもないんだから 自前で同等の機能を用意すれば外付けストレージの中身を見れるってことかな? 一体全体どうやってUSBにつなげたストレージを認識させているかわからないけど…
どなたかご存知でしたら教えて頂けないでしょうか java.net.Socketクラスを使用したソケット通信を行うべく 下記のような処理を作成致しました Socket socket = new Socket(strIP, nPort); Androidの1.6、4.0.3では正常に動いたものの Androidの2.3.4(IS05、XPeria arc SO01C の2台)で同処理を行ったところ、次のような例外が発生してしまいました java.net.ConnectException : Connection refused Androidの2.3.4ではソケット通信を行うために、何か他にも手続きが必要なのでしょうか
接続先も書かずにつながらないとか言われても…。
初めて書き込み致します。 ただいま壁紙を設定出来るアプリを作っていて 端末内のデータから 自分の端末の待ち受けのサイズに合った画像だけ呼び起こして スライドショーまたはサムネイル等で一覧にし、 そこから選択して壁紙を設定する という方法が取りたいのですが、 それはBimapFactory.decodeXXX()で可能でしょうか。 それ以外にも方法がありましたら教えていただけると助かります。 初めてのアプリ作成の為、知らない事が多すぎて 漠然とした質問なのですが、 お教え頂けたらと思います。 宜しくお願い致します。
> それはBimapFactory.decodeXXX()で可能でしょうか。 自分で試してみりゃイイじゃん
android-group-japan とマルチポストするカスが多いな。
>>458 >>456 みたいな簡単な事で質問するようなヤツだからしょーがねーだろ
そもそもマルチポストが悪いって認識もない初心者なんだろ
>>456 そもそもコレだけだと何が分からないのか分からない
もうちょっと質問絞った方が良いんじゃないの
画像ファイルを読み込まずに縦横サイズを取得する方法はありますか?
みたいな
まあ俺は知らんけどw
若干の違いなら伸縮させても問題ないけどなぁ
Androidが〜以前にプログラミング自体詳しくない人も多そう
android-group-japanの回答率の悪さ見てるとマルチポストしたくなる初心者の気持ちもわかるけどな。 かといってここも回答率は悪いがw
464 :
デフォルトの名無しさん :2013/02/14(木) 20:41:03.95
Stringとintの相互変換する方法ってありませんか? "abc"←→1234みたいな感じです
abcと1234の間にどんな関係があるのか分からんw
"abc"と1234にどんな関係があるかわからないから無理
アスキーコードにして1になるように引けばいいんじゃ
>>463 android-group-japanも結構頓珍漢な回答多いからなあ
>>464 1234(←textview)
String str=abc;
if(str.equals(abc)){
textview.setText(str);
}
みたいな?
1234が元々intをsetTextされてたら意味は通じそう
470 :
デフォルトの名無しさん :2013/02/14(木) 21:30:16.99
Androidじゃなくて単純なjavaのことでいいのか? int型に入ってる数字を文字列に int num = 12345; String str = Integer.toString(num); 他にも「あ」ってひらがなはInt型にするとたしか12354だった気がする Char ch = 'あ'; int a = (int)ch; aには12354が入ってる このa=12354 (あ)をstring型にしたいなら String str = Integer.toString(a); charをstringに char ch = 'う'; String str = String.valueOf(ch); たぶんこんな感じだと思うが
条件あるんだったらHashMapとかにつめときゃいいんじゃね?
472 :
デフォルトの名無しさん :2013/02/14(木) 21:32:58.83
すまん 足りてなかった int型のa=12345 (「あ」のコード)を文字に直したいなら char ch = (char)a; これでchには'あ'が入ってると思う
473 :
デフォルトの名無しさん :2013/02/14(木) 21:34:17.17
説明べたですまん
ドラクエのパスワードみたいなものつくりーてーと 申していらっしゃるのでは
475 :
デフォルトの名無しさん :2013/02/14(木) 21:50:12.17
>>474 の言ってるようなことだとしたら
Stringに入ってる文字を先頭からひとつひとつ取り出して
1文字ずつchar型にいれて
char型に入ったやつをint型に変換する ってことになるかな
476 :
デフォルトの名無しさん :2013/02/14(木) 21:54:32.82
あとは
>>470 ,472見ればできると思う
私も質問させてくれ
OS4.0未満(例えば2.3)とかだと
ギャラリーにインテント飛ばして画像をbitmapに読み込むときに
若干劣化しない?
PNG形式で保存していてもrgbに値が変わってる
OS4.0.4の機種では保存した画像のを読み込んでもrgbは変わってなかった
OS2.3とかでもギャラリーにインテント飛ばしてPNG形式の画像を
劣化せずにbitmapに読み込む方法ないでしょうか?
477 :
デフォルトの名無しさん :2013/02/14(木) 22:01:00.18
>>476 追記
rgbをいじって保存するアプリなんだが、
A端末=OS4.0.4 B端末=OS2.3
Aで保存した画像はAで読み込んでもrgbが変わらない
Bで保存した画像はBで読み込んだらrgbが変わってしまう(劣化?)
Bで保存した画像をAにメールで送ってAで読み込んだらrgbは変わってない
だからBでも保存の際には、いじったrgbが劣化してるわけじゃないんだよ
Bで読み込むときに劣化してるっぽいんだ
誰か知ってる人いたら頼む><
478 :
デフォルトの名無しさん :2013/02/14(木) 22:11:56.95
>>465-467 ,469-472
説明不足でした
文字列を一旦intにしてそのintをまた文字列に復元したいんです
"abc".hashcode()としたら一応intに出来ますがこのintを"abc"にすることが出来ないので相互変換する方法を探しています
479 :
デフォルトの名無しさん :2013/02/14(木) 22:14:43.56
>>478 追記
今はHashMapにintを適当に作ってstringと入れていますがもっといい方法があればと質問してみました
>>477 読み込むときにオプション指定してなかったらちゃんと指定する
481 :
デフォルトの名無しさん :2013/02/14(木) 22:27:35.25
>>480 レスありがとうございます
bitmapに入れるときは
InputStream in = getContentResolver().openInputStream(data.getData());
bmp = BitmapFactory.decodeStream(in).copy(Bitmap.Config.ARGB_8888, true);
このようにしてます。A端末はこれでできますが、
これ以前に
B端末では
ギャラリーにインテント飛ばす際に
intent.setType("image/*.png");
とすると、pngで保存したはずの画像が候補にすらあがってきません。
その他の画像も候補にあがってきません。
intent.setType("image/png"); としてもダメでした。
intent.setType("image/*"); にすると、読み込めるのですが、rgbが変わっています。
OSのバージョン依存だと割り切るべきでしょうか・・・
でも2.3層を切るにも、ユーザが多い層ですよねorz
何のために相互変換を行なっているか言わないといい方法も何もない気がする
483 :
デフォルトの名無しさん :2013/02/14(木) 22:36:53.44
ICS依存なのかな...
>>481 decodeStreamの方にオプションの指定がない
>>478 hashcodeにしたら元には戻せないよ。
ってか、プログラミングの基本からやり直すべき。
486 :
デフォルトの名無しさん :2013/02/14(木) 22:51:13.88
>>484 できました!!
タイプをこれにして
intent.setType("image/*");
decodeStreamのオプションを設定し、以下のようにしました
InputStream in = getContentResolver().openInputStream(data.getData());
BitmapFactory.Options options = new BitmapFactory.Options();
options.inPreferredConfig = Bitmap.Config.ARGB_8888;
bmp = BitmapFactory.decodeStream(in, null, options).copy(Bitmap.Config.ARGB_8888, true);
おおおおおお ありがとうございます!!!一週間悩んだ末できなかったことが(;ω;)
感謝です><!
487 :
デフォルトの名無しさん :2013/02/15(金) 00:09:06.56
xmlで配置しているEditTextに何か入力し、 別のActivityを起動し、 BACKキーなどで元のActivityに戻ると、 入力していたEditTextの中身が消えます。当然ですが。 これを、EditTextの中身を保持して、 元のActivityに戻ったときのも データが入力されているようにするには どのようにすれば良いのでしょうか? static String で保持しておいて onResumeの中でsetするのかなー とか考えましたが、 「EditTextに保持しておく」という方法があるか 質問させていただきました。
488 :
488 :2013/02/15(金) 00:12:14.77
やりたいこととしては、 検索用のActivityと詳細表示用のActivityがあり、 ・検索用Activityには、EditTextと検索Button、ListViewがある ・検索キーワードをEditTextに入力し、検索結果をListViewに表示する ・ListViewの1要素をタップすると、詳細表示用のActivityを起動し、詳細を表示する ・詳細画面からユーザーがBACKキーで戻ったときに、 EditTextの中身と、ListViewの状態を保持しておきたい。 よろしくお願いします。
489 :
487 :2013/02/15(金) 00:20:07.96
あれ、もう1回実行してみたら なにもしなくてもEditTextが保持してるやん。 スレ汚しすみませんでした。
Intent飛ばして別Activity起動させれば基本的には 前のActivityの状態は保持されるからね 「確実に保持させたい」とかじゃなければそのままでおk
ありがとう。 このままいきます。
>>490 回転しても?
a1縦画面→a2に移行→回転して横画面→a1に戻る...さて...
a1縦画面→a2に移行→回転して横画面→回転して縦画面→a1に戻る...さて...
apkの最小サイズってどのくらいが可能? ハローワールドだけでも500k位あるんだけど。。。
俺の最小86k
普通に作っていればonSaveInstanceStateで画面が勝手に保持してくれるんだから 回転しようが別画面呼び出そうがProcessキルされようがEditTextなら内容は保持してくれるだろうJK よっぽど特殊な事やってるなら別だが 余談だが、TextViewの中身を書き換えたりしても保持してくれなかったとは思う そういうときは自力でやる必要がある
私のapkは53kです。
アプリのキャッシュって具体的に何が保存されてるんだろう webViewでsetAppCacheMaxSizeが8MBくらいなのに 使うたびにモリモリ増えていくんだけど…
webviewだと表示した画像とか
500 :
デフォルトの名無しさん :2013/02/15(金) 15:39:22.23
Notificationの実装なんですが、Notificationはステータスバーに付随しているものなので、 画面上方(ステータスバー)にしかつけられないのでしょうか? 例えば横につけることは可能でしょうか?(左から右へドラッグするイメージ)
オーバーライドすればできそうじゃね
502 :
500 :2013/02/15(金) 15:46:59.83
>>501 すいません。もう少し詳しくお願いします。
>>497 apkを小さくするための工夫とかある?
それフリーザのネタw
ほんとだwなんか違和感あるなと思ったけど気づかなかったw
つくったウィジェットアプリをアンインストールした時に、ホームのウィジェットも一緒に消えるようにするにはどうすれば良いでしょうか?
setTheme()でデザインを変える場合に アプリによってはフワっと切り変わる瞬間もなく最初から適用されているのはどんなテクニックだろうか もちろんXML直打ちじゃなくて自由にテーマを変更できるアプリで
android-group-japn で送られてきた質問内容がそのまま2ちゃんにもマルチポストされるとムカっとするな。
よう知らんけど,こないだ作った「一つ前のタスクに戻るだけ」ってアプリは10951バイトだったよ
>>494 ハローワールドで500kってなんかおかしいね。
おれ182kだったわ。
エイリアスが1つのキーストアファイルがあるのですが、 これに別のエイリアスを追加したいと思います。 が、ググっても方法が見つかりません。 どのようにすればよいのでしょうか?
>>509 キミがandroid-group-japnで献身的に活動し
率先的に回答することに努めているのならムカっとする理由もわかるが
違うのならそれは単なる感情コントロールがまだ未成熟な子供と同じ
EditTextに関する質問です。 テキストが入力済みのEditTextをタップすると、 文字入力のカーソル位置が先頭になってしまいます。 これを、カーソルを末尾にフォーカスさせることは可能でしょうか? ■タップ前の文字列 ABCDEFG ■タップした時のフォーカス |ABCDEFG ■希望のフォーカス ABCDEFG| 宜しくお願いします。
516 :
デフォルトの名無しさん :2013/02/15(金) 21:41:18.91
ここはIDが出ないからな。必死だなw
>>512 最近のADT使ってプロジェクト作るとsupport-libraryが自動で取り込まれちゃうから不要なら削除
>>506 ここにそんな高度な知識を持った奴は居ない。他で聞け。
表示できないウィジェットって画面回転させれば消えなかったっけ?
XMLからのBitmapDrawableでtileMode:repeatを使用して LinearLayoutのbackgroundに画像をタイリングしているのですが、 タブレットOSだとjava上から設定しないと設定されないようです 作成しているのはウィジェットのためRemoteViewsから設定する必要があります RemoteViewsからLinearLayoutにタイルモードで設定するにはどうしたらいいでしょうか?
522 :
デフォルトの名無しさん :2013/02/16(土) 00:42:56.40
アプリ起動時にonCreateで大きな画像を読み込むときに 同じ画像でもOutObMemoryになるときと、ならない時があるんですが 読み込む前に端末のメモリを開放?しとくようなことってできますか? System.gc()をまえもってしても できるときと、できないときがあります
>>508 どのぐらい小さくできる?
容量気にするユーザー意外に多いよね
ActionBarでナビモードをタブにするとタイトルとmenuが表示されてる所とタブ表示の所で分離されてしまうんだけど1行で表示させるのってどうやるの?
WebViewのcacheの現在サイズって取得できないのかな? getCacheDirから得られるdirには入ってないし…困った
527 :
デフォルトの名無しさん :2013/02/16(土) 01:08:10.14
>>521 で、Notificationの問題は解決できたのか。
お前みたいなバカには誰も回答なんてしないぞw
>>522 それはあなたのアプリのvmのメモリを開放してるだけでは? アプリが空いてるメモリ全部使えるか知らないけど。
529 :
デフォルトの名無しさん :2013/02/16(土) 02:23:50.96
>>528 こればっかりは端末の気分次第でしょうか・・・
ありがとうございます
530 :
デフォルトの名無しさん :2013/02/16(土) 02:34:10.16
byte配列にした音声データを MediaPlayer mp の中にまた戻したいのですが どうやればいいのでしょうか
532 :
デフォルトの名無しさん :2013/02/16(土) 03:07:56.32
>>531 できないときがあるのは、他のアプリがメモリをもってるからでしょうか?
それともこのアプリが前に起動したときのメモリを使ったままだからでしょうか?
533 :
デフォルトの名無しさん :2013/02/16(土) 03:26:03.95
535 :
デフォルトの名無しさん :2013/02/16(土) 09:23:57.34
>>532 作りが悪いとしか
大きい画像を読み込む時はbitmapFactoryでリサイズするべき
>>523 コード次第だから具体的には何とも言えない
難読化の副産物的なものが多分に大きい
俺の経験の範囲だけど、画像があんまりないツール系で、2~3割小さくなることもあるよ
537 :
デフォルトの名無しさん :2013/02/16(土) 17:31:09.65
ListPreferenceで選択されているValueの値を取得したいです。 Entryではなく、Valueの方です。 取得する場所は、PreferenceActivityの中ではなく、Activityの中です。 以下のサイトの一番下の回答に、getString でvalueが取得できると 書かれていますが、実際にやってみたところ entry が返ってきました。 宜しくお願いします。
android2.3で カメラのデータをリアルタイムで取り込み、nativeのglesで描画したいと思います。 setPreviewCallback、startPreviewを使用してやっているのですが preview用のViewをlayout.addViewなどしてsetContentViewに設定しないと カメラのデータが取れません。preview用のViewの上にGLのViewを重ねたいのですが うまく重なりません。どうすればよいのでしょうか?
RelativeLayout使うとか
setZOrderOnTopとか?
Android向けにビルドされていてapkに組み込んでNDKから使用できる ビルド済みのlibopensslやlibcryptoのバイナリが配布されているところがあれば教えてください
>>515 onFocusChangedか何かでつかまえてgetText().getString().length()をsetSelection()する
初歩的な質問で申し訳ありません。 activityで値を更新したさいに、widgetの表示もあわせて更新を行う処理を行いたいです。 変更イベント毎にstartserviceを叩いて処理を行っていたのですが、多重起動されているせいか叩くたびにメモリが追加で使用されているようです。 起動中のserviceに、activityから値を渡すにはstartactivity以外に何か方法はあるでしょうか?
・bindService ・sendBroadcast ・グローバル変数 お好きなものをどうぞ
そもそもBroadcastと違って同じServiceならいくつ起動してもひとつだけしか起動しないと思うが
Activityから直接Widgetの更新しちゃダメなの?
プロジェクトをライブラリ化してソースとリソースを分離したいのですが、 @ ライブラリプロジェクト -src -xml ・ソースやXMLでメインのリソースを使用 ・ids.xmlでstringやdrawableを下のように予約してエラーを消す <item type="drawable" name="〜" /> メインプロジェクト -drawable ・ライブラリプロジェクトをインポートして Activityや共通リソースを使用 この状態でビルドすると正常に動作するのですが、一部の端末だけPackageManagerから Failure retrieving icon 0x7f02007f in package 〜 とWarningが出てdrawableが読み込めないようです ids.xmlからdrawableの宣言を抜いてみると表示されました しかし、宣言を抜いてしまうと今度はライブラリ側からリソースがないエラーが出てしまう Aそこで、ライブラリ側に各drawableと同じ名前のダミーファイルを置いて メイン側にも同じファイルを置いて上書かれるようにして idsの宣言を全部消したところうまくいきました ライブラリプロジェクト側からメインプロジェクトのリソースを呼び出したい場合、 @の予約宣言型とAのダミーファイル型もしくは別の、どのようにやるのが正しいのでしょうか? Aは一応動きはしましたがなにか無理やり感があるように思えたので・・ また、@の方法で一部端末で読み込めないのは端末仕様なのかやり方が悪いのか教えてほしいです
ちょっと考えれば静的に参照できないことなんてわかりそうなもんだが… ダミーファイルだってたまたま同じIDが振られてるから動いてるだけなんじゃないの? Resource#getIdentifierで動的に参照できるけどパッケージ名が必要
550 :
デフォルトの名無しさん :2013/02/17(日) 02:44:14.45
その参考画像は必要なのかw?
参考画像わろた 9patch画像の設定ミスか保存ファイルが.9.pngになってないとか。
アクティビティとレイアウトファイルを削除&マニフェストの記述を削除してもR.javaに残ったままなんですがどうすれば削除されるんでしょう? (もしかしたら削除前に名前の変更をしているかも) 実用上は問題ないですがクリーンしても消えないというのはなんか気持ち悪いのでできれば消したいです。
r.javaをかきかえちゃう
該当項目を削除しても、即再作成されて復活します。 残っているのは string の項目です。
RadioGroupでラジオボタンをグループにしたいんだけど ↓のようなときってどうやってEditTextを入れればいいの? ○ AAA EditText ○ BBB <RadioGroup android:layout_height="wrap_content" android:layout_width="wrap_content" android:id="@+id/RadioGroup"> <RadioButton android:text="AAA" android:id="@+id/RadioButton01" android:layout_height="wrap_content" android:layout_width="wrap_content"> </RadioButton> <RadioButton android:text="BBB" android:id="@+id/RadioButton02" android:layout_width="wrap_content" android:layout_height="wrap_content"> </RadioButton> </RadioGroup>
557 :
553 :2013/02/17(日) 10:48:32.77
自己解決しました。 strings.xmlに記述が残っていたのでそれを消したら解消しました。
ArrayAdapter<String> adapter2 = new ArrayAdapter<String>(this, R.layout.list); adapter2.add("A"); adapter2.add("B"); adapter2.add("C"); setListAdapter(adapter2); ArrayAdapter<String> adapter3 = new ArrayAdapter<String>(this, R.layout.list); adapter3.add("L"); adapter3.add("M"); adapter3.add("N"); ((ListView)findViewById(R.id.list2)).setAdapter(adapter3); } @Override protected void onListItemClick(ListView l, View v, int position, long id) { switch (position) { case 0: startActivity(new Intent(this, A.class)); break; case 1: startActivity(new Intent(this, A.class)); break; case 2: startActivity(new Intent(this, A.class)); break; } 2つのlistviewがあるプログラムを作っているんだけど 2つ目のリストビューでクリックして画面遷移するプログラムの書き方がわからないんだが どうすればいいのでしょうか? 教えてほしいです
ActivityのonKeyDownって、super呼ばなきゃまずい?
必要ないなら呼ばなくていい
>>558 典型的なコピペプログラマだなw
お前は自分が使ってるメソッドの引数の意味も調べられんのか?
>>558 ポジションかIDを次のアクティビティに渡すんじゃないの
まずListActivityを使うのをやめて、ListViewを扱う一般的なやり方を 学んだ方がいい。
スマホアプリでも作ろうかと思いソフマップで中古のスマホ購入 ↓ ひととおり流行りのアプリで遊んでみる。なるほどパズドラとかいうアプリが面白い ↓ その他ディフェンスゲームなどいくつか遊んでみる ↓ Androidプログラミングの入門書を2,3冊購入 開発環境を構築し、サンプルアプリを実機にインストールして動作を見てみたりする ↓ Androidアプリケーション開発技術者認定試験の勉強を始める ↓ 2週間程勉強して正解率78%で無事資格ゲッター ↓ オリジナルアプリでも作ろうかと思うが、良いアイデアが思い浮かばず、 そもそも、既に優秀な無料アプリが大量に公開されている状況で、 素人がアプリを売って、小遣い稼ぎなどできるわけないと気付き愕然とする ↓ Androidアプリ開発の求人に応募するも全敗 ↓ いまここ どうしたらいいでしょうか
プログラミングお無関係な質問はちょっとなぁ
マ板でやれ。
>>565 >>Androidアプリ開発の求人に応募するも全敗
負けた理由は?
Javaの実務経験がないのと年齢と地方の求人ということが敗因だろうな
面接の交通費と引越し費用を全部出してくれる東京の会社はないだろうか
>>569 なるほど
相手が 『あっ』 というようなアプリ造ってもっていけばいいと思う
技術的に 『あっ』 というものを
もし、自分が就職するならやるけどね
自分、雇われにはならないので試せないけど...
やっぱ何か作らないと駄目かあ アイデアが浮かばんのよなあ
>>572 これ受けたって事?
>>Androidアプリケーション開発技術者認定試験
>>一般料金: 日本語版 15,750円
ぼったくりだな
そりゃ国家資格以外は商売だもん
基本情報とかも同じ類だろ。
>>573 15750円以外にも参考書・問題集代も掛かってる
入門書とスマホの中古代も合わしたら5万くらいかかってる
それで仕事には結びつかないしオリジナルアプリはできないし
がっかりさせられることばかりだ
>>577 すごいな、こんなやついるんだな。
一言でいうと、オワッテル
Windowsプログラムは仕事にしてもいいけどAndroidは仕事にしたくないな 理由はハードの仕様統一がされてないのと 現役OSバージョンの種類多すぎ+OS別にできる事変わりすぎ。 Windowsで例えるとWin95〜Win8までの全部で動くソフト設計する感じだからヤダ。 Androidは趣味でやりつつマーケット出展してる方が割りにあってる俺はね
>>576 だな。資格商法に騙されるような人はある程度敬遠されちゃうってのはありそう
>>573 割と安いほうだろ。Oracleとか個人じゃ考えられない。
>>565 やりたいことなければ別にやらなければいいんじゃない。
プログラミングだけやりたいなら、どっかのオープンソースプロジェクトにパッチ送ったり、アイディアだけ持ってる人がいそうなコミュニティに参加すれば。
Androidだけの仕事ってなかなかないと思うよ。俺も一時期探したけど。
結局AndroidってJavaなんだよなあ ガラケー時代からJavaでアプリ作ってたような奴が求められてるんだろう
じゃあ次はOCJPでも取れよw
584 :
デフォルトの名無しさん :2013/02/18(月) 23:28:37.43
>>565 以前日経ソフトウェアに書かれていたVB初心者向け記事の説教を思い出した。
「作りたいソフトがないのであれば、そもそもプログラムを書く必要なんかない
プログラマの資質の第一歩が 作りたいものがあるかどうか だ。」
自分でイメージ膨らませることができないのであれば、プログラマになっても一生底辺で辛いだけじゃないの?
そんなにポンポン革新的なアイデアが浮かぶもんなの
作りたいものなんて誰でもいくらでも思いつくだろ 難しいのは実際に現実的に作れるものを考えること
588 :
556 :2013/02/19(火) 00:37:32.25
やはり厳しいようですね。 素直にラジオボタンがチェックされたら他方のラジオボタンのチェックを外す で実装かなー
589 :
デフォルトの名無しさん :2013/02/19(火) 00:40:03.78
GridViewってListViewみたいに見えてる所だけ描画されてますか? それともScrollViewのように全部描画されてますか?
>>588 普通にRadioGroupの右に置けそうに思えるけど無理なの?
コーダーとクリエイターの違いだわな 出題された問題解いたり 設計・仕様書どおり組み立てたりできても ゼロから作る事はできないというプログラマーって結構多いみたいよ 今にはじまった事ではないけども
>>589 GridViewにデータ設定するときどうやって設定するか考えてみ
593 :
デフォルトの名無しさん :2013/02/19(火) 00:46:48.77
>>588 俺ならだけど
radioGroupとlayout型View(A)を横に並べてその2つをlayout型Viewにいれる
そしてAにradioボタンの数edittextをいれてAの高さをmatch_parentにする
594 :
デフォルトの名無しさん :2013/02/19(火) 00:51:43.48
>>592 setAdapter...
adpter系は一つ一つ描画するの?
595 :
デフォルトの名無しさん :2013/02/19(火) 00:53:04.59
>>592 Apiのページみたら分かった
サンクス
596 :
556 :2013/02/19(火) 01:05:10.42
>>593 レスありがとう
ごめん、おっしゃってることが理解できなくて。。orz
startServiceで何回も同じサービスを指定して起動すると それぞれ別のサービスとして起動されるんでしょうか?
598 :
デフォルトの名無しさん :2013/02/19(火) 01:23:20.34
>>596 ┏━┳━━━━┓
┃○┃EDIT ┃
┃○┃EDIT ┃
┃○┃EDIT ┃
┃ ┃ ┃
こうやればいいってこと
599 :
デフォルトの名無しさん :2013/02/19(火) 03:19:57.11
アプリのwebviewからサーバ内部のファイルをoutputsteram(ダウンロード)することって出来るでしょうか? 通常のブラウザからは出来たのですが、webview経由だとうまく出来なくて苦戦中です
600 :
デフォルトの名無しさん :2013/02/19(火) 03:25:49.17
↑公開されていないディレクトリからファイルをダウンロードするということです。 通常のブラウザでは実装出来てるのですが、webview経由だと、broken pipeとか出てしまいます
>>600 アクセスできる時点で公開されている。ハイパーリンクが無いだけだろ。
ファイルかどうかはクライアントには判らない。どこかリクエストが違ってるはずだから、自分でサーバ立てて、リクエストしてみるといい。
URL末尾のスラッシュをブラウザが勝手に補完しているとかじゃないの。ステータスコードは何なのさ。
OS再インストールしてpleiadesからインスコしたんだけど NewAndroidApplicationで新プロジェクト作って行ってると ブランクアクティビティー選んだ次の画面でNavigationType選択する所からTabsが無くなってた どうやったら選択欄にTabs戻る?
作りたいソフトはそこそこの数があるが、金になりそうなソフトが皆無という… いや作るけどさ
605 :
デフォルトの名無しさん :2013/02/19(火) 08:30:00.16
Test
>>604 個人である程度の金を目指すのはandroidではキビシイと思う
自分はコマセのつもりで公開してる
技術はあるぜ、腕を買わないかぃ? ってね
ちょこちょこ問い合わせはあるよ 折り合いがつかないけど
俺も去年「Androidアプリケーション技術者試験」受けて合格した。 OCJ-Pも持ってる。上の方でも書いてあるけど、 OCJ-Pに比べれば、全然安い。半額以下。 Oracleこそ、完全にボッタクリ。 公開しているアプリは、今のところ3個。 でも、もうオッサンなので本職としてアプリ開発は出来ない。 地方都市で仕事もないしね・・・。 アプリ開発は完全に趣味。なかなか楽しい趣味だと思う。 昔、汎用機系の本職PGだったけど、もう本職ではやりたくない。 スレ違いの話題スマン
これ作ってみようかなと思っても、 Google Playで似たようなの検索したら、既に立派なものがあるのよな それに及ばないしょぼいアプリ作っても、全くユーザーの反応がないだろうから がっかりするだろうし
なら作る必要ないし、既存のソフトが自分には物足りないなら自分のためだけに作りゃいいだろ。
それを超えるアプリ作ったら? 私見だが、ゲームのパクリは感心できないが、ツール系ならパクリもありじゃないかな ユーザから価値があると判断されれば、後発のハンデがあっても、十分、ダウンロードされるだろう 逆にどんな高性能で、斬新なアイデア入れてても、使い勝手が悪かったら後発に淘汰されるけどね
611 :
デフォルトの名無しさん :2013/02/19(火) 15:52:19.69
そうだな 既にツールを作ってる側としては 自分のアプリを見られて、後発で使い勝手が良かったり上位互換のアプリを 出されるのが怖いな
612 :
デフォルトの名無しさん :2013/02/19(火) 15:53:55.66
int型ってだいたい9桁か10桁くらいまでだけど(まちがってたらごめん) String型って一つの変数で半角文字 何文字までしかもてないとかってあるんですか?
パクリっていうか,「既存の○○アプリの××という仕様がどうも自分には合わないので, 自分で使いやすいと思うものを作った」とかそういうのでもいいと思うんだ
「え?こんな簡単なアプリで10万ダウンロード? 俺でも作れるじゃん。ちょろいな」とか 思って同じようなの作って広告つけて公開したらダウンロード数100件で広告収入100円だったわ。
616 :
デフォルトの名無しさん :2013/02/19(火) 16:40:10.82
intは32bit、longは64bitだけど128bitとか256bitってどうしたら表現出来る?
>>616 できないんじゃないのかな。
デカイ数字を扱いたいだけならBigDecimalとか。
長いアプリ名を任意のところで改行させたいのですが 何か方法あるでしょうか? ソースで改行入れればいいというのはやってみたんですが タブなど1行で表示できるの端末で見ると 半角スペースが入ってしまいます。
>>615 そういう簡単なアプリは早く出したもの勝ちだな
JUnitが公式の記載通りにやっても動かなくて困ってます テストしたいプロジェクトへのjavaのビルドパス通したし テストプロジェクトのパッケージ名はテストするパッケージ名+testで命名してるし Manifestのパッケージ名もtestsにしてるしで色々なサイトを見て 引っかかりそうとされてるとこは一応潰してるつもりなのですが 空のテストケース実行しようとしてもFailed to launch testしか出なくて原因がよく分からないです 心当たりある方いらっしゃいませんか?
widgetでservice使うメリットってなんですか? serviceを使う方と使わない方両方作ってみけど変わらず動作する serviceを使う方はタスクキラー入れてるせいで結構落とされるデメリットしかない お前のアプリがサービス使わなくていいならそれでいいんじゃねっていうのは わかってるんですがどうしても気になってます
java側からxmlで作成したRadioButtonのID名がとりたいんだけど getIdだと数値のIDしかとれなくて困ってます どうやってID名をとればいいの?
625 :
624 :2013/02/20(水) 01:19:23.50
追記 android:id="@+id/RadioButtonTest" ってなってたらRadioButtonTestが欲しいです
>>623 Serviceでしか再現できないものがある。
作ろうとしているアプリ設計考えてる時にこれに気づく。
なのでService以外でも再現できるのならわざわざ使う必要性はないよ
Logについて教えて下さい。 Eclipseからデバッグ実行するとLogCatにログが出力されますが、 一旦adb installから端末にインストールして、端末から起動した場合は ログはLogCatには表示されないのでしょうか? その昔、i_appliではappTraceをonにしておくと、本番リリースしたアプリも 端末内にログを出力しておりましたが、Androidの場合どうなのでしょうか?
>>624 IDを16進数に変換してR.javaの中を見てみな
IDはただの変数名にすぎないから取得するのは無理
Lod.dとか出しっぱのままリリースしたらPC繋ぐなりすれば開発者には丸見えだよ
開発環境なくてもアプリ入れたら見れるよ
コンパイルで除外されるんだとおもってた
632 :
624 :2013/02/20(水) 01:41:48.88
>>628 ありがd
R.id.RadioButtonTestと比較していけたー!!
633 :
dev :2013/02/20(水) 01:52:26.66
>>626 タスクキラーで落とされまくるのでservice使わないで作ってはみたけど
serviceには特別なメリットがあるのかが気になってた。
これですっきりしました。ありがとう
Service使わないってことはAppWidgetのupdateのみで更新処理をやってるんだろうけど それで済むんだったらService使う必要はない
ファイルのMD5をDigestInputStreamを使って算出させてるんですが、もう少し高速化できませんか? DigestInputStream dis = new DigestInputStream(new BufferedInputStream(new FileInputStream(file)), messagedigest); while(DigestInputStream.read() != -1){} String hash = toHexString(messagedigest.digest()); dis.close(); return hash; 4KB程度のファイル1つで40〜50msといった感じなのですが、これが限界なんでしょうか 他に高速化が可能な方法があれば是非伺いたいです
>>636 >>String hash = toHexString(messagedigest.digest());
時間がかかる処理やってるじゃん
プロジェクト名 src com.hoge.activityパッケージ(アクティビティ) com.hoge.utilityパッケージ(定義やユーティリティのクラス) こういう風にしたいのだけど無理なのかな? アクティビティのあるパッケージ内のjavaに 複数のpackage com.hoge.****; を書くと自身が内包されているパッケージ名以外だと怒られてしまう AndroidManifest.xmlもパッケージ名は一つしかかけないし…
com.hogeまでをパッケージ名にすりゃ良いんじゃ?
>>640 にして試してたんだけど なんか怒られるな…
>>641 一つのソースに書くパッケージ名は一つだけだぞ
他のクラスのやつはimportするだけ
>>642 異なるパッケージにまたがるアクティビティを登録したいのではなくて
異なるパッケージにあるクラスを参照したいという
>>643 なにか盛大に考え違いをしていたようで
importにパッケージ名から指定するだけで済んだわ
ありがとう
ddmsでdataの中身見る方法ってある? キャッシュを見たいんだけど
>>646 ddmsじゃなくてシェル上での操作になるけど、
run-as パッケージ名
650 :
デフォルトの名無しさん :2013/02/20(水) 20:04:14.54
EditTextって xmlからは android:maxLength="10" これでも入力文字数を制限できるけど コードからだとどうするの?
651 :
デフォルトの名無しさん :2013/02/20(水) 20:07:24.41
inputfilter
maxLengthといえば、GalaxySは全てのviewで android:maxLength="9000"がなぜかデフォルトで指定されている 開発者殺しの謎クソ仕様なんだよな。 あれで誰が幸せになれたんだよ
へー
654 :
デフォルトの名無しさん :2013/02/20(水) 22:35:59.53
>>654 テキストエディタ作ってる人が
原因つきとめるまで苦労してたな
656 :
デフォルトの名無しさん :2013/02/20(水) 23:49:38.39
>>655 そういう系か
独自仕様はホントやめて欲しい
9000字書く状況そんなあるか?
9KB全角4KBなんてあっという間だろ
既存文書を開くこともあるだろうから、9000ぐらいいくだろう
660 :
636 :2013/02/21(木) 00:44:17.26
>>637 String.formatを使うよりは数倍早いらしいんですが、これ以上高速にStringへ変換する方法があるんでしょうか?
できれば解決策も教えていただきたいです
>>638 NDKが早いのは分かるんですが、C++はさっぱりなので自分で書くのはちょっと難しそうです…
>>660 もうやってるかもしれないけど、Debug.startMethodTracingで計測してみたら?
どこで時間食ってるか詳しくわかる
>>652 サムチョン端末にNexusブランドを与えていると、そのうちそれがandroidの仕様ってことになるんだぜ?
>>660 文字列への変換は一回ごく短いデータを処理してるだけだから普通に考えれば関係ないでしょ
となるとMDの実装が悪いかDalvikが悪いかだけどきっと後者だろうな
NDKしかないんじゃね
あとIOバウンドの可能性もあるな
>>636 つかInputStream系の常だけど
while(DigestInputStream.read() != -1){}
で1バイトずつ処理してるのが非効率なんじゃないの?
こういうのってある程度単位上げたほうが良いと思ってたんだけど
誰も言わないって事は無駄なあがきだったりするのかな
バッファしてるでしょ
>>660 ってかさ、今java.security.DigestInputStreamのソース見てきたけど、
public int read() throws IOException {
int ch = in.read();
if (on && ch != -1) {
digest.update((byte)ch);
}
return ch;
}
ってなってんぞ。
この『in.read()』ってBufferedIntputStreamのreadだから実装そのものがやばくね?
BufferedIntputStreamのreadの戻り値って、バッファにfillした後の次のbyteじゃなかったっけ
だとしたらバッファサイズによって最終的なハッシュ値ちがってこねぇかなこれ
そもそもバイト読み飛ばして計算するのってOKなの?
誤読してるよ
追記 だから、使うのはread(byte[])の方であるべきでは? byte[] buf = new byte[1024]; while (inStream.read(buf) <= 0) {} これなら内部で『digest.update(b, off, result)』ってなるから読み飛ばされない 何か勘違いしてたらすまん
ああ、ごめん。 盛大に誤読してたわ 『DigestInputStream.read() != -1』 吊ってくる
>>661 >>664 ありがとうございます、少し調べてみました
tracelogを見る限りではMessageDigest.updateに時間がかかっているようです
となるとMDに変わるものを自分で実装するしかないと思うんですが、これも自分の今の能力では難しそうなので諦めておきます…
気は進みませんが起動時に全ファイルチェックして、その後ファイルごとのMD5値をlistにでも保持しておくことにします
たぶんわざわざアプリ起動中にファイル書き換える人いないと思うので(というかそこまで厳密なものではないのですが)
FragmentActivityHoge→暗黙的インテント→FragmentActivityHoge→FragmentHoge->getActivity() = null 外部アプリからならいいけど この流れだと getActivity()がヌルポるのだけどなんでだろう…
onActivityCreatedより前だと null
while (true) { } この無限ループをアプリの最初っから最後まで走らせる場合、パフォーマンスはどこまで低下するものでしょうか? ループの中身は簡単なif文があるだけで、ifの式が真になるのは滅多にないです
>>676 心配しなくてもスリーパーキラーに殺される(笑)
>>675 Looperにやらせりゃいいじゃん
なんで自前でするの
ウーパーが嫉妬するからです。
UIスレッドで走らせたら最初から最後まで固まったまんま
ゲームでは普通じゃねえの
>>681 深いところにあるけど?
何のためのHandlerとかpostだと思ってるの?
>>683 >>Handler
どクソだが? こいつ
ごちゃごちゃ言わないで非UIからUIの表示位許可すればいいんだよ
>>684 SurfaceViewでもOpenGLでも好きなの使えばいいじゃん
Handlerがクソならフレームワーク使わないのがベスト
>>675 whileループはシングルコアの端末では常にCPU使用率100%キープ状態に近い
(途中でSleepやSync入れてない場合)
CPU使用率調べるアプリ入れて確認してみるといいぜ。
デュアルコア端末でどうなるかはわからーん(持ってないので・・・)
whileループだらけだ・・・・
NDKの質問です。 C++でNativeアプリを作っていて、NativeからGPSの緯度経度情報をとりたいのですが 良い方法を発見できていません。良い実装方法をおしえてください。
Javaのメソッドを呼び出す
すんません、プログラムの質問じゃないんですけど、どこに投げていいかわからなくて。 端末を PC に繋げて、eclipse からデバッグしようとする時、「実行中の Android デバイス」 の リストで端末の ID が 「点滅」 していて選択できません。 PC 側で OS やドライバの再インストール、端末側で初期化などを試しましたが改善しません。 端末は 2 台持っているのですが、もう 1 台の方は正常にリストに表示され、実行できます。 最近になって発生した問題なのですが、これは故障でしょうか? うまく行かない方の端末: N-05D、4.0.4 うまく行く方の端末: N-04C、2.3.3
692 :
689 :2013/02/22(金) 01:21:32.77
>>690 う〜ん、やっぱJava経由しかないのかなぁ・・・。
Native層でうまくやりたいんだけど。。
>>692 正式なAPIがないから無理
そんなものをNDKで作るなってこった
getSystemServiceで取るやつ系はJavaのインターフェースしかないのが多いね その先のソース見てみればNativeでも叩けるかどうかわかるんじゃないの?
仮に叩けたところで互換性ゼロだろうけどな
>>693 そのページを参考に、NEC カシオが配布しているドライバの使用をやめて SDK 付属の
ドライバに変更したらちゃんと実行できるようになりました。
ありがとうございました。
でも、前まで問題無かったのに・・・何なんだろう?
今まで大丈夫だったのに突然動かなくなる eclipseではよくある事さ・・・
>>697 よ〜く思い出してご覧、アナタ、何かやってるはずだから
C、C++、PHP辺りはそれなりに使えるんだけどJavaは全く手つかずな人間にandroidアプリ制作にお勧めの書籍を教えてください Javaの基本から入った方がいいのか、作りながらでもそれなりに覚えていけるのかも分からないものでして
似てるとはいえ言語3つも「それなり」に使えるんなら、そのくらい自分で判断できるだろw
向いてないから死ね
>>700 ジュンク堂にいって2万位本を買えば2週間でいっぱしのアンドロイダーになれる
経験者より
どれでもいいから初心者用買って書いてる単語かたっぱしから検索かけてったら それなりのアプリができた
>>700 俺もおんなじ感じだったが、オライリーの本を流し読みして、あとは人のソース読んだらそれなりになった。
>>700 C++でクラスとオブジェクト指向に慣れてるか否かによる。
クラス使わずに上からコードをドバーっと書いて、自作関数作ってという2000年ごろのやり方してたのなら
最初は意味不明だと思う。
なぜなら、クラス継承、クラスインスタンスの作成、クラスインターフェース、クラス内での変数スコープの扱い、無名クラス
とかのオンパレードになるから。
そんな俺は2000年頃のやり方派だったが
解説サイトだけで今はアプリ3本くらい出品してる(単純なやつだけどね)
書籍は1冊ももってない。どうしてもわからない時は立ち読みで済ましてる。
ここまでで1年かかった。
Androidに手出す前のスキルは
Cでファミコンくらいのゲームは作れる(マリオやDQ1など)
Perlで大抵のCGIは作れる(掲示板、チャット、アクセス解析、MySQL連携など)
Webサイトはメモ帳に手書きで作れる。
こんな感じ。
クラスに慣れればいけるぜ・・・!
恐れず飛び込んでみ・・・!
プログラマーはいつだって前人未到の地へ一歩踏み込み
暗闇の迷いの森で彷徨い続けるの繰り返しだったろ!?
かっけー
明解java androidhacks androidAPIプログラミングリファレンス 他言語やった事あるならこの辺を買っとけばいいと思う
for文の中でHttpClientとHttpGetで通信しようとしてるのですが これだとお行儀が悪いですよね Authentication error: Unable to respond to any of these challenges: というエラーがでました。 何回か連続でレスポンスをとりたいのですがどういうやりかたがいいのでしょうか?
ホームに配置するウィジェットに動的に生成したBitmapを設定する場合 再起動やなにかをした時に設定した画像が消えるといったことはあるでしょうか?
711 :
デフォルトの名無しさん :2013/02/22(金) 22:04:20.43
>>710 そりゃあファイルとして保存しないと消えるよ
>>712 ぜんぜんプログラムとも関係ない個人ブログのリンク
android用のゲームアプリを作成している者ですが、 タイトルからゲームをスタートさせると三回に一回くらい強制終了してしまうのですが(タイトルを開いたときは一度も落ちませんでした)、 これは本体のメモリ不足が原因であっていますでしょうか? また、メモリ不足だとしたらどのように解決したらよいのか教えていただけるとありがたいです。 「メモリ不足 android アプリ開発」等で検索したのですが、開発者向けのページがなかなか見つからなかったので・・・ どなたかご回答お願い致します。
716 :
デフォルトの名無しさん :2013/02/23(土) 00:40:35.50
>>714 では逆に質問します。
Android用の動画再生アプリを作成している者ですが
起動させると三回に一回くらい強制終了してしまうのですが(ボタンを押す前では一度も落ちませんでした)、
これは本体のメモリ不足が原因であっていますでしょうか?
こんな質問で何かわかると思いますでしょうか?
質問する前に気づけないでしょうか?
そもそもこんなアバウトな質問を投げるような点から
プログラムをよく理解せずに作ってるようにしか思えない
自分が理解してないからうまく説明できないようにしか思えないのですがいかがでしょうか?
>>714 例外キャッチして何が原因で落ちてるのか調べるのが先。
「メモリ不足に違いない」という根拠のない断定が罠。
>>714 > 本体のメモリ不足が原因であっていますでしょうか?
あっていません。原因はあなたのひいひいおじいさんが山で蛇を殺したことによる霊障です。
エラー内容とログの見方わかるヤツなら、最初から質問なんかしてないだろうさ
医者「今日はどうされました?」 患者「はい、ちょっとこの頃作ったアプリの調子が悪くて・・・」 医者「なるほど・・・。他に特に変わったことはありませんか?タスクキラーを入れたりとか」 患者「いえ、特には」 医者「では少しLogcat見せてもらいますねー」
ソースをじっくり見ればだいたいわかるはずだがな
AndroidのXML 問題だらけ・バグだらけだな 直す気があるかな?
727 :
デフォルトの名無しさん :2013/02/23(土) 09:48:44.57
そうか?最近は少ないと思うけど
>>727 今はまっていたのだがなんとか脱出出来た
最終的に.java側でエラーが出ていたXMLと内容はまったく同じだったが、
項目を1個ずつ増やしていったら脱出出来た
摩訶不思議ですわw
もともとXML自体にはエラーは出ていなかった
そのレスを見る限り不具合の原因がご本人だったり
>>729 遭遇してみればわかるさ
R.〜 xmlファイルが見つからないってのだからな
rootとってない端末でSQLiteのDBファイルの確認どうやってますか? ちなみにいまは/data/data以下のDBファイルを/sdcardにコピーするコードをわざわざ書いて確認しています。
んなことしなくてもadb pullで取ってこれるでしょ
>>732 パーミッションがなくてそれできないのかと思っていました。
どうやらdbファイルのフルパスさえ分かれば出来るようですね。
ありがとうございます。
>>730 「日本語でおけ」
と暗に言われている事に気が付けよ。
現象の説明が下手すぎて何も分からないんだよ。
現実の現象を日本語で上手く伝えられないようなやつにプログラミング言語が上手く扱えるとはとても思えんなw
>>735 解決したっていってるだろ? 馬鹿かキミは?(笑)
せっかく教えてやったのにネ
androidのXMLがクソなのは間違いないのはよく覚えてけ ボケ カス チンカス マンカス 失礼 下品な言葉で(笑)
頭悪い文章だな・・・
XMLが云々はこのスレの住人なら周知のこと。
問題を解決できたかどうかが議題ではなく
美しいソースが書けているかどうかを
>>735 は言っているのだろう。
会話もできないみだいだしね。
まぁ頑張ってくれってことさ。
俺もはまっていた問題がやっと解決できた 最終的にLogcatで出ていたExceptionはEclipseのエラーとまったく同じだったが 項目を1個ずつ削っていったら解決できた 摩訶不思議だわ もともとLogcatはエラー吐いてなかった
741 :
デフォルトの名無しさん :2013/02/23(土) 18:52:34.31
ログが全て。わからなかったらとりあえず怪しいところにLog.dなりログ出力させとく習慣を身に付けるがよろし。
中途採用の新人にandroidプログラムを教えるようにって言われて課題とかだしてたけど、 変数の内容をToastで表示してデバッグしてたから、ログかデバッガのほうが楽だよって 言っておいたけど、やっぱToastを使い続けてて、研修が終わったときに上司から文章で 研修の論評をしろって言われたんで、それにもログやデバッガの使い方を覚えたほうがいいって 書いておいたんだけど、このまえC#でwindowsアプリを作ってるのみたら、やっぱ メッセージボックスでデバッグしてたわ。 あの新人の採用を決めた人は隣の席でwindowsの仕事してるんだから、そんくらい教えてやれよって感じだけど。
やりたい方でいいんじゃねえの Toastの方が処理が実行されるタイミングが分かりやすいじゃん
714です 確かにeclipseの文法チェックのエラーの確認のみで、Logcatの方の確認を忘れていました・・・ Logcatを使って強制終了の原因を探ってみようと思います 至極当たり前のことに気づかず質問してしまい申し訳ないです ご回答ありがとうございました
>>743 java メッセージボックスすら ないからな(笑)
747 :
デフォルトの名無しさん :2013/02/23(土) 20:14:59.99
>>746 動かないって何も起きないってこと?エラーを吐くってこと?
>>746 ホームアプリはAppWidgetの一番最後の更新状態をキャッシュ?するようで
テキストや画像の更新のためにupdateAppWidgetする時に
常に毎回setOnClickPendingIntentも含めないと
ホームアプリにリフレッシュかかった時タップしても効かなくなるけど、
それじゃないよね?
749 :
746 :2013/02/23(土) 20:23:53.01
>>747 曖昧な表現ですみません。
実機では何も起きないです。
Log.d("TEST", "hogehoge_1");
remoteViews.setTextViewText(R.id.button_hoge, "test");
Log.d("TEST", "hogehoge_2");
とすると、
hogehoge_1
hogehoge_2
が吐かれて、その前後を含め、エラーなどは吐かれていない。
繰り返しますが、エミュレータではちゃんと動作します。
>>746 そのURL先のサンプルだと、
setImageViewResourceはACTION_MY_CLICKのときだけじゃなくて常に含めないといけないんじゃないかと思う
ACTION_MY_CLICKのときはsetImageViewResourceで画像を設定しているが、
次にonUpdateが来たときsetImageViewResourceしないので画像は消去されてしまうんじゃないか
どうやれば動くかよりもエミュレータでは動くのに!ってのが重要なんだったら 端末メーカーにエミュレータと挙動が異なりますって訴えることだな
753 :
750 :2013/02/23(土) 20:47:54.63
>>751 その、ボタンが押された瞬間だけsetTextViewTextする、っていう発想はだめ
onUpdateのときも呼ぶ
onUpdateは常に最新の状態を反映したRemoteViewsを作らないといけない
ボタンが押されたら、その状態を記録し、状態を見てsetTextViewTextを呼ぶなりする
状態は変数ではなくSharedPreferencesに保存する
これだからオープンソースは糞なんだ
端末によって変な挙動が起きるっていうのはガラケーの時代でもあったから オープンクローズド関係ない
>>753 でもエミュレーターではちゃんと動くんです
>>751 根本的な所に気がついていないね
メソッドの仕様をよく見よう
>>756 エミュレーターで動くだけでいいんならそれでいいんじゃね
>>756 もうお前はF-12C捨ててエミュ持ち歩けよ
練習試合では一回も負けたことがないのに本番では一回も勝ったことがない
二次(以下省略
ネット上のファイルをダウンロードしたいのですが、エミュレーターでは成功するものの
実機テストだと失敗してしまいます。
URLConnection でも DownloadManager でもダメでした。
SDに保存先のフォルダは作成できますが肝心のファイルがダウンロードしても保存されません。
他の動作は問題ありませんがダウンロードだけがうまくいきません。
http://d.hatena.ne.jp/acro-engineer/20110727/1311778297 ここで公開されているDownloadManagerのサンプル(zip)でさえ同様の現象がでました。
何か「これをしておかなければならない」ということがあるのでしょうか?
エミュレーターで動作するため安心して開発をしてきたので、今になって実機で動かないことがわかって
かなり困惑しています。
よろしくお願いします。
追記: SDの空き容量は十分にあります。 ダウンロード終了時にエラーが発生するようです。
765 :
751 :2013/02/23(土) 22:36:57.52
外出しておりましたので、レスが遅れてしまい申し訳ありません。
>>752 そうですね。アドバイスありがとうございます。
>>753 度々ありがとうございます。
「onUpdateをOverrideして、その中にも記述する」
と理解しました。
>>756 こんばんは
>>757 ありがとうございます。
MSDNみたいに見やすい仕様があると良いですが
贅沢は言えませんね。
たまに発言してる事だが、あえてまたこのタイミング言う Androidプログラミングは初心者向けではない 中〜上級者向け
>>766 お前がそれを書くことで
何がどう変わるの?
何がどう変わることを期待しているの?
お前がそれを2chで書き込むことで
何がどう変わることを期待しているの?
と、こういう人を見るとたまに思う。
それいうたら2chで雑談以外の書き込みは全否定ですがな
ユーザからのクラッシュレポートに java.lang.RuntimeException: Unable to instantiate activity ComponentInfo {jp.package.XXXX/jp.package.XXXX.AppActivity} : java.lang.ClassNotFoundException: jp.package.XXXX.AppActivity in loader dalvik.system.PathClassLoader [/mnt/asec/jp.package.XXXX-1/pkg.apk] とあるのですが、原因が全く分かりません。 総DLユーザー数と比較して、極僅かなユーザーのみに起きるようです。 クラスが無い、、、インストールに失敗してる? 原因想像つく方いましたら、よろしくお願いします。
>>743 良くないよ。消し忘れとかよく残ってるし。
webで出力して表示してるらつがいたけど、ヘッダの前に出力しちゃうと動作が変わっちゃうんだよ。
>>771 onCreateでloaderとか走らせて、loaderの前処理でactivityのUIいじったりすると出ることがある
activityはonCreateが完了するまで、インスタンス生成が完了してないと考えた方が吉
ここは他人やら新人を見下すことで自我を安心させるスレですか? フレームワークの範疇でしか物を作れてないなら、俺もお前らもたいしたことないから
もう一度言う Androidプログラミングは初心者向けではない 中〜上級者向け この意味がわからない時点で初心者
linearlayout2個をframelayoutで重ねたときに、下のlinearlayoutにタッチ、クリックイベントがいかないようにするにはどうすればいいですか?
補足: ここで言う初心者とはAndroidプログラム初心者ではなくプログラミング経験の事を指す
>>776 listener登録しない、もしくは解除する
gone
780 :
デフォルトの名無しさん :2013/02/24(日) 01:33:38.41
アンドロイドのプログラミングなんて初心者でもできる。 できない奴はセンスが悪い。
>>781 そっち方向しかありませんか……
できればタッチされたことを下に知らせない方法があると嬉しいんです
>>770 わざわざ探してくれてありがとです。
そのまんまの状況でしたわ。
ただ、一端末だけ問題出るのならまだしも、一機種押し延べて問題出まくりなものに「相性」という言葉を使うのはちがう気がしました。
不具合と言って差し支えない気が・・・。
>>784 ユーザからの問い合わせにはしらばっくれてるみたいだけど
メーカーはわかってるはずだよ
ADTのバージョン上げるなってお達し来てたし
>>782 Clickableやfocusableを殺すとかじゃいかんのかな
androidは小プロを作るならよほどのバカじゃない限り造れるが(サンプルが豊富なのでちょっといじれば良い) 大規模なモノを造ろうとすると上級者しか造れない かなりのものを造ろうとすると...多分無理じゃないかな...eclipiseが抵抗してくるから 挙動がかなりおかしくなる コードにエラーがないのにエラー表示したり...たまりません
>>でもエミュレーターではちゃんと動くんです すごいな、この発言 『実機では動くんですけどエミュレーターでは動かない』 『だからエミュレータは使わないんです』 ってのなら理解出来るが...
フライトシミュレーターで戦闘機操縦できるのに実機だと操縦できない。なんで!!? ってな質問だよな
>>774 こういう人格攻撃で反論しはじめたってことは、やっぱトーストデバッグはダサいってことなのか。
最近はメッセージボックスを造ってやってます(笑) トーストは3秒で消えちゃうから...(笑) バグなんて大体の位置がわかればソースを見ればすぐとれる
それ、仕事でやっているならひどいね 面白いからいいけど
やっぱLogcatだよな Toastデバッグは中学生まで
昔はデバッガ使うやつなんて馬鹿にされたものだが... 時代は変わったのだな...『ゆとり』効果ってやつか
>>788 その発言は偽物のレスだろ。
そんくらい判れよ。
デバッガだけとかトーストだけとか言ってるやつはどっちもアホ 時と場合によって利点欠点あるんだから柔軟に両方使え デバッガだけしか使ってないやつは バックグランドで複数の非同期処理がほぼ同時に実行させる処理やら タイマー割り込みやメッセージ割り込み、アクション割り込み、インテント割り込み ブロードキャストのレジスター割り込み apk間での通信連携などのバグつぶしを全部デバッカーで処理できるとおもってるのかい
熱いねぇ〜 その熱さでこの寒気を吹き飛ばしてもらいたいなぁ スタイルは人それぞれだからなぁ 自分が効率的だと思う方法でやればいい...とSOHOは思う
あとデバッガ使えるか使えないかなら使える方が有利だが デバッガなしでデバッグできるスキルも無いと他の環境でまったく通用しなくなるぞ デバッガなんてデベロッパによって操作方法全部違うし、ついてないものだってある。 そういう意味ではトーストなりテキストビューなりに出力して行うLowレベルデバッグの方が 環境に依存しない柔軟性があるのは確か
\ドヤッ決まっただろドヤッ/
>>796 ,798
デバッガ使えない環境とかは置いといて、基本はデバッガで、いちいちデバッガでとめられないときには ログやら(いわゆる)printf()デバッグだよね。 トーストやらメッセージボックスはないわ。 あと年寄りでデバッガをバカにして机上デバッグをもちあげる人がいるけど、あれもフローチャートと 同じく過去の遺物だわ。
組み込みだとprintfもデバッガも使えない場合あるからなあ ハードウェアに近い部分のプログラムは開発できない人なんだろうなあ
使えない環境もあるってことで、使える環境ではやっぱメッセージボックスデバッグや 机上デバッグはダサいってのに反論はできないってことですね。 了解しました。
>>802 ダサいとかじゃなくて、効率を考えられないんじゃ開発には向いてない
机上デバッグのほうが効率いいと思ってそれをやってるなら「デバッガやらログやら使えない環境もある」とか しかたなくやってるような事を言ってないで、最初からそう言えばいいのに。 ちょっとまえ、コードレビューのコンテストみたいな企画があって、それが机に対面に座って プリントアウトしたコードでどうこうするって形式だったけど、それに対して、まつもとゆきひろが、PCを使わないで レビューとかありえないとかコメントしてたけど、机上デバッグもそういう感覚だよね。 机上デバッグの有用性を信じてる人は、ぜったい理解できないだろうけど。
>>800 フローチャート(笑)
チャート図は馬鹿らしいけど、フローは必要だぞ(笑)
普通の人間は棋士のようにはるか先まで見通せる能力はないだろうし、記憶力だってしれてるからな
逆に記憶力があるやつは発想能力がないヤツが多いけどな(笑)
まったくムダな受験勉強の弊害だな
VMが複数コア対応した3.0以降はデバッガも軽くなったのだろうか
>>804 PCが嫌いな客(年配)もいるんだよねぇ ノートに書いて説明とかね
あとPCでしか出来ないってのはイマジネーション能力もないんだろうな
オレも机上はまずやらないが、アイデアに詰まった時なんか有効な場合もあるよ
>>804 >>まつもとゆきひろ
誰? ラビィ? 性器の事か?(笑) あれはラビアか?
どっちにしてもオレが一生使う事がない言語だな
あ、スクリプトかぁ(笑) 言語とは言えないな
机上デバッガが時代に取り残された雑魚っていうことが露呈したな
>>809 時代に取り残されているっていうか、この人30年前でもだめなような気がするわ。
>>802 で「それ反論になってませんよ」って教えてあげるのに、同じようなロジックで反論繰り返してるし。
煽れば勢いでごまかせるとか思ってるのかね。
理屈で物を考えるのが苦手っぽいね。
この「(笑)」連発するやつ、このスレの前半か中盤あたりでみた気がするぞ・・・・・。 なんだっけ・・・・確か・・・ アラートダイアログにロード画面みたいなバー表示できなくて AndroidがクソだのJavaがクソだの言ってた人じゃなかったっけ? 結局当人がスレッドとハンドル知らないだけだったという。うろ覚えだけど。 デバッガでもトーストでも紙でも何でもいいから、自分のやりやすい物でやれ 油売ってないで、この瞬間でも1文字でも多くコード打つち 少しでも完成に近づけてるやつが一番鏡だわ
>>811 いや、デバッガやログの使い方くらい覚えろよって思うわ。
そんなに難しいもんでもないし。
ツールとか新しい手法とか、やりたがらない人に使わない理由を語らせたら
いろいろ喋るけど、そんな理論武装してる暇があったら、ちょっと動かしたり
ネットで調べたりすればいいじゃんって感じだわ。
>>812 IntentにputExtraで何か区別のつく値を入れる
Activityで受け取ったIntentのExtraの値を調べる
PendingIntent.getActivityのrequestCodeが同じだとPendingIntentが再利用されてしまうのでrequestCodeも変える
815 :
812 :2013/02/24(日) 16:42:03.51
>>814 ご回答いただきありがとうございます。
PendingIntentが「再利用されてしまう」というのは
どういった状況でしょうか?
PendingIntentを取得するとき、すでに同じ内容のPendingIntentが存在したら、新しく作成せずにすでに存在するものが取得される ただし「同じ」の判定にextraは含まれないので、extraだけが異なるPendingIntentを取得することはできない・・・んだったと思う
817 :
815 :2013/02/24(日) 17:37:33.59
>>816 ご説明ありがとうございます。
何となくわかりました。
>>814 の方法で希望の動作となりましたので
勉強を続けながら頑張っていきます。
ActivityManagerのRunningTaskInfoから起動中Activityの画面(ScreenShotのようなイメージ)を取得したいのですが、いまいち方法がわかりません。 プログラム自体初心者で何か見当違いな質問をしているかもしれませんが、わかる方教えてくださいm(_ _)m
えらそーな意見の人の作品は? 当然作品と呼べるものをつくってるんだろうな? パーツだけとかなら 笑いもの 派遣とか社員でも笑いもの
(笑)w
欠陥案泥井戸 ファイルオープンダイアログがない これくらい用意しておけよ モーダルダイアログがない アホか 非UIから画面表示が出来ない コンテキスト渡してるんだから表示くらいやれよ ボケ 欠陥痔殺馬 ポインタがない GCがウザイ 簡単に0セットが出来ない (マイ)ライブラリがない 全てソースレベルで必要 アホかぃ インクルードファイルという観念がない ボウケィ 簡単にソースが抜かれる どマヌケ こんなとこかな?
AVDでdalvikvm heapを増やす方法を教えて下さい 24M以上にしたいのです
dalvik.vm.heapsizeでググれ
ググりました 次は何をすればいいですか
>>825 検索結果を上から順に
クリック、クリック、クリィック!!!
AVDでって時点で8割方答えでてんのに・・・釣りくせぇ〜
829 :
デフォルトの名無しさん :2013/02/24(日) 22:57:12.82
longの配列を保存するのに最適なものって何でしょうか?
>>818 どっかにgetThumbnailってメソッドなかったっけ?
そいつにコールバック渡してやれば取れるはず
>>829 binary file
be careful in endian
832 :
デフォルトの名無しさん :2013/02/25(月) 01:09:07.94
生成したビューをコピーすることって出来るの? LinearLayout X = new LinearLayout(this); LinearLayout Y = new LinearLayout(this); LinearLayout Z = new LinearLayout(this); X.addView(Z); Y.addView(Z); こういうことがしたいんだけど、当然エラーになる。
834 :
デフォルトの名無しさん :2013/02/25(月) 02:03:32.52
>>833 Zを作るのに長いコードを書いてるから、整合性のためにも出来上がったものをポンとコピーしたいんだ。
ダメそうなら二個作るかなあ…。
関数
Java仕様をネチネチとネガティブにいってる野郎と その前後で1行くらいのどうでもいい質問を連投してる野郎 そして、偉そうなやつはどうのこうのと噛み付く野郎は 全て(笑)野郎なので今後もスルーでいきましょう
>>834 layout A = Z;
じゃだめ?
inflate
確かに大きいプログラム作ると苦戦必死だな 俺の経験上では <ゲームアプリ> ・GCに持っていかれないようにするメモリー管理工夫(特にグラフィック関係) ※3Dは泣ける ・処理落ち防ぐためのプログラム最適化 ・キー入力の管理 <ツールアプリ> ・端末間のハードウェア違いの考慮(A端末は照度センサー使えるのにB端末は搭載されていないなど) ・多種の機能を多用する関係上APIが膨大になるので、それらをうまく管理するためのクラス管理能力 ・それらの実証データ検証 ・非同期処理(Serviceなど)の同時管理と解放忘れの注視 ・フローの流れの把握 <両方共通> ・端末の画面サイズの違い考慮 ・画面回転への考慮 ・ホームキー、バックキー、スクリーンOFF時などハードキー押された時の予期せぬ処理への対応 ・オンラインタイプならデータハック対策のための通信や保存データの暗号化・複合化 大体10000行超えるプログラムあたりから これらが熾烈になってくる傾向は強い気がする。 最初の段階での設計と仕様は相当工夫しとかないと超大変になるぞ
841 :
デフォルトの名無しさん :2013/02/25(月) 23:27:36.43
BufferedInputStream is = new BufferedInputStream(in, 1024 * 20); BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(_file, true), 1024 * 20); int len = -1; while (true) { if ((len = is.read(buf)) != -1 && !isCancelled()) { out.write(buf, 0, len); _now += len; publishProgress(); } else { break; } } out.flush(); out.close(); is.close(); 上記の様にキャンセルが呼ばれるかダウンロードが終わったらStreamを閉じるようにしているのですが 7MBほどのファイルをダウンロードしている途中でキャンセルを呼ぶとwhileからは抜け出せるのですが最後の三行でものすごく時間がかかります どうしたらスムーズにキャンセルできますか?
>>837 これは駄目だろw
参照をコピーしてるだけだもの
初めまして、さっそく質問させてください. AndengineをEclipseにインポート後、import org.andengine.engine.options.ScreenOrientation のようにライブラリをインポートしようとすると The import org.andengine.engine.options.ScreenOrientation cannot be resolved とエラーが発生してしまいます. 今のところそのほかのライブラリはインポートできるのですが、上記のライブラリだけインポートできない理由がわかりません。 解決方法をご存じの方がおられましたら教えていただけると幸いです。
タブレットなんて、りんご印がついてれば何でも買う層が買ってるだけで それがないなら誰も買わねえだろと思ってたんだが変わるもんだな
ActionBarで、タイトル部分をタップするとダイアログを出すナビゲーションを作りたいのですが、 可能でしょうか?(タイトルテキストを変更するダイアログなので、タイトルクリックで出したい。) 今はやむを得ず setDisplayOptions(0, ActionBar.DISPLAY_SHOW_HOME); でアプリケーションアイコンを消し、 setDisplayHomeAsUpEnabled (true); でUPアイコンを表示することでタイトルをUPアイコン化し、タップを拾っています。 でも表示上不自然極まりないので、このまま進めるのは避けたいと思っています。 多少強引でも結構ですので、何か方法が有りましたらよろしくお願い致します。
847 :
デフォルトの名無しさん :2013/02/26(火) 05:21:59.66
おまんまんまん
おつんつん
うんこ
おっぱいぶるんぶるん
>>842 そもそもプログラマは全角英数字を見ると普通は
じんましん、動悸、吐き気、めまい、発汗、下痢、頻尿など
諸症状が出るので、それを自ら使ってる時点でエセだと分かる
それはそれで病院へ行かれたほうがいイイと思います
>>846 タイトルViewのIDは
getResources().getIdentifier("action_bar_title", "id", "android");
で取得できるから、それでfindViewByIdして
OnClickListenerをセットすればできるんじゃないかな?
ActionBarSherlock使ってるなら
まずは、R.id.abs__action_bar_titleでfindViewByIdしてみて
結果がnullだったら、getIdentifierで取得したIDを使ってfindViewByIdする
って形にすればいいと思うよ。
俺も全角英数字は拒否反応が出るけど2chの2だけは全角じゃないと落ち着かない
等幅フォントじゃないからぱっと見で全角かどうかわからんわ。
俺,たまに等幅じゃないフォントでプログラム書いたりする
アスキー中毒か
858 :
デフォルトの名無しさん :2013/02/26(火) 23:45:48.10
・WidgetのonUpdateの中でSQLiteのDBを参照してTextViewにsetText()する。
・WidgetのボタンをタップするとActivityを起動し、そこには
EditTextとButtonを配置してあり、Buttonがタップされると
EditTextの内容でDBを更新し、finish()する。
・DBが更新されたらWidgetのTextViewに反映したい。
ActivityからWidgetを更新する方法として
http://jake-lab.blogspot.jp/2010/09/android-activity-widget.html を見つけましたが、これをActivity側のソースに入れても
何も変化ありませんでした。
どう記述すれば良いのでしょうか。
あるページに遷移すると下記のようなエラーが出て強制終了してしまいます。
E/ArrayAdapter(16333): You must supply a resource ID for a TextView
ネットの情報を元に全部のTextViewにidを下記のように付加してみたんですがダメでした。。。
どうすればよいでしょうか?
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="
http://schemas.android.com/apk/res/android "
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView android:id="@+id/text1" android:text="1" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:background="#666666"/>
<ListView android:id="@+id/list1" android:layout_width="fill_parent"
android:layout_height="220dip" />
<TextView android:id="@+id/text2" android:text="2" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:background="#666666"/>
<ListView android:id="@+id/list2" android:layout_width="fill_parent"
android:layout_height="220dip" />
</LinearLayout>
OpenGLでゲームが作りたくてChrisPruett氏のサンプルSpriteMethodTestを解析しています。 OpenGLで描画テストを行った後、Backボタンで戻ると時々クラッシュしてホーム画面に戻ってしまいます。 GLSurfaceViewのshutdown処理が行われるタイミングが怪しそうなのですが・・・原因ご存じの方はおられないでしょうか・・・?
>>859 ArrayAdapterに設定してるViewとパラメータで渡してるID(?)が一致してない
>>858 Widgetのid分かったら直接更新できなかったっけ?
>>858 ActivityのonDestroyにもwidgetのプログラムを書く
こうしないとwidgetは更新されない
>>861 ArrayAdapterの引数のIDを見なおしたらうまくいきました
ありがとうございます
>>858 AppWidgetProviderのほうで処理をまとめたいなら、以下の通り。
AppWidgetProviderのソース(onReceive)見ればわかるけど、
AppWidgetManager.ACTION_APPWIDGET_UPDATEのActionは
ExtraにAppWidgetManager.EXTRA_APPWIDGET_IDSがセットされていないとonUpdateを呼んでくれない。
だからそもそも、まずActivityのほうにwidgetIdを渡してやる必要がある。
widgetのボタン(Activityを起動する)にセットするpendingIntentのExtraにwidgetIdを仕込んでおくのがいいかと。
(そのときにgetActivitiesの第二引数にwidgetIdを指定してやるのがミソ。そうしないとpendingIntentが別に作られない。
最後の引数はPendingIntent.FLAG_UPDATE_CURRENTでいいと思う)
ついでに余計なことまで書いておくと、 broadcastでAppWidgetManager.ACTION_APPWIDGET_UPDATEを使ってAppWidgetProviderに 通知をするのはちょっと良くないかもしれない (たぶん他のAppWidgetProviderもそのbroadcastを拾うから) 独自のbroadcast用Actionを定義して、それをonReceiveで判断してwidgetの状態を更新するのが一番いいのでは。 (そのActionを受け取れるよう、Manifest.xmlにActionのIntentフィルターを書くのも忘れずに)
867 :
858 :2013/02/27(水) 03:01:09.07
レスしていただきありがとうございます。 まだ内容は読めていませんが、明日仕事が終わったら 改めて読ませていただきます。ありがとうございます。
>>853 返事遅くなりました。ありがとうございます、まさに知りたかったことズバリです。
仕事から帰ったらになりますが、早速試してみます!
タッチイベントを取得しようとしたら Should not happen: no rect-based-test nodes found っていうエラーがでました。 ソースはサンプルにもなってる標準のものです。 logcatを見るとタッチするだびにでてきます。何が原因でしょうか?
>ソースはサンプルにもなってる標準のもの エスパーかw
これです private final SimpleOnGestureListener onGestureListener = new SimpleOnGestureListener() { @Override public boolean onDoubleTap(MotionEvent e) { Log.v("tag", "onDoubleTap"); return super.onDoubleTap(e); } };
>>871 バージョンや機種も書こうな
局所的な情報だけ書かれてもさっぱりだけど、ぐぐったら結構出てくるJBのやつではないのか?
>>872 Nexus7なのでJB(4..2.2)です
JBのバグらしいとも書いてありますね。。
windows開発だとiniファイルがパラメータ読み込みに便利なんだけど、 androidだと普通SharedPreferencesを使うものなんですか? 今やりたいことは 構成ファイル工場→いくつかの構成ファイルを生成 その他のアプリ →構成ファイルを各自で選択して読み込む なんですけど。 そもそも実機だと他のアプリケーションのxmlファイル一覧取得なんてできますか?
ゲイツOSも今時はxmlなんじゃないかな?
SDカードに出力すればアプリでも誰でも見れると思う
877 :
858 :2013/02/27(水) 19:40:54.85
>>862 AppWidgetIdを指定して、直接更新できました。
>>863 これはどういうことでしょうか?
>>865 実現できました。ありがとうございました。
Google Playのショバ代25ドルってVプリカで払えますか?
Javaなんか覚えても就職できませんよ
あんたが就職できなかったのはJAVAしかできなかったからじゃなくコミュ障だから
一定時間アイドルになったことを知るにはどうすればよいのだろう。 アイドルになったことを知るのは、 mq = Looper.myQueue(); mq.addIdlehandler(hdr); でわかるんだが、操作/表示が終了して0.5秒間アイドルである ってことが知りたいのだが...
はー やっとWidgetに置いたButtonのBackgroundを ソースから動的に変更できたよ。 Activityの時と作法が違い過ぎて大変。
はい
0.5秒って・・・それアイドルと言えるのか? 一瞬何も操作されていない瞬間ってイメージしかわかないんだが・・・・
887 :
827 :2013/03/01(金) 01:52:14.84
>>886 違うな
あいつはお前を盆踊りさせたんだ
Androidで簡単なゲームを作っています。 LinkedListのListIteratorを取得してループを回しているんですが、 ListIterator iter; while(true) { for (iter = list.listIterator(); iter.hasNext();) { (削除や編集の処理) } } 実際はもっといろいろありますが、ざっくりいうとこのようにwhileループで1フレーム毎に処理を回している状況です しかしiter = listIterator();の部分でallocationが起こり、処理が一気に遅くなってしまいます allocationを起こさずにListIteratorを使う方法、もしくはListIteratorの代替になるような方法はないでしょうか? 内容(int)を読み込みながら編集して、さらに期限の過ぎたものは削除していく、という部分です 削除があるためにArrayListを使うのをためらっていて、かといってLinkedListだとiteratorを使わないと読み込みの処理がかなり遅いようなので困っています listIterator()をループ外でおこなって、それを使い回すことはやっぱりよくないですよね?
以下のうち、削除してもよいアプリはどれ? 1.電話帳(google) 2.電話/SMS用ストレージ 3.電話 4.連絡先詳細 5.連絡先インポート 6.連絡先 7.設定 8.本体連絡先 9.カレンダーの保存 10.カレンダー 11.Googleカレンダーの同期 12.Gメール
>>888 遅いのは多分そのせいじゃなくてint値の出し入れの際のボクシングのせい
Integerを使わないでクラスか長さ1の配列に入れて容器を使い回すようにする
それから少々削除や挿入が発生したとしてもほとんどの場合ArrayListの方がずっと速い
>>889 いいことを教えてやろう
そんなことアプリ開発者は知らん
アプリを作る側にとってAndroidは自分のアプリを動かすための実行環境にすぎず、他のアプリなど知ったことではない
作る側の意見として言えることはむしろ、デバッグが面倒になるから変なカスタマイズはやめてくれということだ
>>890 ありがとうございます、そこも改善できるんですね
ただ遅くなる原因が「GC_FOR_ALLOC」なので大本はallocationにあると思います…
trackerも確認しましたがlistiteratorの部分だけで数秒で数百個ものリストができていました
結局別の方法で処理を行うことにしたので、これからはListIteratorをなるべく使わないようにしていこうと思います
>>889 使うならどれも必要
使わないならどれも消してOK
オブジェクトの有効・無効のリンク方法で悩んでます。 <linearlaout> checkbox1 button1 textview1 ... </linearlaout> ってレイアウトがあってチェックボックスが有効・無効になったら それにリンクして以下のbutton, texview, ...を同じ状態にしたいです。 checkbox1のsetOnClickListenerからチェックボックスの状態を調べて 他をすべてその状態に合わせればいいのですが、ネストが深くなると面倒です。 checkbox1の状態をリンクさせて、状態変化はできませんか?
>>893 マジっすか?
1個でも消したら、システムおじゃんにならないっすか?
白ロムなので、電話は情報詳細をみる以外につかってはないんです。
カレンダーはジョルティ、電話帳は電話帳R、メールはドロイドメール、SMSはHeyWireがあって、
機能重複アプリと、電話アプリの常駐を減らしたく・・・・
>>895 だからスレ違い(ってか、板違い)だってば。
無視すれば良いだけなのに。
すんません、プロの意見を聞いてみたいんです
>>898 プロの意見?1つたりと消すな貧乏人、という回答しかされないと思われ。
>>898 >>891 も言ってる通り、ここにいるのはアプリを作る方のプロかもしれないけど、使う方のプロではないよ。
自分が作ったアプリや、ソースが公開されてるアプリに関しては消していいとか駄目とか言えるけど、
それ以外のアプリに関しては何とも言えない。(そもそもAndroid使ってなかったりして…。)
> (そもそもAndroid使ってなかったりして…。) うむ。 俺とか、そうだ。 Androidのアプリも作ってるけどぶっちゃけ普段使ってるのはiPhoneだから Androidの使い方のコツとか他のアプリのことはあんまりシラナイ。
>>895 そこにあげてるアプリたちが標準アプリの機能を読んでないか分からないから分からん
一般的なタスクキラーって、トップのスタックだけ殺される仕様? 全部殺されると思ってたら、肝心のところでonNewIntentされない。いらないスタックがトップに回っちゃってるっぽい。
タスクキラーって節電とかに効果あるもんなの? 気のせいのような気がする。
>>903 プロセスまできっちり殺せるAPIは使えなくなってる
assetsの中身をレイアウト用xmlから直接読み込むことはできますか? フォントを変えたいので、調べたんですが、コードからの指定方法しかわかりませんでした。 コードからだといちいちTextViewを取得してassets読んで……となり、メンドクサイです どなたか解決策知りませんか?
残念ながらxmlからassets参照はできませぬ
>>908 そうなんですか……
他にフォント変える方法とかありませんか?
>>906 ありがとうございます。
無理やり自前で実装します。
>>874 です
>>876 getSharedPreferencesでファイル名をSDカードの絶対パスに指定すると
FILE /mnt/sdcard/.../file.xml contains a path separator
ってエラー出て終了します
結局、getSharedPreferencesはアプリケーションのroot以外は指定できないんですかね?
そうなると複数のSharedPreferencesを複数のアプリケーションで共有することが難しい・・・
SharedPreferenceってそもそもアプリパッケージ内保存されるものかと パッケージ名と共有モード変えれば他アプリからも参照できるけど 独自環境にしたいんだったら自分でXML好きなとこに吐き出したらいいんでない?
>>912 xmlを好きなところに出力することはできるんですけど、
その出力された複数のxmlファイルを別のアプリケーションで選択し、SharedPreferenceで読み込みたいです。
今のところ、
構成ファイル工場→いくつかの構成ファイルを生成
→保存されているxmlファイルの一覧(xmls.dat)ファイル更新
その他のアプリ →構成ファイルをxmls.datの中から選択してSharedPreferenceで読み込む
ってやろうかなとは考えていた次第です
>>913 作る側でpreferenceのxmlをsdにコピーして
読み込む側でsdにコピーしたxmlをdata領域に移動させてpreferenceで読み込めばいい
>>914 あーなるほど。
FileInputStreamで読み込んで、
FileOutputStream file = context.openFileOutput("〜〜〜", Context.MODE_PRIVATE);
BufferedWriter out = new BufferedWriter(new OutputStreamWriter(file));
out.write(読み込んだデータ)
みたいにやって保存していくんですね
ありがとうございます やってみます
そんなことしなくてもPreference書くときに他のアプリからも見れるように指定して 他のアプリからはCreatePackageContext?かなんかでContext作ってそいつ指定してやれば見れる
>>916 他のアプリケーションからxmlファイルの一覧が取得できれば
おっしゃるとおりの方法が一番楽な気がします。
が、それができるかわからなかったので
>>913 の方法か、それ以外よい方法が聞きたかったんです。
>>917 ん?そもそも共有させようとしてる大元のファイル名を君は知ってるんだよね?
それも分からないのに他からみたいって言ってもそりゃ無理だろとしか言いようがないんだけど
919 :
デフォルトの名無しさん :2013/03/02(土) 11:27:03.51
READ_CONTACTSの権限なしで
(ユーザーが指定した人の)メールアドレスを
取得したいのですが、可能でしょうか。
名前と電話番号は下記の方法で取得できましたが
こちらを参考にして色々とググってみているのですが
メールアドレスの取得方法が分かりません。
http://www.taosoftware.co.jp/blog/2012/08/ READ_CONTACTSの権限が必要な
取得方法なら沢山みつかるのですが。
宜しくお願いします。
920 :
919 :2013/03/02(土) 11:41:25.67
ちなみに、 intent.setType(Phone.CONTENT_ITEM_TYPE); を intent.setType(Email.CONTENT_ITEM_TYPE); に変更すれば、 名前とメールアドレス(電話番号は無し)が取れるかと思いましたが、 アプリケーションの選択ダイアログは表示されず、 ESファイルエクスプローラー が起動してきました。 Androidの設定 - アプリケーションの管理 からESファイルエクスプローラーの設定を見てみても、 「デフォルトでの起動」の設定は「設定されていません」になっています。
エミュレータでやっても同じだな。 Phone.CONTENT_ITEM_TYPEだとContactsが起動し、 Email.CONTENT_ITEM_TYPEだと「対応してるアプリないよん」となる。 どういう処理されてるんだろうな。
対応するアプリが1個しかない場合はアプリの選択も出ないし、デフォルトの起動にも設定されないよ
どういう処理って、インストールされてるアプリ全部の AndroidManifest.xml の <intent-filter> から文字列的に一致するのを探してるだけよ Phone.CONTENT_ITEM_TYPE は "vnd.android.cursor.item/phone_v2" Email.CONTENT_ITEM_TYPE は "vnd.android.cursor.item/email_v2" 実際に一致するアプリが1個だけあればそれが起動するし、複数あれば選択ダイアログが出るし、無ければ起動できない
つまりContactsアプリは Email.CONTENT_ITEM_TYPEに対応していないのか。 酷い話だな。
926 :
925 :2013/03/02(土) 18:40:38.73
原因が分かりました。 新しいアプリの優先インストール先が microSD になっていました。 アプリを端末に移動したところ、ウィジェット一覧に表示されるようになりました。 以上です。
仮想デバイスのネットワークをホストPCのネットワークにブリッジさせるような方法ない?
928 :
919 :2013/03/02(土) 19:21:25.59
>>921-924 レスありがとうございます。
READ_CONTACTSなしでメールアドレスの取得は難しそうでしょうか。
なんのためのセキュリティだよ
ご相談です。よろしくお願い致します。 notificationのPendingIntentから起動したMainActivityについて、 遷移で廻り巡ってonNewIntentを呼びたいのに、MainActivityがonPauseやらonStopされません。 ランチャーアイコンからの通常起動の場合のフローは下記です。 MainActivity(ユーザーのデータ入力)- service(foreground)- Broadcast- Mainactivity(cast結果を受けてonNewIntent内でUI処理、表示変更) の順です。 一巡目の通常起動ではちゃんとonNewIntentされます。 が、アプリがキルされると起動時に初期状態のMainActivity表示になってしまうので、 二度目以降の起動を判断し、保存されたユーザーの入力情報を元に前回の処理後のMainActivityと同じ状況に見せるため 自動的に上記フローを回すようにしています。 なのですが、この「二回目の起動」の際、notificationから起動した場合、MainActivityがstartServiceしえもonPauseされないのでonNewIntentも呼ばれません。 notificationの起動から観測するとonCreate,onstart,onResumeはされますが、サービスに移ろうともonPauseなどされません。 マグロ状態です。 「二回目の起動」でも、ランチャーアイコンから起動された場合は サービスに移行時にonPause,onStopされるのでonNewIntentできます。 ただ、起動の仕方が違うだけで、コード的な処理は全く同じです。 notification、PendingIntentからの起動の時にactivityをマグロにしないにはどうすれば良いのでしょうか? 宜しくお願い致します
すみません。サービス以降時はonStopは呼ばれません
932 :
デフォルトの名無しさん :2013/03/02(土) 20:49:08.58
eclipse使ってるんだけど、ソースを書き換えたら、既に起動しているエミュを再起動しないとだめなんけ? 再コンパイルした結果だけを流し込むとかむり?
サービスに移るって意味不明 サービスはバックグラウンドで動くもの アクティビティと違って画面ないから画面遷移とかないからpauseもしない onNewIntent呼びたいだけならonCreateとかからでも自分で呼べばいいんじゃない
>>932 エミュは起動しっぱなしでいいよ
eclipseからもっかい実行ボタンおせば更新される
実行毎に新しいエミュを起動しないチェックボックスがあったような気もする
>>929 じゃあなんで電話番号は取れるの?
Googleが認めているからだろ?
>>936 じゃあメールアドレスは認めてないんだろ
分からないならROMってれば良いのに。 俺みたいに。
EditTextを選択したときに IMEの「数字入力モード」が表示されるようにしたいのですが 可能ですか? ただし、数字以外の文字の入力も許可したいので、 InputTypeを number にはできません。
画面外からのアニメーションができません xmlファイルで下のように指定し、画面外Passという文字をからアニメーションさせたいんですが、出来ません。 画面内なら左から右に動くんですが、画面外になったとたん表示されません。 どうすればいいですか? <RelativeLayout android:layout_width="fill_parent" android:clipChildren="false" android:clipToPadding="false" android:layout_height="fill_parent"> <TextView android:layout_width="fill_parent" android:layout_height="fill_parent" android:id="@+id/info_bg"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" android:layout_toLeftOf="@id/info_bg" //ここ入れるとアニメーション出来ない android:text="Pass" android:id="@+id/pass_tv"/> </RelativeLayout>
>>941 マジですか
一応こんな感じのアニメーションです
TranslateAnimation pass_ta=new TranslateAnimation(Animation.RELATIVE_TO_SELF,0f,Animation.RELATIVE_TO_PARENT,0.1f,Animation.RELATIVE_TO_SELF,0f,Animation.RELATIVE_TO_SELF,0f);
>>942 俺もそんな感じの作って同じ質問したことあるから
ちょっとでも画面上にあればいいみたいだからレイアウトの中に動かしたいviewと透明なimageviewを入れて透明なimageviewが画面上に残るように動かせばいい
わからなかったらスマン
>>943 画面上に残るようにレイアウトを動かせばいいに訂正
まだ初めても居ないんだけど、教えてください 変な広告は、開発者が入れてるのですか?GooGleが入れてるのですか? また、その広告収入は開発者に入るのですか?
開発者が入れて開発者に入る
ありがとうございます。
948 :
デフォルトの名無しさん :2013/03/04(月) 00:57:09.92
スレ違いかもしれませんがアプリに有名人の画像とか使いたい場合どこに許可を取ればいいですか? あと使用するの無料な訳ありませんよね?
許可申請:所属プロダクション(事務所) 料金:時と場合による
写真やイラストだったら まずは撮った、もしくは描いた人だろ
OAuth2のリダイレクトURLって普通はonNewIntentで拾いますよね あれって他のアプリから読み取られてアカウントが乗っ取られる危険はないんですか? もしくは偽物のURL掴まされるとか。
webAPIとかからのレスポンスで返ってきたxmlをそのまま表示することって出来ます?
954 :
デフォルトの名無しさん :2013/03/04(月) 14:47:07.35
>>952 Twitterの垢ハックがそれでやられてる。
>>954 ConsumerKeyはどうやって漏れたの?
同じクライアントアプリならConsumer Keyは同じなんだから、知らなくてもなりすましはできるよ しかしサーバー使わないクライアントのみのアプリだとConsumer Keyすら丸見えなわけだが どうするのがいいんだろうな
958 :
デフォルトの名無しさん :2013/03/04(月) 15:41:27.28
>>956 多分アプリ製作者側が暗号化してなかったっぽくて逆コンパイルしてそのまま読まれたんじゃないかって書いてあったぞ。
どっちにしろそのうち仕様変更くるだろうな。
暗号化しようが結局クライアントで復号化してるんだから見ようと思えば見られるぞ サーバーなしでクライアントトークンを隠すのは原理的に不可能だと思う
>>942 皆さんありがとうございます
結局visibilityをいじって作りました
ただ、謎な動きをします
TranslateAnimationをすると、visibilityをinvisibilにしてもアニメーション中だけvisibilityが無視されて、普通にアニメーションが表示されました。
また、 Translateアニメーション中にvisibilityを変更しても変更されないみたいです。
ですが、AlphaAnimation中にvisibilityを変更するとちゃんと反映されます。
こういう仕様なんでしょうか?
不可能ではないよ。かなり難しいとは思うけど。 発想を「見せない・隠す」から「見られても問題ない状態」に変えることが重要。 これをやってのけてるのがPCで使われてるパスワード付き圧縮ファイルや 各種暗号化アルゴリズム 興味がある人は暗号化アルゴリズムのソース拾ってきて見てみるといいかも ソースと鍵わかっていても解析できない構造になってるぜ 最初見た時、ほぉーーー!よく考えたもんだなと感動したよ
ごめん、
>>20 しか読んでないど素人だけど、AtoZってそんな良書なの?
ほかにもこんなんあるぞっての教えてくれたらありがたい。
Canvasと複数のBitmapを表示させるプログラムを作成しております(canvas.drawBitmap(..., paint))。 Bitmap(1)とBitmap(2)の表示領域が被った場合に両者の色をマージさせる方法はありますでしょうか。 例えば、被ってしまう領域において、Bitmap(1)は白一色で、Bitmap(2)の画像のみを表示させるようにしたいです。
そのへんを paint 引数で指定するんだと思うけど Paint#setAlpha とか Paint#setXfermode とか
>>963 png形式に透明色というものがあるので、それを白一色の部分に用いるといいかも
966 :
963 :2013/03/04(月) 19:48:39.44
>>961 認識ズレてるよ。
クライアント側で大元のキーをどこかのタイミングで扱う以上
隠すのは不可能だっつーの。
暗号化とか奥にしまってるだけだろ
>>967 認識ズレてないよ?
今はもうほとんど使われて無いけど
DESのアルゴリズムソースプログラム見てみると
俺の伝えたい事分かってもらえるかと
キーを隠すんじゃなくて
見られても大丈夫なキーにするんだよー
そして複合化プログラムの方も
ソースが見られても解析できないソースにするのよー
そんな事できるわけないとおもうだろ?俺もそうだった
でもそんな魔法のような事ができるんだ
chromeのアプデでurlスキームがhttp以外はアクセスできないようになってるな OAuthのcallbackでエラーになる で自分のトークン丸見えw
>>968 最終的に複号して平文をURLに連結してリクエストするんだぜ?
バレないわけないだろww
ウィジェットについてググって調べていると、 WidgetのonUpdateの中でServiceを呼び、 処理はサービスの方に書いているブログがいくつか見つかります。 思い処理を行う場合は、そのようにする、と書かれています。 ですが、よくあるタスクキラーアプリなどで Serviceはどんどん殺されるこの時代では、 サービスが殺されてしまったらウィジェットは動作しなくなって しまうのではないでしょうか? 皆さんはどのように回避しているのですか?
972 :
967 :2013/03/04(月) 21:50:31.71
最悪Android自体を弄って適当なAPIの呼び出しをフックしてやれば確実に抜けるな
OAuthでいうコンシューマ側にも解読できないっていうオチですね^^
twitterの仕様変更が原因なのにアプリのせいにされて星1とかひどいよな twitterクライアントアプリも終わりかな さすがに15分で15リクエストは少なすぎだと思うわ
>968 認識が15年以上ずれてるw
>>971 何でタスクキラーに合わせなきゃいけないんだよアホか
>>978 答えられないならROMっていれば良いのに。
俺みたいに。
978の意見は正しいように思うなあ
インストールされているアプリの一覧を取得したいのですが PackageManager pm = getPackageManager(); List<ApplicationInfo> infos = pm.getInstalledApplications(PackageManager.GET_META_DATA); このやり方が一般的かと思われますが、取得完了までに時間がかかってしまいます 他のアプリの中には一瞬で表示されるものがあります。 dbなどでキャッシュをとっているものと思いますが、新しくインストールしたものや消したものがある場合 上のやり方でアプリ一覧全体を取得して、キャッシュがあるか一個ずつ比較しないと追加、削除できず 結局全回しすることになり遅くなると思います。 どのようなやり方でやるのが一番早くアプリ一覧を取得できるのでしょうか?
・タスクキラーで殺されてるんだったらユーザは更新しなくてもいいと思ってるんだろうから更新しなくてもいい ・onStartCommandで何か適当な値返しておけばタスクキラーで殺されても復帰できる お好きな方をどうぞ
>>981 インストール時、アンインストール時に飛ぶBroadcastがあるはず
サービスは設定したidでないと完全にkillできないから タスクキラーでkillしても復活してくる。 これがゾンビアプリと呼ばれるというわけ
>>982 前者にレスだけど、
「ユーザーは更新しなくてもいいと思ってるんだろうから」
って本気でそう思っているの?
Android端末を持つユーザーが
そんなこと意識しているとはとても思えない。
READ_CONTACTSとかだってスルーしてインスコ上等だろ。
>>985 意図して止めてるのかどうか分からないんだからそれに従うしかないでしょ
>>986 逆に訊くけど、どう表示されるって言うんだ?
ICSのデフォルトだとActionbarの下に青い下線が表示されると思うんだけど あれの色を変えることってできるの?
サイトからアプリにデータを渡すってできますか?
992 :
デフォルトの名無しさん :2013/03/05(火) 02:23:10.04
PullToRefreshListView使ってTwitterクライアントっぽい表示をさせてるんだけど、スクロールするとどうしてもアイコンがちらつく。 もちろん「ListView ちらつき」でググッた結果setScrollingCacheEnabled(false)は発見したんだけど、PullToRefreshじゃ設定できない。 XMLにandroid:scrollingCache="false"設定しても効果なし。 助けてエロイ人
993 :
992 :2013/03/05(火) 03:29:39.44
自己解決! アイコンのチラツキは別の原因だった・・・。
ああ、タスクキラーにはあわせる必要ないでしょ Windowsで言うところのタスクマネージャーで落とせない・効かないソフトなんて 迷惑なだけだろ? こういうことさ
アンドロは糞 糞のスレageんな
はあ?
Hige.hige("Log.v(TAG,\"msg\");"); とかやるとLog.v(TAG,"msg");を実行できるのってありませんか?
糞スレ終了 次スレは立ちません
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。