Androidプログラミング質問スレ revision53 [無断転載禁止]©2ch.net

このスレではAndroidSDK・NDKやAndroidマーケットに関する質問を扱ってます。

※プログラミング自体が初めて!なあなたには↓↓↓こちらへ
スレ立てるまでもない質問はここで 144匹目
http://echo.2ch.net/test/read.cgi/tech/1473241397/
Eclipse統合M35【Java/C++/Ruby/Python/Scala】
http://echo.2ch.net/test/read.cgi/tech/1405391739/
★★Java質問・相談スレッド179★★
http://echo.2ch.net/test/read.cgi/tech/1476706523/
****オススメ関連リンク****
■ TechBoosterhttp://techbooster.org/category/android/tableofcontents/
■ Androidメモhttp://www.saturn.dti.ne.jp/npaka/android/index.html
■ 逆引きAndroid入門http://www.adakoda.com/android/
■ Androidプログラマへの道http://wiki.livedoor.jp/moonlight_aska/
■ Android Wiki*http://wikiwiki.jp/android/

****公式リファレンス****
■ Android developershttp://developer.android.com/index.html
■ ソフトウェア技術ドキュメントを勝手に翻訳http://www.techdoctranslator.com/
■ 日本Androidの会http://www.android-group.jp/
■ StackOverFlowhttp://stackoverflow.com/questions/tagged/android

****前スレ****
Androidプログラミング質問スレ revision51
http://echo.2ch.net/test/read.cgi/tech/1457303564/
Androidプログラミング質問スレ revision52
http://echo.2ch.net/test/read.cgi/tech/1479305887/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured

>>1

>>1
よくやった!

rxでリアクティブプログラミングできない奴は
この先生き残れないからな覚悟しておけ!

5デフォルトの名無しさん (ワッチョイ 533c-JtgB)2017/02/25(土) 20:14:45.06ID:OKJhVtjh0
質問します
今unityでAndroidアプリを作ってるんですけど
あるアセットを使ったところこの様なマニフェストが生成されました
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.GET_TASKS" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="com.android.vending.CHECK_LICENSE" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<uses-permission android:name="com.unionassets.android.plugin.preview.permission.C2D_MESSAGE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />

俺はこのアセットのリーダーボードとadmobの機能を使ってるんですけど実際に実機でビルド
させたところ何故か「写真やメディアへのアクセス許可」と「連絡先への
アクセス許可」というダイアログが出てしまいました
このマニフェストの中にはその様なものはないと思うんですけどどうでしょうか?
「このパーミッションが影響している」というものはあるのでしょうか?

使っているライブラリでパーミッシヨン要求してる

7デフォルトの名無しさん (ワッチョイ 533c-JtgB)2017/02/25(土) 20:37:14.97ID:OKJhVtjh0
>>6
返事ありがとうございます
それだと俺の腕ではよくわからないですね
ちょっとしばらく検索してみます

retrolambdaみたいなOSSのgradleプラグインを使用する場合、アプリにライセンス表記はいるのでしょうか
ライブラリがapkに入るわけではないから不要ですかね
わかる方いますか

それは「gccでコンパイルしたプログラムはGPLにはならない」というのと同じ話かと。
そのプラグインがおかしなライセンス設定していなければだけど。

10デフォルトの名無しさん (ワッチョイ 4aaf-JoRT)2017/02/28(火) 22:05:18.33ID:Fgmp32cf0
Design support library使ってNavigationDrawer作ると枠が出るのですが仕様でしょうか
Android4.1.1だと出て6.0だと出ない
http://i.imgur.com/hBhuS6m.png

11デフォルトの名無しさん (ワッチョイ a34f-BsB8)2017/03/01(水) 10:46:05.72ID:q8QPPPXs0
スマートフォンのdp解像度で画面配置をすれば大抵のスマートフォンで大体同じ位置に来るんだろうけども、
タブレット向けdp解像度(960x600dp)で画面配置したら、
スマートフォンで動作させた時に画面に全部入らなくなりますか?
http://qiita.com/nein37/items/3918f5833bfa31fbe3d5

12デフォルトの名無しさん (スップ Sdaa-tvpq)2017/03/01(水) 12:20:50.54ID:6pnFK8Jrd
レイアウトによってはそりゃなるだろう
なにを聞きたいのかわからん

13デフォルトの名無しさん (ワッチョイ 8b42-BJNc)2017/03/05(日) 08:47:16.40ID:ePMet4eF0
Android studio更新したらデフォルトのルートレイアウトがconstraint layoutになってるわけだが
お前らconstraint layout理解した?

クイズのアプリを作ろうとしていて、

"回答"というボタンをタップすると、正誤と解説表示し、
"回答"ボタンを"次の問題へ"というボタンに差し替えようとしています。

この場合、

 方法@"回答"ボタンのリスナーの挙動やテキストを書き換える

 方法A最初から二つのボタンを作っておいて、表示・非表示を切り替える

どっちが一般的でしょうか?
もしくはそれ以外に良い方法があったら教えていただきたいです。

正誤と解説をどのように出すか次第だし、ボタンも同じ方針にすれば良いだけでは?

1614 (アウアウオー Sabf-BJNc)2017/03/05(日) 22:54:12.42ID:iuMLooDFa
>>15

ありがとうございます。

解説の表示・非表示を切り替えることが思いのほか大変だったので
解説も"次へ"のボタンもダイアログに表示することにしました。

17デフォルトの名無しさん (JP 0H2f-BJNc)2017/03/06(月) 09:02:38.27ID:LelUtlXwH
>>16
前に簡単な問題アプリ作ったときは
回答欄をVISIBLE.GONEにしておいて都度切り替えてやったよ

18デフォルトの名無しさん (ワッチョイ 6bf8-2BvX)2017/03/06(月) 11:32:44.95ID:hNpf6v840
>>14
画面をまとめて切り替えるなら
FrameLayout
├RelativeLayout/match_parent
│ ├TextView(問題)
│ ├RadioButton(回答選択肢1)
│ ├RadioButton(回答選択肢2)
│ ├ :
│ └Button(回答)

└RelativeLayout/match_parent
  ├TextView(正誤)
  ├TextView(解説)
  └Button(次の問題へ)
として、(重なっている)二つのRelativeLayoutをVISIBLE/INVISIBLE切り替える
LayoutをINVISIBLEにすれば、その子もINVISIBLEになる

1916 (オイコラミネオ MM7f-prdN)2017/03/06(月) 23:01:48.39ID:0gVC6aC4M
>>17
ありがとうございます。
焦らずにもう一回考え直してみます

>>18
ご丁寧にありがとうございます!
Visibleの切り替えだと、空白が出来てダメだと思ったんですが自分のやり方が悪かったようですね。
やり直してみます。

20デフォルトの名無しさん (ワッチョイ 8b42-BJNc)2017/03/06(月) 23:15:10.29ID:OLRZivRg0
gone

21デフォルトの名無しさん (ワッチョイ 0742-2hGO)2017/03/09(木) 22:16:19.01ID:K4JzVPHG0
みんなdroid kaigi参加した?

シゴトシゴトシゴトダヨ

23デフォルトの名無しさん (ワッチョイ 0742-2hGO)2017/03/09(木) 23:08:03.54ID:K4JzVPHG0
stethoって何て読むん

24デフォルトの名無しさん (ワッチョイ 7f45-2hGO)2017/03/09(木) 23:40:51.87ID:kdsVwaqy0

カタカナで書けよ

イヤデス

27デフォルトの名無しさん (スップ Sdb2-fiD0)2017/03/10(金) 21:35:35.08ID:tZih0X2dd
随分とかそったね
どうしたん

28デフォルトの名無しさん (ワッチョイ 0742-2hGO)2017/03/11(土) 21:17:30.59ID:g3v1A/if0
AlarmManagerで10分後にセットした後、端末の時刻を10分後に設定したら、
即alarmが実行されるのが正しいんでしょうか?
それともやっぱり10分後にalarmが実行されるんでしょうか。

29デフォルトの名無しさん (ワッチョイ 07ba-fiD0)2017/03/11(土) 21:18:29.27ID:6cSR8R+I0
>>28
即です

30デフォルトの名無しさん (ワッチョイ 0742-2hGO)2017/03/11(土) 21:26:01.59ID:g3v1A/if0
ってことは時刻を変更したことをbroadcastでonReceiveしてalarmを消したあとに再度設定しないさないといけないってことですか?

31デフォルトの名無しさん (ワッチョイ 07ba-fiD0)2017/03/11(土) 21:30:11.29ID:6cSR8R+I0
うーん
そもそもalarmmanagerはタイマー出はなくアラームなので時刻で発火するものだからね
どうしてもalarmmanagerで経過時間で発火させたい=プロセスを起床させたいならその方法しかない
プロセスが生きてる前提ならタイマーとかhanderでやったほうがいい

32デフォルトの名無しさん (ワッチョイ 0742-2hGO)2017/03/11(土) 21:44:41.06ID:g3v1A/if0
あ、駄目だ。
broadcastでonReceiveする前にalarmが発火してしまう
プロセスが死んでいてもやりたいんですよねえ。

33デフォルトの名無しさん (ワッチョイ 07ba-fiD0)2017/03/11(土) 21:47:30.86ID:6cSR8R+I0
あら、そうなっちゃうか
exactじゃない方のapiならそこまで瞬間的に発火しないと思ったが

仕様を見直そう^^

@SQLiteの作成時にテーブルを作成する処理を記述

A後になってテーブルを追加するけど、SQLiteを作成する処理が走らず、テーブルが作成されなくてハマる


というのうも過去何度も繰り返しております。
使用するテーブルを最初から全部考えておけば済む話ですがなかなかうまく行きません。

どうやって処理してますか?

・毎回アンインストール&再インストールしてSQLiteを再作成する
・SQLiteを毎回作り直す処理を書く
・"No such table"の例外を拾ってテーブルを作成する処理を書く


毎回アンインストール&再インストールしておりますが、
なんか無駄を感じます。

35デフォルトの名無しさん (ワッチョイ 323c-ZZsN)2017/03/12(日) 13:02:22.51ID:T4N3k6YJ0
テーブルを追加する処理が確実に走るようにするじゃないの?
onUpgrade()

36デフォルトの名無しさん (ワッチョイ e30f-p5Is)2017/03/12(日) 13:39:26.26ID:utfsstCu0
DBのバージョン上げればonUpgrade呼ばれたよな確か

37デフォルトの名無しさん (ワッチョイ 7252-jJqA)2017/03/12(日) 19:44:27.64ID:WjKhORQs0
よくあるサンプルだと、onUpgradeは DROP TABLE して onCreate呼んでるだけだよな
でも普通はユーザのデータ消したくないからDBのバージョン比較して
ALTER TABLE 〜 ADD COLUMN とかしないとダメだよね
よく探せばそういうサンプルもけっこうある

>>34はDBのバージョンすら上げてなさそうだが

>>32
ELAPSED_REALTIME_WAKEUPは?

39デフォルトの名無しさん (ワッチョイ 3385-SJUV)2017/03/16(木) 07:01:11.02ID:HfF6U4gS0
重い腰を上げてAndroid データバインディングを勉強し始めて2日目で、
.NETのデータバインディングと比べて色々不満があるが、今のところの一番気になる
点はMenuはデータバインドできないの??

通常のビューはデータバインドしてメニューは今まで通りの手動とか
混在コード書かなきゃいけないの??

データバインディング、MVVM、Rxは今や常識だからな
知らないのは恥ずかしいこと

41デフォルトの名無しさん (スプッッ Sd17-nPNM)2017/03/16(木) 09:06:07.42ID:tY3h0g4Cd
仕事でRx使ったら読めないとクレームきたでござる

42デフォルトの名無しさん (ワッチョイ ef5b-ChYx)2017/03/16(木) 12:11:59.57ID:SwJvykSg0
>>39
現状は無理です
.NETと違って設計段階でbindingを考慮してなかったからな
同様の意見は多数出てるからそのうち対応される可能性はあると思うよ

43デフォルトの名無しさん (オッペケ Sr97-i4qJ)2017/03/16(木) 12:20:18.21ID:nh3oPWeBr
暗黙的インテントでstartActivityを投げる時
出てくるアプリケーションのリストをキャンセルした際のリスナーって無いのでしょうか?

44デフォルトの名無しさん (ワッチョイ 3385-SJUV)2017/03/16(木) 14:14:20.78ID:HfF6U4gS0
>>42
現状は無理ですか。しょぼーんですね。

ありがとうございます。

45デフォルトの名無しさん (ワッチョイ bf0e-ajdi)2017/03/16(木) 22:58:12.66ID:K99AdbM30
結果が欲しけりゃstartActivityForResult

46デフォルトの名無しさん (スププ Sddf-gIrG)2017/03/17(金) 12:53:11.98ID:8UrI+HMCd
MPAndroidChart の LineChart を2つ使って線グラフを2つ描いているのですが、この2つのグラフの拡大・縮小、上下左右移動を連動させることは可能でしょうか?

一方を右にスライドさせるともう一方も同様に右にすらいどされ、常に同じ位置を表示している感じです。

47デフォルトの名無しさん (ワッチョイ 5342-tpgq)2017/03/18(土) 11:29:13.02ID:290jQTBd0
buildTypeとflavorを使ってビルドを分けることはできたんですが、
もう一階層作って3階層でビルドを分けたいんですができますか

48デフォルトの名無しさん (ワッチョイ 53ba-nPNM)2017/03/18(土) 11:40:49.17ID:6b/Lj0PJ0
できません

49デフォルトの名無しさん (ワッチョイ bf52-8FG5)2017/03/18(土) 15:07:46.02ID:OiEZtCVC0
>>47
ぐぐれ Flavor Dimensions

50デフォルトの名無しさん (ワッチョイ 5342-tpgq)2017/03/18(土) 17:53:25.02ID:290jQTBd0
dependencies{ }の中で、
flavorによってcompileするライブラリを条件分岐で切り替えたいんですが
どうやったらいいですか

51デフォルトの名無しさん (ワッチョイ 5342-tpgq)2017/03/18(土) 18:03:32.55ID:290jQTBd0
できましt

52デフォルトの名無しさん (スプッッ Sddf-ChYx)2017/03/18(土) 18:24:08.44ID:LqilER9ed
ならかけよ

53デフォルトの名無しさん (ワッチョイ 5342-tpgq)2017/03/19(日) 09:52:58.01ID:LoFd5DSt0
C言語の#ifdefみたいなのってできないんすか
importの部分をビルド設定で有効にしたり無効にしたりしたいです!

54デフォルトの名無しさん (ワッチョイ ef44-i4qJ)2017/03/19(日) 10:49:43.49ID:/R7/Uotw0
できないよ!

ndkとか使えばできるかもだけど

55デフォルトの名無しさん (ワッチョイ 53ba-nPNM)2017/03/19(日) 10:59:27.30ID:93Gn7GG90
フレーバーでソース分けるしかないね

56デフォルトの名無しさん (ワッチョイ 73f8-12+v)2017/03/19(日) 12:08:47.39ID:a7WIdHJn0
このところ毎日のようにGoogle製アプリが更新されているけど何事?
同じアプリが何度も更新されているのもあるようだし・・・

57デフォルトの名無しさん (ワッチョイ 5342-tpgq)2017/03/19(日) 15:47:48.14ID:LoFd5DSt0
ソース毎で分けたら同じソースが2か所に配置されて一か所修正したらもう一方も修正しないといけなくなるじゃないっすかー
なんでプリプロセッサの機能を消したかなあ

58デフォルトの名無しさん (ワッチョイ bf0e-ajdi)2017/03/19(日) 20:13:33.37ID:/Kusk5u20
消してない
最初から無いだけ

・Webサーバを用意して、ユーザごとのデータを保管
・アプリ側でユーザ名とパスワードを入れて、Webサーバの自分のデータにだけアクセスを許可

という仕組みを作りたいんですが、どうやって作ればいいのか方向性が見えません。
ググってみると、AccountManagerなるものが出てきますが、アプリもサーバも自分で用意する場合でも使うものなのでしょうか?

60デフォルトの名無しさん (ワッチョイ bf52-8FG5)2017/03/19(日) 21:07:52.28ID:s3dEl3fs0
>>57
フレーバで切り分ける部分だけを別クラスに分離して、ファイル単位で分けるのが普通だよ
ifで分けるとかそれができないときの最後の手段

61デフォルトの名無しさん (JP 0Hb7-tpgq)2017/03/20(月) 09:24:15.04ID:gV5Vnu9FH
>>59
realmとかfirebase使えばいい

62>>61 (アウアウオー Sa1f-tpgq)2017/03/20(月) 11:52:02.10ID:1hDtask4a
ありがとうございます。
Firebaseの無料分で十分だと思うので調べてみます。

BaaSなるものがあることを昨日知りました。

とりあえずソースコードは共通クラスを作ってflavorでサブクラスを分けることでいい感じで分ける事ができたんですが、
レイアウトファイルはどうしたらいいんでしょうか
xmlにif文が書けたらいいんですが現状ほぼ同じファイルが2つできてしまってて、
一方を書き換えたらもう一方も書き換えないといけないです

できました

65デフォルトの名無しさん (ワッチョイ 53ba-nPNM)2017/03/20(月) 14:45:58.68ID:XcCZvFx20
ここはおまえの日記か

>>65
お前がしね

67デフォルトの名無しさん (ワッチョイ bf3c-I81+)2017/03/20(月) 16:09:25.11ID:d5aNJ3RN0
エスパー切れ

68デフォルトの名無しさん (ワッチョイ 537b-zQmZ)2017/03/20(月) 16:33:46.76ID:L1lapQ1z0
二度と出てけ

69デフォルトの名無しさん (ワッチョイ 53ba-nPNM)2017/03/20(月) 16:50:08.68ID:XcCZvFx20
二度と出てけ

二度と
(副)
〔否定表現と呼応して〕 その事は今回限りであって、 今後は絶対に△ない (しない) と言い切る様子。

出てけ
出ていけの省略口語。出るの命令形。

二度とは否定を伴うはずなので誤用ではあると思われるが、この場合、出ていかなかった事は今回限りにしろという言う意味になるはずなので次回ここに来たら出ていけという事になるのだろうか

考えれば考えるほど混乱し胸が苦しくなる言葉だ

70デフォルトの名無しさん (ワッチョイ bf17-AQHT)2017/03/20(月) 19:49:17.62ID:0i/2WiW90
二度とあることは三度とあると。

71デフォルトの名無しさん (ワッチョイ c30f-ygAD)2017/03/21(火) 01:21:44.67ID:kyidgKfj0
まれによくある

72デフォルトの名無しさん (ワッチョイ 53ba-nPNM)2017/03/21(火) 01:31:36.31ID:Zo5CVS0M0
二度と出ていけ

メダパニみたいな言葉だ

73デフォルトの名無しさん (ワッチョイ ea9e-w4Jc)2017/03/23(木) 00:06:41.31ID:DfbviLxH0
Inbox とかでドロワーで選択して、
フラグメントが表示されたとき、Toolbarとかの色が変更されるけど
あれどうやってやるの?

74デフォルトの名無しさん (ワッチョイ 2a0e-pnQU)2017/03/23(木) 10:03:44.61ID:Acv+joSL0
質問ですが、
listviewで下詰めで要素を表示するにはどうしたらいいでしょうか?

http://i.imgur.com/AYEDBQ1.png
こんな感じにしたいです。

誰得

76デフォルトの名無しさん (ワッチョイ be08-5sBS)2017/03/23(木) 14:24:47.77ID:yKi2Dcwm0
ブロック崩しを実装したいのでは

77デフォルトの名無しさん (ワッチョイ fee2-VHv+)2017/03/24(金) 00:20:52.42ID:jrKW4GX+0
ListViewの設定で下からってのがあるっしょ

78デフォルトの名無しさん (ワッチョイ 2a3c-LBHs)2017/03/24(金) 04:06:54.23ID:YH8WFND00
グラビティをボトムで下に寄ったような

79デフォルトの名無しさん (ワッチョイ 2a0e-pnQU)2017/03/24(金) 14:39:37.84ID:L7qJtEni0
>>77
すみませんが、もう少しだけ詳しく教えていただいてもよろしいでしょうか?初心者ですみません

80デフォルトの名無しさん (ワッチョイ 2a0e-pnQU)2017/03/25(土) 09:33:47.28ID:pam1EuaF0
listviewの件ですが
tablelayoutにして解決しました。
ありがとうございました

81デフォルトの名無しさん (ワッチョイ 931f-VHv+)2017/03/25(土) 10:46:12.34ID:y17BaUFc0
ならかけよ

82デフォルトの名無しさん (ワッチョイ 2a0e-pnQU)2017/03/26(日) 00:13:39.45ID:IOu/oMC+0
>>81
linearlayoutのgravityをbottomにしてその中にscrollviewをwrap_contentで置いてtablelayoutを入れただけです。

<linearlayout width=match height=match gravity=bottom>

<scrollview width=match height=wrap>

<tablelayout>
....
....
</tablelayout>

</scrollview>

</linearlayout>

こんな感じです。

83デフォルトの名無しさん (ワッチョイ e6cd-iasG)2017/03/26(日) 13:31:12.26ID:EMF+Fe9C0
それだと大量のitemを投下すると重くなる気がするけどいいのかな

84デフォルトの名無しさん (ワッチョイ 6679-yWxe)2017/03/26(日) 19:47:07.12ID:XA6YgUQb0
javaも書いたことないけどiPhoneアプリでオブジェクト指向やxcodeは大体使えるから
中級者向けの本が欲しいんだが何かいい本ありませんか

85デフォルトの名無しさん (ワッチョイ e6cd-iasG)2017/03/26(日) 20:03:16.58ID:EMF+Fe9C0
「黒帯エンジニアが教えるプロの技術 android開発の教科書」って本が結構良かった
比較的最近(2016/7)の本だし
開発するにあたって何に気をつけるべきかが(割と荒く)書いてある
1から10まで書いてないと気が済まないならおすすめはしないけど
これに書いてあることを足がかりに自分で調べられるなら役に立つと思う

86デフォルトの名無しさん (ワッチョイ aaa8-KZ3C)2017/03/26(日) 20:56:15.65ID:VeFFDo4V0
「黒帯エンジニアが教えるプロの技術 android開発の教科書」
の内容紹介の説明だけ見たけど、
中級者向けっていっても、>>84は基本的な事をすっとばしたいのか??

いきなり、マネタイズとかパフォーマンスとかマテリアルデザインとかより、
やっぱ基本的なアクティビティのライフサイクルから始まって、
フラグメントやビュー、ビューグループの各種コントール、ダイアログなど
そこらへんは他の環境で経験あっても勉強しないとまずいよーな。

87デフォルトの名無しさん (ワッチョイ 6679-yWxe)2017/03/26(日) 23:06:30.03ID:XA6YgUQb0
おおすまんな。本屋で読んでみるべ
今までゴリ押しで勉強してきたからなぁ。丁寧に順番守って勉強出来る自信がない。、

88デフォルトの名無しさん (ワッチョイ 7bd4-SVia)2017/03/26(日) 23:09:40.66ID:F32BgOXZ0
4年前初めてAndroidやろうとしたとき読んでみて分かりやすかったけど、いま見たら内容だいぶ変わってる、当時はエクリプスだったし

http://www.shuwasystem.co.jp/products/7980html/4853.html

89デフォルトの名無しさん (スップ Sdea-6g7I)2017/03/27(月) 09:07:54.10ID:9ObHSaYAd
>>87
日本語書籍を用いて順番守って学習しないと使えないことから抜け出せてプログラマーとしてのスタートラインだから素人の言うことを真に受けるな

90デフォルトの名無しさん (ワッチョイ 7ba8-0yGP)2017/03/27(月) 10:49:16.47ID:z+zFLGCJ0
おまえは日本語くらいしっかり書けるようになってからレスしろ

91デフォルトの名無しさん (ワッチョイ 2a25-n/U6)2017/03/28(火) 00:52:10.46ID:Id9SGXxW0
styleのitemに指定できる要素について質問させてください。

親要素に@android:style/Widget.Holo.TabWidget を指定した独自スタイルを作成し、
tabLayout要素を上書きしようとitemタグに「android:tabLayout」と指定したところ、
「No resource found that matches the given name: attr 'android:tabLayout'.」
とエラーが出てしまい指定できません。

マニフェストの指定ではminSdkVersion=15, targetSdkVersion=21としており、
ビルドターゲットにはAPI=23を指定しています。
上記スタイルはvalues(接尾辞なし)にあるstyle.xmlで指定しています。

AndroidSDK配下にあるapi15, api21, api23のattrs.xmlファイル全てに
<declare-styleable name="TabWidget">
<attr name="tabLayout" format="reference" />
の記述があるため指定できると思っているのですが、
何か不足している記述等ありますでしょうか

ご存知でしたらご教示いただけますでしょうか

92デフォルトの名無しさん (ワッチョイ ea7b-YuA+)2017/03/28(火) 04:29:25.59ID:wWPXElef0
privateなリソース(フレームワーク内部用)だから使えないようになってる
public.xmlにないやつはprivate

9391 (ワッチョイ 2a25-n/U6)2017/03/28(火) 21:02:55.39ID:Id9SGXxW0
>>92
今までの謎が解けました。
ありがとうございました。

アプリから呼び出せないリソースはandroidのソースツリーから直接頂いたことはある。

95デフォルトの名無しさん (ワッチョイ db3c-Uo23)2017/03/28(火) 21:47:37.92ID:l9W+KT9H0
/system/usr/keylayout/ACCDET.klってファイルって
有線イヤホンのボタン押下時のキーコード定義だと思うんだけど
これに定義されてる
key 163 MEDIA_NEXT
key 165 MEDIA_PREVIOUS
この辺ってイヤホンをどう操作したら入力した事になんの?
3ボタン付きのイヤホンで受話、ボイスアシスタント、音量操作とかは出来たけど、上記の奴がどうしても分からん…

96デフォルトの名無しさん (ワッチョイ 2a72-l3MH)2017/03/28(火) 23:27:22.93ID:i+xjcOCH0
次曲、前曲に飛ばすためのボタン。
サポートしてるイヤフォンならマニュアルに操作方法載ってる。

だいたいどれかのボタン二度押しになってるんじゃないか

97デフォルトの名無しさん (ワッチョイ db3c-Uo23)2017/03/29(水) 09:01:46.48ID:Z1JspANm0
>>96
サポートしてるイヤホンって何かある?
どちらにしても、普通の3ボタン式のイヤホンじゃ駄目か…

98デフォルトの名無しさん (ワッチョイ a6b4-kBvA)2017/03/29(水) 10:22:23.18ID:GwbhbF0S0
NestedScrollViewの中にRecyclerViewを入れると、
RecyclerViewにAdapterを設定したタイミングで
画面に表示されていない画面外のセル全ての
画像読み込み処理が実行されてしまってるんですが、
回避する方法はありますか

99デフォルトの名無しさん (ワッチョイ cf70-KZ3C)2017/03/29(水) 11:29:57.78ID:s6kw3xb10
>NestedScrollViewの中にRecyclerViewを入れると、
入れない、が正解。

じゃあ画面全体をスクロールさせたい場合は
adapter内でpositionによってレイアウトを分ける
みたいなことしないといけないんですか
面倒くさいんですけど

101デフォルトの名無しさん (ワッチョイ cf70-KZ3C)2017/03/29(水) 13:06:03.99ID:s6kw3xb10
ちがうちがう。
NestedScrollViewとRecyclerViewは、どっちもNestedScrollingChildのサブクラスで、
CoordinatorLayoutのchildとして機能するということだ。
これくらい、ドキュメントで調べろよ。

102デフォルトの名無しさん (スプッッ Sd4a-6g7I)2017/03/29(水) 13:25:02.64ID:wysGCAMZd
断る!

103デフォルトの名無しさん (ワッチョイ a6b4-kBvA)2017/03/29(水) 13:56:14.27ID:GwbhbF0S0
CoordinatorLayoutは使っていて、
その内側にNestedScrollViewを使っています。
その内側にRecyclerViewとその他のViewがいくつか配置していて、
画面全体を上下にスクロールさせたいんです。
なので、この場合は、NestedScrollViewを使わずにCoordinatorLayoutの子としてRecyclerViewを一つ入れて、
RecyclerViewの中にその他のいくつかのViewを配置しないといけないと思ったんで、
>adapter内でpositionによってレイアウトを分ける
>みたいなことしないといけないんですか
っていう結論になったんですが何か違ってますでしょうか

104デフォルトの名無しさん (ワッチョイ 2aa3-pqJl)2017/03/29(水) 15:30:45.55ID:1aUbts4F0
>>97
俺が持ってるのこれだけど
http://www.plantronics.com/jp/support/product/backbeat-go-2
音量ボタン長押しで曲送りだよ。

105デフォルトの名無しさん (ワッチョイ db3c-Uo23)2017/03/29(水) 18:13:21.22ID:Z1JspANm0
>>104
それはBluetooth接続のワイヤレスイヤホンだろ?
だったらAVRVP.klの方に定義してあるキーイベントだから違うなー。
有線イヤホンのマルチファンクションボタン連続押しによる機能分けも
アプリ側の実装っぽい。
ACCDET.klのやつは、とりあえず定義してあるだけの内容かな…

検証用のプロジェクト公開してくれたら試してみるかもしれない
試してみないかもしれない

107デフォルトの名無しさん (ワッチョイ 931f-VHv+)2017/03/29(水) 21:47:11.82ID:In7rY+WH0
常に最新OSが手に入れられるのってnexusとpixelだけなんすか

108デフォルトの名無しさん (ワッチョイ bf3f-MCV6)2017/03/30(木) 01:58:30.97ID:nQaxHjXM0
>>107
公式エミュレータ

109デフォルトの名無しさん (ワッチョイ bf3f-MCV6)2017/03/30(木) 01:59:19.24ID:nQaxHjXM0
>>107
公式エミュレータ

110デフォルトの名無しさん (ワッチョイ 5383-6H6Q)2017/03/30(木) 16:29:21.74ID:ZRdRJHeA0
NotificationListenerServiceを利用していて、startService()したあと、onStartCommand()が呼び出され、getActiveNotifications()を実行できる状態になっていることは確認できるのですが、なぜかonListenerConnected()やonNotificationPosted()がまったく呼び出されません。

マニフェストや通知へのアクセス設定に不備がない場合、何が原因なのでしょうか?

111デフォルトの名無しさん (ワッチョイ bf7b-fX8y)2017/03/30(木) 17:28:25.68ID:YXllQBX+0
permissionとintent-filter設定してないとか

112デフォルトの名無しさん (ワッチョイ ef79-oXBR)2017/04/02(日) 01:08:25.43ID:zvgxOihW0
oncreate内でtablayoutを作ってTabLayout.getTabAt(0).selectをしたんですが0番のタブがクリックされたときの処理がされませんでした
どこに(どのように)書けばいいんでしょうか?
viewpagerは使っていません

113デフォルトの名無しさん (ワッチョイ ef79-oXBR)2017/04/02(日) 04:41:59.60ID:zvgxOihW0
reselectedで自己解決
失礼しました

114デフォルトの名無しさん (ワッチョイ 933c-xboS)2017/04/05(水) 00:42:48.30ID:gVidujsA0
android6.0の端末で出てたログが7.0の端末だと出なくなったんだけどこの辺何か設定必要なんだっけ?
同じapkで出なくなったのはデバッグレベルのログ

>>114
出てたこと・出なくなったことはどうやって確認しましたか?

116デフォルトの名無しさん (スップ Sddf-ZkEF)2017/04/05(水) 22:19:36.46ID:RcS41rYJd
Oやばくね?
google頭いかれてんじゃね

117デフォルトの名無しさん (ワッチョイ d31f-agmj)2017/04/05(水) 22:40:31.26ID:IdFO7lAI0
ん?Picture in pictureぐらいしか目立つのはなかった気がするが

118デフォルトの名無しさん (スップ Sddf-ZkEF)2017/04/05(水) 22:44:25.29ID:RcS41rYJd
いやいや
バックグランドサービスが一切動かなくなるんやで
iOS並の糞OSに超絶デグレでうちの開発はパニック状態や

119デフォルトの名無しさん (ワッチョイ 933c-xboS)2017/04/05(水) 22:45:23.96ID:gVidujsA0
>>115
onCreateで各レベルのログ出すだけのアプリ作って6と7それぞれにインストール
6だとe,w,i,d,v各レベル出力できたけど7だとd,vのログがでない

120デフォルトの名無しさん (ワッチョイ d31f-agmj)2017/04/05(水) 22:53:46.39ID:IdFO7lAI0
どうせAndroidManifestにフラグを一つ追加したらオフにできるにきまってる

121デフォルトの名無しさん (スップ Sddf-ZkEF)2017/04/05(水) 23:01:26.12ID:oqPkxAA/d
>>118
あれはようするにサービス使ってるアプリはAPIレベル27以上は使うなというgoogle様のご意向だよ
googleが心から反省するまで26で止めればいいさ

122デフォルトの名無しさん (ワッチョイ d3a3-ZkEF)2017/04/05(水) 23:45:40.92ID:qywHDGAD0
androidはbackgroundで動けることが唯一の強みだったのにほんとバカだなよな
最近のgoogleは機能追加ではなくアプリに制限かけることしか考えてないわ

123デフォルトの名無しさん (ワッチョイ 071f-D6lx)2017/04/06(木) 00:28:42.89ID:sXLieVHV0
そもそもruntime permission対応したくないから23以上にしないし

124デフォルトの名無しさん (ワッチョイ f73c-APqU)2017/04/06(木) 00:42:47.48ID:oyVNkOtv0
background制限とかマジ勘弁
まーたお仕事が増える・・・

125デフォルトの名無しさん (ワッチョイ fb32-k44U)2017/04/06(木) 01:29:15.64ID:kJ8sCZUe0
foregroundのサービスなら大丈夫っぽい
そろそろforegroundはアイコンなしでできるようにしてほしい

126デフォルトの名無しさん (ワッチョイ 327b-vf3K)2017/04/06(木) 02:38:07.66ID:Ur+Lq6QH0
JobScheduler使えよってことじゃない

127デフォルトの名無しさん (ワッチョイ fb32-k44U)2017/04/06(木) 06:25:28.33ID:kJ8sCZUe0
Lollipopからってのはまだきついな

128デフォルトの名無しさん (ワッチョイ 723f-+TA9)2017/04/06(木) 07:41:59.86ID:vyfRyAmQ0
プログラムをプラットフォームのAPIべったりで書く奴は無能
backgroundサービスでもJobSchedulerでもどっちでも動くようにしとけ

129デフォルトの名無しさん (スップ Sd92-RfQI)2017/04/06(木) 09:04:24.97ID:sp2ENUYJd
サービスがプラットフォームべったりというならjobschedulerもべったりだろという

130デフォルトの名無しさん (ワッチョイ 723f-+TA9)2017/04/07(金) 05:08:42.80ID:GxIAMhcc0
だからサービスにもjobschedulerにも依存しすぎないように実装しておくべきってことでしょ

131デフォルトの名無しさん (ワッチョイ fb32-k44U)2017/04/07(金) 05:32:35.55ID:aRiH150x0
そろそろosの切り捨てを発表してほしい
バージョンによって同じコードでも推奨非推奨、動く動かないがあるからめんどくさい

132デフォルトの名無しさん (ワッチョイ f225-mAnV)2017/04/07(金) 07:05:30.44ID:g2Bp4RiZ0
そんなこと言ったらおまえが切り捨てられるだけじゃね

133デフォルトの名無しさん (ワッチョイ 071f-D6lx)2017/04/09(日) 16:03:21.37ID:NadzRpO+0
アプリ内課金でただの寄付でお金取ってもいいものなの?
アプリを気に入っていただけましたら寄付をお願いします。みたいなの

134デフォルトの名無しさん (ワッチョイ efd9-EOe2)2017/04/09(日) 22:30:45.22ID:XvRbw7ZK0
課金システムを利用して寄付を募ったら
詐欺じゃね

>>134
そうだとしたらどんな些細なものでもいいから新機能解放することにすればいいな
背景色変えられるだけの機能でもいいし

136デフォルトの名無しさん (ワッチョイ f267-9XCV)2017/04/10(月) 01:17:29.55ID:b+zXomQC0
カンパウェアだろ。別にいいんじゃねーの?Googleの規定と、法律まもれば。

137デフォルトの名無しさん (ワッチョイ efd9-EOe2)2017/04/10(月) 09:09:15.79ID:xk/B7Dik0
詐欺といったのは、些細な機能開放とかの有無ではなく、ユーザーから返金要求されたときに寄付だから返金しませんっていうのをやりたいのかなと思った点

>>135
そんな機能が付加価値になるアプリに寄付する奴はいねぇw

138デフォルトの名無しさん (ワッチョイ 0f1f-HE/W)2017/04/14(金) 22:05:01.63ID:oqWKvLke0
モバイルアプリ開発エキスパート養成読本読んでるんだが
リアクティブプログラミングとか出てくるんだがこれやった方がいいのか?
https://www.amazon.co.jp/dp/4774188638/
さっぱり理解できない

139デフォルトの名無しさん (ワッチョイ eba8-HE5L)2017/04/14(金) 22:36:51.07ID:s1OX5Qt80
俺がまだ勉強してないことはやらなくていいと思う

140デフォルトの名無しさん (ワッチョイ 0f1f-HE/W)2017/04/14(金) 22:44:29.13ID:oqWKvLke0
まずメリットがよくわからない
これを使わないと実現できない機能があるわけじゃないし
ユーザーメリットがあるわけでもないのに何でこんな面倒なものやらないといけないのって感じ
両方やってみて明らかにメリットあるって言える人いるの?

141デフォルトの名無しさん (ワッチョイ eba8-HE5L)2017/04/14(金) 22:55:56.06ID:s1OX5Qt80
その質問定期的にされるから、
前スレの>>950あたりも見てみん。

142デフォルトの名無しさん (ワッチョイ 9fcb-eX02)2017/04/14(金) 22:59:37.82ID:1tKdTMPH0
俺も齧った程度だけどリアクティブの良さは時間や実行タイミングを簡単に管理できることだと理解してる
そりゃ既存のスタイルでも実現できるんだけど
わざわざスレッドがどうこうって設計する手間が省ける
旧来のプログラミング手法とは大きく違うからとっつきづらいだろうけど
時間の管理をライブラリや言語レベルでサポートしてくれる感じ

143デフォルトの名無しさん (ワッチョイ 0b75-tSB2)2017/04/15(土) 00:15:37.72ID:KMbZmlHo0
リアクティブでRxJavaを使うのは周りではもう今はデファクトスタンダードだなあ

一見面倒に思えたとしてもRx使わずに同じこと実現するのと比べれば圧倒的に楽だろ

145デフォルトの名無しさん (ワッチョイ 0ba3-vkT9)2017/04/15(土) 10:18:01.21ID:b29XQl7t0
そうだな
メソッドチェーンまで使いこなせている奴は少ないけど

146デフォルトの名無しさん (ワッチョイ 0f1f-OvFE)2017/04/15(土) 11:01:30.26ID:62Z8qO7/0
Rxうぜー死んだらいいのに

147デフォルトの名無しさん (ワッチョイ 9be6-RZRQ)2017/04/15(土) 15:10:35.37ID:K/W2GKWK0
私物のXperia X Compact(Android 7.0)で電話発信→通話→電話終了すると
PhoneStateListenerのonCallStateChanged()で
CALL_STATE_IDLE→CALL_STATE_IDLEという受信シーケンスになるんだけど
こんなことあるんだろうか…?エミュレータだと再現しないから端末固有だろうか?

148デフォルトの名無しさん (ワッチョイ 3b0f-n2Cn)2017/04/15(土) 16:25:02.17ID:X3fhrFTl0
Androidプログラミングを始めるおっさんたちのスレ

149デフォルトの名無しさん (スプッッ Sd3f-vkT9)2017/04/15(土) 18:39:14.34ID:XznyM8zad
>>146
バカには使えないからな

150デフォルトの名無しさん (ワッチョイ eba8-HE5L)2017/04/16(日) 17:20:19.64ID:xNQXkSOm0
RxAndroidでコレクションってどう扱えばいいのでしょうか?
class Model {
private Observable<String> field1;
private Observable<Integer> field2;
private Objservable<List<String>> field3; <-- ??
}
コレクションの要素の追加、削除を監視したいんですけど、
コレクション毎入れ替えるしかないのでしょうか?

151デフォルトの名無しさん (スププ Sd3f-tSB2)2017/04/16(日) 19:52:42.85ID:rpbl7PtZd
それはRxAndroidの話ではなくRxJavaの話では?
CollectionのアイテムをemitするObserver作ってonNextとかでSubscriber側で監視すればいいんじゃないの?

152デフォルトの名無しさん (ワッチョイ eba8-HE5L)2017/04/16(日) 22:42:14.69ID:xNQXkSOm0
>>それはRxAndroidの話ではなくRxJavaの話では
はは。すみませんでした。RxJavaの話なんだけどめんどくさかったのでRxAndroidと
書いてアピールしてしまいした。
>CollectionのアイテムをemitするObserver作ってonNextとかでSubscriber側で監視すればいいんじゃないの?
追加はそれでよさそうなんですけど、削除はどうするんですかね。
ああ。アイテムをemitするんじゃなくて、リストに対する変更を表すクラスをemitすればいいのかな・・

153デフォルトの名無しさん (ワッチョイ efcd-TGvK)2017/04/16(日) 23:01:03.46ID:cf4fIbZ+0
ここの人はクラス設計とかどうやってるの?
通勤の行き帰りで構造を考えて家に帰ったらそれを元にコード書きたいんだけど
androidのアプリでいいの無いかな?
開発がmacでやってるからmacと連携できるのがいいんだけど

154デフォルトの名無しさん (ワッチョイ 2bb2-eX02)2017/04/16(日) 23:18:21.91ID:aKjHRDAZ0
UMLにしろポンチ絵にしろお絵描きアプリで十分ですよ

155デフォルトの名無しさん (ワッチョイ 2bb2-eX02)2017/04/16(日) 23:19:39.73ID:aKjHRDAZ0
あ、スタイラスは必須な

156デフォルトの名無しさん (ワッチョイ 0f1f-tSB2)2017/04/16(日) 23:25:14.46ID:CFoOyimY0
いまどきはmvvmが基本やろ

157デフォルトの名無しさん (ワッチョイ 0ba3-vkT9)2017/04/16(日) 23:37:42.13ID:irWKjJqL0
アホしかいねえ

158デフォルトの名無しさん (ワッチョイ 2bb2-eX02)2017/04/16(日) 23:47:32.61ID:aKjHRDAZ0
一言アホとバカにして消えるくらいなら知識を教え合ってくり〜

159デフォルトの名無しさん (ワッチョイ 6bcd-JCYE)2017/04/17(月) 04:42:31.79ID:PXNvTCor0
>>153
よほど大きなタブレットでないと俯瞰できなくないか
印刷して移動中に紙に書き込んで帰って入力
1クラスについてやりたいならテキストで

160デフォルトの名無しさん (スプッッ Sd3f-vkT9)2017/04/17(月) 09:08:36.45ID:avieXFWjd
ネタにマジレス

161デフォルトの名無しさん (ワッチョイ 0f1f-HE/W)2017/04/17(月) 22:02:43.18ID:nxPRGvnH0
Rxって実際何に使うん
入門記事読んでたらlist操作とか出てくるけどそんなの大してメリット感じられないし、
唯一見てて便利そうだと思ったのはretrofitをつかったAPIアクセスのサンプルだけだったな
他に何かあるん

162デフォルトの名無しさん (スプッッ Sd3f-vkT9)2017/04/17(月) 22:19:04.65ID:D9tI2U/vd
>>161
非同期で何かを処理させてその結果に応じて何かをするケース全てに使えるわ
処理毎にいちいちinterfaceを自前で作る必要もなく実行スレッドを変えてもコードが全く変わらない
更にその非同期処理を複数の使用者でsubscribeすることでひとつの処理に対して複数人が同時に結果を待つようなことも簡単にできる
またよく出来たobservableはそれを再利用し、別のobservableへチェーンさせることで複数の連続した処理を一つの処理のごとく扱える上にそれをキャンセルすることも容易

その結果、使用側の状態管理が非常に簡潔になり状態管理の煩雑さに起因するバグが減る

163デフォルトの名無しさん (ワッチョイ eba8-HE5L)2017/04/18(火) 00:24:51.35ID:89ZmshXW0
>>162
師匠と呼ばせていただきます。

164デフォルトの名無しさん (ワッチョイ 1f67-3JJD)2017/04/18(火) 10:39:41.55ID:f1Itctap0
スレチですまん。
RXみたいなことを、swiftでやる方法教えてクレメンス

165デフォルトの名無しさん (オッペケ Sr6f-TGvK)2017/04/18(火) 12:15:23.09ID:TtdzMAwEr
>>162
ちょっとRxJavaについて調べてみるわ

166デフォルトの名無しさん (スップ Sd3f-vkT9)2017/04/18(火) 12:30:42.96ID:BrfKAM3kd
>>164
RxSwift

167デフォルトの名無しさん (スッップ Sd3f-3JJD)2017/04/18(火) 14:27:07.98ID:nW+CGq1Rd
>>166
結局、Rxswiftにいきついたです。
あんがと。

168デフォルトの名無しさん (ワッチョイ eba8-HE5L)2017/04/18(火) 19:23:41.91ID:89ZmshXW0
>>処理毎にいちいちinterfaceを自前で作る必要もなく実行スレッド
新しくHot/ColdなObservableって概念学んだけど、HotなObservableも変えられるの?
誰かが作ったライブラリがObservable返すとして
使う側がでよし実行スレッド変えようとして
Observable<String> hotObservable = getHoge().subscribeOn(Schedulers.IO)とか
自由にできんの?
実行スレッド変えるって誰がやればいいんだよ。

169デフォルトの名無しさん (ワッチョイ eba8-HE5L)2017/04/18(火) 19:58:31.87ID:89ZmshXW0
つか、自由に実行スレッド切り替えられないのか?
observables.subscribeOn(Scheduers.io()).subscribeOn(AndriodSchedulers.mainThread())
でもとに戻せじゃん。
ってことは他で実行スレッド指定されたらこっちでは制御できないってこと?
しょぼぞう

170デフォルトの名無しさん (ワッチョイ bb57-eD8O)2017/04/18(火) 20:21:15.82ID:g4wfevAg0
observerOnも調べなさい
これで任意にスレッドを行き来できる

171デフォルトの名無しさん (ワッチョイ 0f1f-HE/W)2017/04/18(火) 22:35:07.12ID:Lji6HgnP0
もうちょっと分かりやすいやつを頼む

172デフォルトの名無しさん (スップ Sd3f-vkT9)2017/04/18(火) 22:42:46.84ID:BrfKAM3kd
>>169
subscribeOnはどのスレッドで処理を実行するか
observeOnはどのスレッドで結果を受けるか

173デフォルトの名無しさん (ワッチョイ 2bb2-eX02)2017/04/18(火) 22:50:41.43ID:nns0GLnq0
めずらしく皆が知識を教え合ってていいぞ〜♪

174デフォルトの名無しさん (ワッチョイ 6bc3-8aNn)2017/04/19(水) 14:21:31.19ID:f+5qlUh10
http://i.imgur.com/Wshma1a.png
bluetoothchatを入れて通信自体はできたんだけど送った文字がそのまま帰ってくる
これはandroid側のプログラムに問題有り?

175デフォルトの名無しさん (スププ Sd3f-tSB2)2017/04/19(水) 20:08:40.98ID:6ZXNFEbBd
ここの人たちをエスパーか何かと勘違いしてない?

ラズパイが送られてきたもの一文字ずつ戻してるようにしか

177デフォルトの名無しさん (スップ Sd3f-vkT9)2017/04/19(水) 22:53:16.20ID:Oe3GTYDPd
>>174
おまえの頭に問題あり

178デフォルトの名無しさん (ワッチョイ abd9-gojC)2017/04/20(木) 03:34:03.22ID:dgbhiB9v0
コード書いた本人が何が起きてるかわからんものを赤の他人が画像1枚でわかるわけないだろ
青歯の届く距離でチャットするくらいなら普通に会話したほうがいいよね

179デフォルトの名無しさん (ワッチョイ 0647-O9gr)2017/04/20(木) 04:26:38.13ID:r8t9U2Ee0
VisualStudioでXamari使って作ってみたらバイナリがDLLだった
これを実機に入れても動かん
どうしたらよいの?

180デフォルトの名無しさん (スップ Sd4a-mqxQ)2017/04/20(木) 09:33:30.22ID:T8G8upSfd
>>179
xamarin.androidを使えはdllがapkに含まれた形で生成されるが

>>180
あり。試してみるよ。

182デフォルトの名無しさん (ワッチョイ 6fe6-m8Mb)2017/04/20(木) 21:35:43.30ID:KB/cnEtw0
Runtime Permissionについてなんだけど
checkSelfPermissionで大まかなチェックするのはいいとして
APIレベルでSecurityExceptionでいちいち捕捉しないといけない?
どこまで対応するのがベストなんだろう?

183デフォルトの名無しさん (スップ Sd4a-mqxQ)2017/04/20(木) 22:26:35.40ID:T8G8upSfd
securityexceptionのcatch自体にapiレベルをみる必要はない

基本的な方針としてアプリ起動時に全てのpermissionを取ってしまうのが普通かと

184デフォルトの名無しさん (ワッチョイ 6fe6-m8Mb)2017/04/20(木) 22:46:18.63ID:KB/cnEtw0
>>183
瞬間的なタイミングで権限OFFにされる事なんて
あり得ない想定でいいのかな?

185doroidkun (スップ Sd4a-mqxQ)2017/04/20(木) 22:52:54.70ID:T8G8upSfd
>>184
OFFにされたらプロセスは即座にkillされる

そこで考慮しないといけないケースは2つ
まず、履歴から戻った場合。最後に表示していたActivityが直接起動されるから、パーミッションが必要な全てのActivity起動時にパーミッションを取るようにしないといけないということ

ふたつめ。stickyなサービスがある場合。パーミッションがない状態で起動されてしまうのでなんらかのフェールセーフは必要となる

186デフォルトの名無しさん (ワッチョイ 1e1f-HDOw)2017/04/20(木) 22:56:59.98ID:pS1C8CAu0
targetSdkVersionを22以下にすればすべて解決する

187デフォルトの名無しさん (ワッチョイ 6fe6-m8Mb)2017/04/20(木) 23:00:00.66ID:KB/cnEtw0
>>185
なるほど参考になります
権限チェックの箇所洗い出しとどうやってエラーハンドリングや
縮退させて動作させるか検討してみます

188デフォルトの名無しさん (ワッチョイ 7ff3-KIcP)2017/04/21(金) 11:12:53.57ID:3BquMQWs0
adbの install -r って、adb uninstall と adb installを組み合わせたものっていう認識で大丈夫ですか?

uninstallしたらデータ消えちゃうでしょ。
データ消さずに更新するのがinstall -r

190デフォルトの名無しさん (ワッチョイ 1e1f-HDOw)2017/04/21(金) 23:19:37.02ID:USF0QZMS0
Google Play Consoleの画面が変わってstoreで見るのクリックする所が消えてるんだがどっから行ったらいいんだ

mvvmって要は、
viewで何かしらのイベントが発生したら
bindingで紐付いたviewmodelの処理が呼ばれて、
そこからmodelの処理が呼ばれてrxで結果を返して、
bindingで結果をviewに反映させるってことなん
viewからmodelの処理を呼びたくなったら絶対viewmodelに処理を追加して
viewmoel経由で呼ばないと駄目なん
面倒くさくないん

それでプログラムが分かりやすくなるん
保守性があって不具合の解析がしやすくなるん

193doroidkun (ワッチョイ a3a3-mqxQ)2017/04/22(土) 19:22:24.80ID:NtNMRzdE0
MVVMに限らずデザインパターンを適用すると必ずコードは増えるし面倒になるのは避けられない
フリーダムに作るとActivity、fragmentが巨大なりがちだから何か設計の指針があったほうが整理しやすいかもね
選ぶのは君だよ
databindingは好き嫌いあるし

194デフォルトの名無しさん (ワッチョイ 1e1f-HDOw)2017/04/22(土) 21:58:34.54ID:77P2TaT30
正直MVVMのメリットは全く理解できないが
周りが使ってるから時代遅れになってる気がして調べてるだけ
単体テストがやりやすくなるメリットがあるとかいうけど
単体テストの意義も正直理解できない
普通のやり方で何の問題もなくアプリが作れてるわけだが何でこんなの学ばないといけないの
むしろMVVMとかリアクティブプログラミングとか使ってるプロジェクトの方が炎上してる率が高い気がするんだが

195doroidkun (ワッチョイ a3a3-mqxQ)2017/04/22(土) 22:43:57.98ID:NtNMRzdE0
Rxはメリットしかない

層の繋ぎ目がRxJavaに依存しているというのはデメリットだと思う

197デフォルトの名無しさん (ワッチョイ 1e1f-HDOw)2017/04/23(日) 22:47:08.65ID:7AsvLBbE0
modelのメソッドが返り値をもったら駄目でRxのSubscribe経由でなら結果を返していい理由も全然わからない
そうすることでプログラムが分かりやすくなるん
保守性があって不具合の解析がしやすくなるん
全然意味が分からない
結局お前らもみんながやってるからとか流行ってるからやってみてるだけで本当に価値があるか理解してないだろ
みんなが大学行くから僕も行くじゃ学費の無駄

198デフォルトの名無しさん (ワッチョイ de92-0iG2)2017/04/24(月) 07:44:34.80ID:+hsJqQEh0
layontInflaterで呼び出した子XML内の部品にアクセスできません(泣)
idも付けているのですが、null扱いになります。

読み込んだ直後なら動作するのですが、
子XMLが切り替わった後には内部のViewが無効となります。

XML切り替え時のremoveメソッドが無ければ動作するのですが、
これが無いと、切り替えるたび子がどんどん増えてダメですよね
何とか都合よく、XML切り替え+内部View参照する方法はないものでしょうか?

199doroidkun (スプッッ Sd4a-mqxQ)2017/04/24(月) 09:16:13.41ID:OVGIDxevd
>>198
viewgroupに対してremoveViewしたあとにaddViewしているという意味か?
論理的にはそれでaddviewしたviewが消えるなんてありえないので、単純なコードバグの確率100%
それ以上はその情報からは推測できない

200デフォルトの名無しさん (ワッチョイ 1e1f-HDOw)2017/04/24(月) 22:26:14.54ID:cPV7PKHW0
viewの階層構造を見てみたら

201デフォルトの名無しさん (ワッチョイ de92-0iG2)2017/04/24(月) 22:40:18.71ID:+hsJqQEh0
198ですが、色々いじってたら解決しました。
ありがとうございましたm(__)m

202デフォルトの名無しさん (ワッチョイ 1e1f-HDOw)2017/04/24(月) 22:41:26.24ID:cPV7PKHW0
なら書けよ

>>201
こういうのが一番たち悪い

204doroidkun (スプッッ Sd4a-mqxQ)2017/04/25(火) 09:01:33.99ID:XKGj15VBd
内容的にただのチョンボだから他人が得るものなんてない
報告なんていらないよ

205デフォルトの名無しさん (ワッチョイ abcd-vlzK)2017/04/25(火) 14:07:51.93ID:lZKIEfpY0
初心者がミスりやすいとこがわかる
そういうのなかったら質問スレなんて来るかよ

206デフォルトの名無しさん (ワッチョイ 1e1f-HDOw)2017/04/26(水) 22:13:49.93ID:CIoXsE0/0
Rxの勉強する前にLINQの勉強したほうがいいですか

207デフォルトの名無しさん (ワッチョイ 0a25-X1R2)2017/04/26(水) 22:46:48.00ID:82UhbxO30
知識が多くて困ることはない
なんでも勉強しろ
じゃないと俺みたいに残念人生を送ることになるぞ

208デフォルトの名無しさん (ワッチョイ bbb2-yz5x)2017/04/26(水) 23:12:48.38ID:kIuXn66p0
>>206
順番的にはその通り
Rxを学ぶ前にLINQ

209デフォルトの名無しさん (ワッチョイ 1e1f-HDOw)2017/04/26(水) 23:17:01.68ID:CIoXsE0/0
listとかのコレクションに対してSQLの命令を実行できるようにしたのがLINQで、
それを発展させてコレクション以外にもイベントとか通信の結果とかにまでSQL的な操作をできるようにして、
さらにその操作をめっちゃ種類を増やしたのがRxって感じですか

210デフォルトの名無しさん (ワッチョイ 1bb2-8ZdP)2017/04/27(木) 00:00:30.59ID:L4FnRn3T0
>>209
そこまで概観できてるなら怖がる必要なんてないよ
LINQ->Rxの順で勉強しな
実りは多い
保証する

211doroidkun (ワッチョイ 7ba3-QZ7w)2017/04/27(木) 00:16:59.83ID:YenU4dpp0
LINQ介する必要性を全く感じないけどAndroid開発する上でLINQを学習するメリットはなに?

212デフォルトの名無しさん (ワッチョイ 5f3f-WBDQ)2017/04/27(木) 00:28:46.97ID:fzV12exw0
AndroidなんだからLINQじゃなくてJava8のStream APIがいいだろ

213doroidkun (ワッチョイ 7ba3-QZ7w)2017/04/27(木) 00:34:32.47ID:YenU4dpp0
streamはandroidでは使えないし移植される予定もないからrxでいいと思う

214doroidkun (ワッチョイ 7ba3-QZ7w)2017/04/27(木) 00:42:40.24ID:YenU4dpp0
なんてことをandroidの8拡張にはoptionalもないし色々考えているとkotlinに行き着くけど業務でkotlin使いましょうとはなかなか言えないのが辛いところ

215デフォルトの名無しさん (ワッチョイ 0f1f-Ahd3)2017/04/27(木) 08:20:06.28ID:fnnc/aNx0
歴史的に、まずLINQがあって
それを拡張したのがRxと聞いた

>>211
Androidだろうがデスクトップアプリだろうがロジック部分の開発に求められる技術は大して変わらないだろ
つまりAndroid以外の開発で使われていて便利な技術ならAndroid開発でも便利ということ

217doroidkun (スップ Sd7f-QZ7w)2017/04/27(木) 09:07:18.25ID:bRhInxdvd
>>216
うんだからLINQ→Rxの順番で勉強するメリットになに?

218デフォルトの名無しさん (ワッチョイ 1bb2-8ZdP)2017/04/27(木) 09:16:42.66ID:L4FnRn3T0
LINQのほうが簡単だから

そりゃRxってのはイベントをLINQ形式で書けるものなんだからLINQわかってた方が良いでしょ

220doroidkun (スップ Sd7f-QZ7w)2017/04/27(木) 13:28:13.57ID:bRhInxdvd
なるほど
大は小を兼ねると思うがあとは本人が決めることだね

221デフォルトの名無しさん (ワッチョイ 7b1f-Ahd3)2017/04/29(土) 23:02:01.45ID:VKbKBamV0
flowableとobservableってどう使い分けたらいいんすか

222doroidkun (ワッチョイ 7ba3-QZ7w)2017/04/30(日) 01:05:16.50ID:+rLqkQG40
クライアント側でバックプレッシャーが必要なことなんてそうそう無いのでObservableでいいです

223デフォルトの名無しさん (ワッチョイ 4f70-PuY0)2017/04/30(日) 10:04:35.60ID:/yD4hEqB0
サーバ側も自分ところでお守りしているなら、Flowable使ってなんとかするのはアリでは。
他人様のサービスなら、ガンガン投げつければいいけど。

224デフォルトの名無しさん (ワッチョイ bb3c-g2qj)2017/05/02(火) 00:28:35.01ID:ejSs7q9W0
結局retrofit2の通信ぐらいしかrx使わなくね

225デフォルトの名無しさん (ワッチョイ b3c8-HG4F)2017/05/06(土) 18:50:32.87ID:7+RHyuNk0
最近リリース前レポートテストを使った方、情報求む!!!

Google Play Consoleが新しくなってから初めてアプリの更新を行おうとしているのだが・・・

以前はアルファ版にAPKをアップロードしたら自動でリリース前レポートテストが行われていたが、
今回APKをアップロードしてもリリース前レポートが作成されない。(テストが行われていない様子)

リリース前レポートを作成するための手順が変わった?

@ [Google Play Console]→[設定]→[リリース前レポート]が「リリース前レポートテストを
有効にする」になっているのは確認済。

A https://support.google.com/googleplay/android-developer/answer/7002270?hl=ja
の「手順1:オプトインする」に「4.ページの下部で[オプトイン]を選択します。」と
あるが、リリース前レポートのページの下部にこの項目は無い。

226デフォルトの名無しさん (ワッチョイ 761f-Ogwz)2017/05/10(水) 00:01:33.92ID:pmNpEbz80
仕事では今ってMVVMで作るのが当たり前なんですか

227droidkun (ワッチョイ 27a3-R8bv)2017/05/10(水) 00:03:57.66ID:loy2TVaa0
そんなことはないですよ

228デフォルトの名無しさん (ワッチョイ 761f-Ogwz)2017/05/10(水) 00:11:49.38ID:pmNpEbz80
将来的にはMVVMで作るのが当然になるんでしょうか

229デフォルトの名無しさん (ワッチョイ b225-/yZT)2017/05/10(水) 00:17:32.91ID:DUyYSy+U0
そんなのは占い師にでも聞け

230デフォルトの名無しさん (アウアウカー Sa1f-Dey6)2017/05/10(水) 00:38:37.68ID:d+3/c5kna
MVVMが優れているのは明白
採用しないのは単にMVVMを理解できないメンバーに合わせざるを得ないから

231デフォルトの名無しさん (スッップ Sd52-uPTa)2017/05/10(水) 17:28:12.96ID:3upqW16ud
RecyclerViewの各アイテムのViewにMapViewをLiteModeで貼り付けたら地図表示はしてくれるんですが、アイテムによってズーム倍率が変わってしまいます。

ライフサイクル的な問題ではないかと考えているのですが、解決する方法等についてもありますでしょうか?

232デフォルトの名無しさん (ワッチョイ cf1f-SU9n)2017/05/11(木) 20:50:17.84ID:NjKe635i0
modelからViewModelに通信の結果を返すときに、
Rxとか使わずに、interfaceを渡してコールバックを返すようにするのは何かマズいんでしょうか

Googleが正式にMVVMをサポートするもよう
ttps://developer.android.com/topic/libraries/architecture/index.html

234デフォルトの名無しさん (ワッチョイ 7e1f-kvD5)2017/05/18(木) 21:58:27.48ID:g1vdrZr70
端末回転時にactivity破棄しない設定で、
admobの広告をsmartbannerのsizeで表示しているんですが、
そうすると端末回転時にadviewの高さが変わらなくて、
landscapeで起動してからportraitに切り替えた場合に広告が表示されなくなるんですが、
端末回転時にadviewの高さを切り替えてちゃんと描画させるにはどうしたらいいですか

235デフォルトの名無しさん (スップ Sdca-M94C)2017/05/18(木) 21:59:31.08ID:87Eqg7FMd
Activityを破棄させる

236デフォルトの名無しさん (ワッチョイ 7e1f-kvD5)2017/05/18(木) 22:09:53.95ID:g1vdrZr70
SaveInstanceStateとか使わないと駄目なのかなあ

237デフォルトの名無しさん (ワッチョイ aa3c-vzoY)2017/05/19(金) 14:40:58.99ID:pNEeIPjC0
ジャイロで回転は使い勝手悪いよなジャイロ+ジェスチャーとか色々選べるべき

サーバ側に用意した大量のJSONの配列ファイルをVolleyを使ってダウンロードしようとしています。
そのままだと時間がかかるので、少しずつダウンロードできるように

  ・本体のJSONのファイルを分割
  ・分割したファイルのリストをJSONに記録
  ・端末はまずファイルのリストをダウンロードし、必要な都度に本体のJSONファイルをダウンロード

という具合に書き直そうと思っています。
いつも車輪の再発明をしてる感があるので伺いたいのですが、
このような処理を簡単に行うライブラリや、デザインパターンのようなものが既にあったら教えていただけないでしょうか。

「そんなことはせずに、普通はこうする」のような指摘もありがたいです。

239デフォルトの名無しさん (ワッチョイ de1f-kvD5)2017/05/21(日) 11:30:24.40ID:RvZGwbM50
Volleyは時代遅れ
今はretrofit2 + rxjavaですよ

新着レスの表示
レスを投稿する