Androidプログラミング質問スレ revision53at TECH
Androidプログラミング質問スレ revision53 - 暇つぶし2ch127:デフォルトの名無しさん
21/09/16 23:20:19.27 4BK2jr4N.net
>>125
テーマじゃないの?

128:デフォルトの名無しさん
21/09/17 09:58:15.45 2toGcAWX.net
>>123
ActivityのonCreate()で、supportActionBar?.hide()とか。

129:デフォルトの名無しさん
21/09/17 10:37:42.12 d5hwBsE0.net
今の公式ドキュメントではこれはアプリバーで、実装する為のクラスはToolbar
以前はアクションバーと呼ばれていて、APIにはまだそっちの名残りも少し残っている
APIのバージョン上がる度にやり方変わって来たので、適当に検索して試すと、古いハズレの情報にハマる可能性が高い
なので公式ドキュメントを参照すべし
ただし公式もv7 appcompa使えとか古い情報が残ってるので、これはandroidxに読み替える必要あり

130:デフォルトの名無しさん
21/09/17 10:54:14.88 d5hwBsE0.net
マニフェストの<application>要素のandroid:themeにデフォルトのNoActionBar系のテーマを指定すれば、インストールしたAndroidのバージョンに応じて、かつてのタイトルバーやアクションバーが表示されないよう勝手に設定してくれる
そのうえでToolbarクラスを配置してアップバーを表示する操作をするのが今の流儀なので、それをやらなければバー無しになるはず
テーマを自分でいじりたい場合には、デフォルトのNoActionBar系のテーマを継承するようにして、下手なことをやらければ同じ効果が得られると思われ
もしかしたらこの情報も古いかもだがそのときは許してね

131:デフォルトの名無しさん
21/09/17 11:50:21.51 ep8znUoV.net
>>127
>>129
アドバイスありがとうございます
結論から言うとManifestをいじってもやっぱりエラーが出て落ちます
今回作成したアプリはactivityにfragmentを乗っけて作っているのでsupportActionBar?.hide()で対処するこ


132:とにしました 新たに新規プロジェクトを作成してManifestをいじってみるとうまくいくのですが 現状作成しているアプリではエラー落ちしますね すっげぇもやもやする・・・



133:デフォルトの名無しさん
21/09/18 11:12:17.20 ORHp7xx4.net
アップがaabに変わりましたけどこのaabに変えてからのやつは
難読化してあるソースもデベコンのエラーレポートのスタック トレースが難読化する前のソースでの表示に
なったりするんでしょうか?

134:デフォルトの名無しさん
21/09/21 00:59:45.27 M8V98g9z.net
>>130
supportActionBar?.hide 呼んでる時点でこれまでのアドバイス理解してないじゃないかな
AppBarが表示されるのは、
Theme/StyleにNoActionBar以外を設定している
レイアウトでToolbarを置いてsetSupportActionBar(toolbar)


135:してる のどちらかだけど、どっちかな? 前者ならNoActionBar設定すればOK、後者ならToolbar消せば終わり



136:デフォルトの名無しさん
21/09/21 10:05:35.22 OKQsKa88.net
NoActionBar系のテーマに切り替えると落ちるって書いてあるじゃん
古い環境で作ったstyleなんかのリソースが、NoActionBarテーマに対応出来てない可能性
あとはAppCompatActivity使ってないとか

137:デフォルトの名無しさん
21/09/21 12:32:32.76 M8V98g9z.net
getSupportActionBarはAppCompatActivityのAPI

138:デフォルトの名無しさん
21/09/21 12:34:10.49 M8V98g9z.net
>古い環境で作ったstyleなんかのリソースが、NoActionBarテーマに対応出来てない可能性
Kotlin使ってるようだから少なくとも古のプロジェクトではなさそう

139:デフォルトの名無しさん
21/09/21 12:48:36.58 OKQsKa88.net
>>134
ActionBarActivityだったことがあるはず

140:デフォルトの名無しさん
21/09/21 12:56:00.65 OKQsKa88.net
>>135
build.gradleいじるだけで古いブロジェクトもKotlin化できるでしょ

141:デフォルトの名無しさん
21/11/29 16:24:23.73 uioVcrq5.net
フォルダや書庫の画像を1枚1枚順に表示していくアプリを作りたいのですが
サンプルやサイトなど良い所はないでしょうか?

142:デフォルトの名無しさん
21/12/03 20:38:27.42 c/C5pVxn.net
趣味アプリで音声通話したいんですが何のライブラリがメジャーなんですかね

143:デフォルトの名無しさん
21/12/13 18:46:24.24 dvvuVd6e.net
MainActivityで定義した変数val1にFragmentから値をアクセスするのに以下の書き方をしています。
(double)((MainActivity) getContext()).val1 = double変数;
これは画面回転などでいけないコードなんでしょうか?

144:デフォルトの名無しさん
21/12/13 19:45:29.85 0vfoJE6l.net
interface定義してそのメソッド経由で書き換えた方が良かろうよ

145:デフォルトの名無しさん
21/12/14 01:21:26.01 JaZqoqJK.net
surfaceviewの描画方式って
・lockCanvas/unlockCanvasAndPost メソッド経由でcanvasを操作する方法
・surfaceviewクラスのvoid draw (Canvas canvas)メソッドをoverrideする方法
 URLリンク(developer.android.com)(android.graphics.Canvas)
の2通りあるみたいですが、これらにはどの様な違いがあるのでしょうか。

146:デフォルトの名無しさん
21/12/14 03:06:25.26 xwAfSHru.net
>>140
素直にAAC(Jetpack) ViewModel使いましょう

147:デフォルトの名無しさん
22/01/01 02:19:53.28 IkfsqXxa.net
Roomを使ってデータベースに画像を保存することは可能でしょうか?
アプリ内で端末内部ストレージの画像を選択orカメラアプリで撮影し、その画像の保存処理を行いたいです

148:デフォルトの名無しさん
22/01/01 02:35:29.99 T7IwYd4U.net
そりゃ可能
普通にByteArrayだかで定義してそこにつっこめばいい

149:デフォルトの名無しさん
22/01/01 11:33:23.80 IkfsqXxa.net
>>145
ありがとうございます
やってみます

150:デフォルトの名無しさん
22/01/04 18:20:32.60 rCkXbBZ2.net
realtimedatabaseの項目数をかうんとしたいんですがどうしたらいいですか
refのchildCountを取得しようとすると項目数が多すぎて途中でクラッシュします

151:デフォルトの名無しさん
22/01/19 16:44:16.32 TJkImwOr.net
Android Studioでの話ですが、クラスでインターフェイスを継承したとき、メンバを実装しますよね
例えば、
KotlinでDatePickerDialog.OnDateSetListenerを継承し、onDateSetメンバを実装するとします
その際に、パラメータの名前がp0,p1といった具合に人から見てよくわからない名前になるのですがこれは自分で直すしかないのでしょうか?

152:デフォルトの名無しさん
22/01/19 18:11:44.27 yptPsgYF.net
センスがないからそうなる

153:デフォルトの名無しさん
22/01/19 18:28:30.51 0QW5AHaA.net
可愛そう

154:デフォルトの名無しさん
22/01/19 19:08:38.76 TJkImwOr.net
酷いですね

155:デフォルトの名無しさん
22/01/21 20:15:44.97 VCUMrOJr.net
jetpack composeって主流になるんでしょうか

156:デフォルトの名無しさん
22/02/04 14:16:34.29 QJD33Pxk.net
1. URLリンク(developer.android.com)
> From version Build.VERSION_CODES.R onwards, the caller must either have the LOCK_DEVICE permission or the device must have the device admin feature;
2.URLリンク(developer.android.com)

1のリンクってandroid R以降は端末管理アプリじゃなくてもLOCK_DEVICE権限さえ持ってれば画面をロックできるよって意味に読めると思うんですが、
その場合2のリンク内を探してもLOCK_DEVICEというのが見つからないんですがどうやって要求するもんなんでしょうか?

157:デフォルトの名無しさん
22/02/05 00:52:53.83 jvgtPyNh.net
ざっとググってみた
android.permission.LOCK_DEVICEのprotectionLevelはsignature|privileged
privilegedはシステムイメージ上の特権アプリの権限(メーカー用)
URLリンク(developer.android.com)
LOCK_DEVICE権限は通常のアプリでは指定できない
って感じなんだけど詳しい人教えて

158:デフォルトの名無しさん
22/02/16 10:29:38.38 flmiTjC5.net
onResume()でsuper.onResume()の次からコード書いていますが、superを一番最後に書くのはどういう時ですか?

159:デフォルトの名無しさん
22/02/16 23:35:12.50 jmOnTM53.net
アプリ側で先に処理をしてからシステムにお任せするときとかじゃないかな
ライフサイクルで言うとonPause()辺りから最後にsuper呼ぶ派がいるらしいね

160:デフォルトの名無しさん
22/03/31 17:13:38.95 nDVPY4Py.net
kotlinで開発しているアプリで尋ねたいことがあります
EditTextとButton(+、-)で数値カウンターを作りたいのですが、EditTextの中身をint型にして取り出すには、edittext.text.toString().toInt()でよいのでしょうか?
EditTextに何も値が入っていない場合NumberFormatExceptionが出てしまいます。これはnullを変換できないために出ているという理解であっていますか?

161:デフォルトの名無しさん
22/03/31 18:01:47.51 HWZxssf/.net
EditTextに何も入ってないときは空文字列になってるんじゃないかな
それをtoInt()しようとしても変換できなくて例外飛んでそう
toIntOrNull()使えば失敗した場合にnullになるから個人的には扱いやすいけど

162:デフォルトの名無しさん
22/03/31 21:57:33.98 nDVPY4Py.net
>>158
""こいつが入ってたんですね。。。ありがとうございます

163:デフォルトの名無しさん
22/04/27 08:57:04.51 czHi8155.net
GLESのフラグメントシェーダーで条件を満たす場合のみポスト処理を加えたいのですが、
vec4 postprocess(vec4 c) {
// return c;
// return vec4(1.0, 1.0, 1.0, 1.0);
return (複雑な処理);
}
void main() {
vec4 c = texture2D(tex, coord);
c = (cond == 1) ? postprocess(c) : c;
c = (cond == 1) ? postprocess(c) : c; <-(以下繰り返し)
gl_FragColor = c;
}
cond=0の場合はpostprocess関数は通らない(fpsは落ちない)はずなんですが、
条件式の行を(試しに)増やすとみるみるfpsが落ちます。
三項演算子がボトルネックなのかと思いましたが、コメント行のreturnだとfpsは落ちません。
つまり、一度も使われないはずの複雑な処理部分でfpsが落ちています。
ポスト処理が不要の場合にfpsを落ちなくする方法はないでしょうか。
実際はもっと複雑なのでフラグメントシェーダー自体を分ける、という手は使えません。

164:デフォルトの名無しさん
22/04/27 09:23:41.37 J/i9w8RU.net
三項演算子じゃなくてif文でやってみたら?

165:デフォルトの名無しさん
22/04/27 10:02:04.87 kMMGmpX6.net
一瞬C言語に見えたがGLSLなのね
C言語の3項演算子は規格で?の前の値が偽の場合には:の前の式の評価自体が行われないことになっているけど、GLSLはそうはなっていないというだけじゃないないかな
ベクトル処理的には常に両方評価するようになってたほうが都合が良さそう

166:デフォルトの名無しさん
22/04/27 19:40:41.63 HoIN9OC4.net
単純にcondが0になっていないだけみたいな話は…さすがにないか

167:デフォルトの名無しさん
22/04/27 22:06:54.28 7ZnzTRWx.net
GPUはコア間の処理タイミングを揃えるために
条件分岐は両方の場合を常に実行し
合わない方を捨てることでつじつまを合わせることが多い

168:デフォルトの名無しさん
22/05/27 10:43:04 fI0Liq3R.net
C言語でOPENGLESすると100倍くらいスピード上がりますか?

169:デフォルトの名無しさん
22/05/27 11:10:21.79 S0cy91Tb.net
もっとageage

170:デフォルトの名無しさん
22/05/27 11:11:45.11 2BCYGZ3D.net
>>165
何と比較してなのかさっぱり
エスパーじゃねンダワ

171:デフォルトの名無しさん
22/05/29 16:28:10.94 89z2cDQI.net
フリーランス向けエージェント「クラウドテック」会員数8万人突破
~働きやすい環境構築のため、単価向上・全年齢の活躍の場創出・
地方企業のDX推進の取り組みを強化します~
フリーランスエンジニア専門の案件一括検索サイト「フリーランススタート」、
累計掲載案件数25万件突破!リモートワークの累計掲載案件数35,000件突破!
新規人材の80%がフルリモート希望! IT人材市況動向レポート2021年12月版を公開
人口移動報告 家賃高い、首都圏脱出 「コロナ禍、仕事フルリモート」
クラウドテック、地方企業向け『クラウドテックDX』を開始、
7万人を超えるDX人材が、地方の非IT企業のDX推進を支援
新潟県、移住してきたテレワーカー/フリーランスに最大50万円を支給
テレワークの一般化により、11月にはテレワーク可能案件83.7%へと増加。
2021年、フリーランスのトレンドは「移住&テレワーク」と予測

172:デフォルトの名無しさん
22/06/05 16:40:02.29 PNNQb3Wl.net
文字入力ソフトを作成したい・・・と思ったら
まずどこから学習したら良いでしょうか
OSの機能からでしょうか
また、言語は何がよろしいでしょうか。
githubにいいソースがあったりするのでしょうか。
何か情報いただけたら嬉しいです。
よろしくお願いいたします。

173:デフォルトの名無しさん
22/06/05 16:49:49.65 dmviU8id.net
文字入力ソフトとは?

174:デフォルトの名無しさん
22/06/05 17:24:06.69 bG/VXTBG.net
しじみみたいな!

175:デフォルトの名無しさん
22/06/05 17:26:50.23 bG/VXTBG.net
しめじでした・・・

176:デフォルトの名無しさん
22/06/05 17:39:39.49 NDP4fO14.net
>>169
URLリンク(developer.android.com)

177:デフォルトの名無しさん
22/06/05 20:53:50.08 r/rImGgs.net
凄いな
あるんだ
あさり!

178:デフォルトの名無しさん
22/06/19 16:34:57.43 pLscdpgt.net
dialogにMPAndroidChartでチャートを表示させようとして、幅と高さを目一杯のmatch_parentにしても高さはぺしゃんこになります。どうしたら高さを設定できるのでしょうか?
高さを400dpとか固定値なら表示できますが、機種によってはみ出るから自動にしたいです。

179:デフォルトの名無しさん
22/06/19 19:54:38.14 Bx94IbX6.net
機種の高さを取得して設定す�


180:ラし



181:デフォルトの名無しさん
22/06/19 20:44:14 pLscdpgt.net
>>176
具体的なコードをお願いいたします。

182:デフォルトの名無しさん
22/06/20 15:14:56.09 p6es2wyf.net

val width: Int = context.resources.displayMetrics.widthPixels
val height: Int = context.resources.displayMetrics.heightPixels

183:デフォルトの名無しさん
22/06/20 19:56:17.46 UN/XWxic.net
>>178
ありがとうございます。
final View viw = inflater.inflate(R.layout.dialogChart, null);
mChart = viw.findViewById(R.id.LineChart);
AlertDialog.Builder alert = new AlertDialog.Builder(~);
alert.setView(viw);

alert.show();
と言う感じでダイアログ出してますが、どうやってR.id.LineChartの高さを指定するのですか?

184:デフォルトの名無しさん
22/06/21 11:56:30.40 vHc/87Bp.net
>高さを400dpとか固定値なら表示できますが
指定する方法わかってるじゃん

185:デフォルトの名無しさん
22/06/21 13:09:12.78 p6gZqJLi.net
>>180
レイアウトのxmlファイルでの指定はわかるけどjavaコードでの指定がわからないのです。

186:デフォルトの名無しさん
22/06/21 13:16:59.77 p6gZqJLi.net
<com.github.mikephil.charting.charts.LineChart
android:id="@+id/LineChart"
android:layout_width="400dp"
android:layout_height="600dp" />

187:デフォルトの名無しさん
22/06/21 13:19:16.29 p6gZqJLi.net
constraintlayoutで使うと赤線出るけど、どうしたら良いですか?

188:デフォルトの名無しさん
22/06/23 21:33:25.02 6+2dIJsF.net
赤線のエラー文を読もうぜ

189:デフォルトの名無しさん
22/06/23 21:46:55.90 dKSErO3p.net
>>184
相互位置関係を記述したら消えました。

190:デフォルトの名無しさん
22/06/23 21:54:12.71 dKSErO3p.net
mChartのwidthとheightを画面サイズの0.8倍に設定できましたが、AlertDailogの横幅の0.8倍にしたい。
AlertDailogのwidthとheightを取得したいがネットを探しても出てこない。

191:デフォルトの名無しさん
22/07/11 19:15:41.84 W06gDof6.net
Navigation Drawerで質問です。
オプションメニュー(縦…)をタップして、処理が終わったら、ハンバーガーメニューを開いて欲しいのだけど出来ますか?

192:デフォルトの名無しさん
22/07/16 03:12:04.06 hlf3btZT.net
1.処理が終わったら、DrawerもってるActivity/Fragmentに通知して閉じる。
2. URLリンク(stackoverflow.com)

193:デフォルトの名無しさん
22/08/29 09:59:33.77 EJtGam6w.net
MPAndroidChartで質問です。
描画したチャートをピンチで拡大して、元の倍率に戻したい時のコードが知りたいです。

194:デフォルトの名無しさん
[ここ壊れてます] .net
どのタイミングで戻すか知らんが、倍率に1.0や保持した倍率を入れればいいじゃろ

195:デフォルトの名無しさん
22/09/09 21:48:54.85 RsakcQHL.net
権限の許可ダイアログで許可するのを間違えて否認してしまった場合に再度許可ダイアログを出す方法はありませんか?
PendingIntent.getBroadcastでIntentFilterしてregisterReceiverします。
BroadcastReceiverの権限回答しており、AndroidManifestではintent-filterは記載していないです。
一度否認してしまうとアプリの再起動じゃないと権限ダイアログが出てこないです。
また、AndroidManifestのintent-filterでやっていた時は一度認証するとアプリを再起動しても権限出てこなくて便利だった。

196:デフォルトの名無しさん
22/09/17 19:43:03.81 GRKzzCP7.net
アプリから端末のGoogleアカウントを知る方法がわかりません。
自分のアカウントの場合は隠し機能を有効にしたいと思ってです。

197:デフォルトの名無しさん
22/09/17 20:54:14.37 5QfKySba.net
ワンタップサインインとか使わないとね

198:デフォルトの名無しさん
22/09/29 15:24:13.03 HOy6u/66.net
ダイアログを出して、5秒程度の処理が終わるとダイアログを消すコードですが、実行後にANRが出ます。
添削お願いいたします。
public AlertDialog dialog;
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
new AlertDialog.Builder(getActivity())
.setTitle("Test1")
.setMessage("test1")
.setPositiveButton("OK", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog = new AlertDialog.Builder(getActivity())
.setTitle("Test2")
.setMessage("test2")
.show();
new Thread(() -> {
try {
Thread.sleep(5000);
} catch (Exception e) {
} finally {
dialog.dismiss();
}
}).start();
}
})
.show();
}
});

199:デフォルトの名無しさん
22/09/29 17:07:24.84 6DjIJRTi.net
>>194
new Threadでdialog.dismiss()してるのがいけないと思う
UIスレッド(メインスレッド)からじゃないとUIは操作できない
やること

UIスレッドでHandlerを作る
new ThreadからはそのHandlerにpostしてdialog.dismiss();を実行する

200:デフォルトの名無しさん
22/09/29 19:33:01.23 HOy6u/66.net
アドバイスありがとうございます。ソースのdialogはonClickの引数と同名でしたが実際は別名で、ここではdialog1とします。また、dismiss()は動作していたようでダイアログが消えて数秒経つとANRが出ます。アドバイス戴いたようにdismiss()をハンドラーにしましたが同じ結果です。
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
new AlertDialog.Builder(getActivity())
.setTitle("Test1")
.setMessage("test1")
.setPositiveButton("OK", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog1 = new AlertDialog.Builder(getActivity())
.setTitle("Test2")
.setMessage("test2")
.show();
new Thread(() -> {
try {
Thread.sleep(5000);
} catch (Exception e) {
} finally {
handler1.post(new Runnable() {
@Override
public void run() {
dialog1.dismiss();
}
});
}
}).start();
}
})
.show();
}
});

201:デフォルトの名無しさん
22/09/30 08:57:44.46 19KFk5dY.net
>>196
すみません、行数制限で改行を削ったのでお見苦しい表示になっていました。
ボタンのonClickでAlertDialog出してOKで更にAlertDialog出してのスレッド起こして5秒処理が最初のAlertDialogが閉じていないためANRになった感じです。
5秒を1秒にするとANRは発生しなかったです。
また、Handler(Looper.getMainLooper())を使わずに.dismiss()でダイアログを閉じても結果は同じですが、Handlerでやるべきですか?

202:デフォルトの名無しさん
22/09/30 16:16:53.09 uWNOO7Yd.net
thread使わずともnew Handler().postDelayed(dialod1::dismiss, 5000)でいいよ
ついでにThreadでもhandlerでもダイアログを一定時間後に閉じる処理試したけど5秒でも10秒でもANR発生しなかった
消したいダイアログ内でなんか変なことやってるとかかね
まあ何をするかにもよるがtoastとかsnackbarとか別の手段がいいんじゃないかな

203:デフォルトの名無しさん
22/09/30 18:50:39.08 19KFk5dY.net
>>198
実際のアプリは外部機器用のリモコンです。
ボタンを押すと「初期化しますか?」と再確認のダイアログ1が出ます。
Yesで「暫くお待ちください。」とダイアログ2が出て初期化コマンドを送信して、
返事が来るまでの時間が3~10秒くらいで自動的にダイアログ2が消えることを予定しています。
それまでにダイアログ1は消えてるはず。
ダイアログ2は他の操作をブロックする意味もあるのです。
ところでアプリ動作中は他のタスクに画面を取られないようにする方法知りませんか?
OnPauseすると安全のため外部機器に停止信号を送っているけどスマホをリモコンで占有したいのです。

204:デフォルトの名無しさん
22/09/30 19:39:47.36 uWNOO7Yd.net
アプリ側でコントロールする方法はない
いつ電話がかかってきてもいいように実装するべし
でもまあその目的ならservice使えばいいんじゃないかな

205:デフォルトの名無しさん
[ここ壊れてます] .net
>>200
UIが常にパネルに有って欲しい。
タブレットで電話無しでも良い。
居酒屋とかファミレスの注文端末みたいに使いたい。
アプリの終了ボタンで通常の操作な戻る感じで。

206:デフォルトの名無しさん
22/09/30 22:48:05.76 k/a759Zf.net
>>199
画面のオーバーレイは?
今でも使えるのか分からないけど
facebookのメッセンジャーは常に画面に表示されるよね?

207:デフォルトの名無しさん
22/10/06 19:13:52.40 K0ZDn7Vu.net
非推奨になったというActivityResultの替えで次のようにしろと各解説サイトにあるんですが
ActivityResultLauncher<Intent> mGetContent = registerForActivityResult(new ActivityResultContracts.GetContent(),
new ActivityResultCallback<ActivityResult>() {
@Override
public void onActivityResult(ActivityResult result) {
// Handle the returned
}
});
この registerForActivityResult の部分が赤線になってどうにもうまくいきません。
使用言語はjavaです。javaの解説でもこうなってます。
このregisterForActivityResultはjavaでは使えないんでしょうか?Kotlinでなければ。

208:デフォルトの名無しさん
22/10/06 20:30:50.44 r++stwRn.net
俺はよくわかんねーけどQRのスクショをgetするのに以下のコードを使ってる。
ActivityResultLauncher<Intent> _imageLauncher = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), new ActivityResultCallbackFromImage());
// QRコードのスクショ取得要求処理
public void ImageCapture() {
Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
intent.addCategory(Intent.CATEGORY_OPENABLE);
intent.setType("*/*");
_imageLauncher.launch(intent);
}
// QRコードのスクショ取得処理
private class ActivityResultCallbackFromImage implements ActivityResultCallback<ActivityResult> {
@Override
public void onActivityResult(ActivityResult result) {
if (result.getResultCode() == RESULT_OK) {
if (result.getData() != null) {
//結果を受け取った後の処理
ParcelFileDescriptor pfDescriptor = null;
try {
Uri uri = result.getData().getData();
pfDescriptor = getContentResolver().openFileDescriptor(uri, "r");
if (pfDescriptor != null) {
FileDescriptor fileDescriptor = pfDescriptor.getFileDescriptor();
Bitmap bmp = BitmapFactory.decodeFileDescriptor(fileDescriptor);
pfDescriptor.close();
以下省略

209:デフォルトの名無しさん
22/10/06 20:39:35.08 K0ZDn7Vu.net
ありがとうございます。
MainActivity extends Activityを
MainActivity extends AppCompatActivity
に変えることでビルドできるようになったのですが
今度は
onCreate()の
setContentView(layout);で
起動時に終了するようになってしまいました。
AppCompatActivityでsetContentViewを使う時は
何か注意が必要なんでしょうか?

210:デフォルトの名無しさん
22/10/07 06:56:59.13 I/lVM+sd.net
まずはだな、エラー見ようか

211:デフォルトの名無しさん
22/10/09 18:30:15.37 ipDL7AO2.net
>>205
せめてonCreate()のsetContentView(layout);までのコードを見たい

212:デフォルトの名無しさん
22/10/20 21:58:20.25 mHxlvUKd.net
ASを最新のDolphinにしてからLVLのファイルで赤線が入るようになりました。
SDK等のversionは32にしてます。Gradleは7.5です。
以前のASでは警告はあったものの赤線はありませんでした。
ビルドするとAPKExpansionPolicy.javaというファイルが出て
import org.apache.http.NameValuePair;
import org.apache.http.client.utils.URLEncodedUtils;
のところに赤線が入りCannot resolve symbol 'NameValuePair'
No documentation found.となります。
このimportが通らないので以下
List<NameValuePair> extraList = URLEncodedUtilsや
item.getName()の部分にも赤線になります。
検索してもピンとくる情報は見当たりません。
一応ビルドはできて起動もできます。
それと古いLVLの解説ページではversionは2があるような画像がありますが
私の環境ではダウンロードできるのは1しか表示されません。
LVLファイルの格納場所もWebの情報と違ってmarket_licensingというフォルダ内にあるようです。
これも関係あるのでしょうか?
解決策やヒントがありましたらよろしくお願いします。

213:デフォルトの名無しさん
22/10/20 22:18:39.33 uG77Gpg1.net
システムテーマ変更等によるActivity再描画時に最後に表示されていたFragmentを再表示したいのだけど…
最後に表示されていたFragmentの取得などどうやればいいんでしょ?

214:デフォルトの名無しさん
22/11/03 22:23:49.20 tLScz4qV.net
質問があります
同一Activity内に複数のSurfaceViewがあり、
同時に同じ内容の書き込み処理を
実現する場合はどうすればよいでしょうか?
| A | B |
みたいなLayoutでAに〇を書き込むと、その内容がBにも反映され
| 〇 | 〇 |
となるようにしたいです

215:デフォルトの名無しさん
22/11/04 06:26:20.78 mO7CFdM7.net
LiveDataとかでオブザーブすれば?

216:デフォルトの名無しさん
22/11/07 08:17:20.61 BH3cyqoP.net
openFileInputをFragmentに記述するとCannot resolve method 'openFileInput(java.lang.String)'となります。
MainActivityでは使えています。
とりあえずMainActivityに関数定義して呼び出していますが、直接記述できないのかな?

217:デフォルトの名無しさん
22/11/07 09:12:53.21 C5c3ymU1.net
>>212
すみません。
FragmentだからgetContext()を忘れてました。

218:デフォルトの名無しさん
22/11/14 17:37:04.50 Nub2Wf5o.net
レイアウトのデザインでtextViewを
tools:layout_editor_absoluteY="0dp"でマージンも0で置いたのですが
上がぴったりくっつかずに結構な余白はできてしまってます。
これは原因はなんでしょうか?
ぴったり隙間ない0にするにはどうすればよいですか?

219:デフォルトの名無しさん
22/11/14 21:31:00.35 Nub2Wf5o.net
解決しました

220:デフォルトの名無しさん
22/11/14 21:36:51.66 pVkJR5jl.net
>>215
自己解決した場合もその内容を書くべきだと思うよ。

221:デフォルトの名無しさん
22/11/14 21:47:42.50 Nub2Wf5o.net
よくわからないけど拾ってきたサンプル使ったらいけました。
多分スタイルとの相性だったのかと。 レイアウトわかりにくくてめんどくさい。

222:デフォルトの名無しさん
23/02/09 00:56:19.86 RhsSSnxC.net
フラグメント間でStringデータのやり取りしたいのだけれども
受け取る側のフラグメントでデータが受け取れない
SafeArgs,Bundle,koinを使用したviewModelと試して見たけどそもそもデータが入ってなかった
どうすればいいのか

223:デフォルトの名無しさん
23/02/10 09:15:42.30 4wJL/51d.net
普通にできるしソースを見ないことには何とも

224:デフォルトの名無しさん
23/02/10 17:13:21.52 4kC0OUxE.net
test

225:デフォルトの名無しさん
23/02/10 17:17:28.53 4kC0OUxE.net
URLリンク(imgur.com)

226:デフォルトの名無しさん
23/02/10 17:20:55.48 4kC0OUxE.net
こちらです
viewpager2に、tab1~tabnと並べてFragmentStateAdapterでページの切り替えを行っています

227:デフォルトの名無しさん
23/02/10 17:28:21.26 4kC0OUxE.net
BundleやSafeArgsは画面遷移を伴った渡し方があったのですが、どこに引数として渡せばよいのか分からず。という理解です

228:デフォルトの名無しさん
23/02/10 17:43:20.08 aGrf1TET.net
つか、Tab1FragmentのMainViewModelのスコープどうなってんの?
それだとフラグメントに結びついてるっぽいからMainViewModel のインスタンスがフラグメント毎に作成されるから渡せるわけない
ViewModel経由で渡す場合、フラグメントをホストしている共通のアクティビティのスコープでMainViewModel作成しないと駄目
もしくは
URLリンク(developer.android.com)

229:デフォルトの名無しさん
23/02/10 17:58:34.14 aGrf1TET.net
URLリンク(developer.android.com)
スコープ意識しないと同じMainViewModelのインスタンスを参照できない
Tab1FragmentのViewModelの取得部分を
by viewModelsじゃなくて
by activityViewModelsとか
もちろん他の部分も

230:デフォルトの名無しさん
23/03/02 20:57:54.45 MqPgu4TH.net
スマホ2台のSocket通信でトラブっています
待ち受け側A(192.168.1.111)
public void WifiTaskRun() {
Thread WifiThread = new Thread(() -> {
try {
mServerSocket = new ServerSocket(1234);
mSocket = mServerSocket.accept();

}

});
WifiThread.start();
}
送り側B(192.168.1.112)
public void WifiTaskRun() {
Thread WifiThread = new Thread(() -> {
try {
mSocket = new Socket("192.168.1.111", 1234);

}

});
WifiThread.start();
}
AのWifiTaskRun()を呼び出してからBのWifiTaskRun()を呼び出すと、AはmServerSocket.accept()で止まっていて、
Bはnew Socket(~)でjava.net.NoRouteToHostException: Host unreachableでcatchされます。
何か間違ているのでしょうか?

231:デフォルトの名無しさん
23/03/02 21:50:26.65 abFsQ7Yl.net
宛先に到達できてないんだからルータの設定見直してみては

232:デフォルトの名無しさん
23/03/03 11:20:24.66 hk1vIV+F.net
>>227
解決しました。
Bのスマホ(SCG07)のWiFi設定でMACアドレスタイプがデフォルトの"ランダム化されたMAC"だったので"端末のMAC"にしたらOKでした。
Aのスマホには設定がありません。
android studioのWiFiデバッグも知らない間に設定が消えるので、これが原因だったのか?
"ランダム化されたMAC"でも動作させたいけどどうしたら良いのか?

233:デフォルトの名無しさん
23/03/03 11:32:20.69 hk1vIV+F.net
>>228
解決と思った、また同じ現象になった。
今度はランダムで設定して動作したが、何か不安定だ?

234:デフォルトの名無しさん
23/03/03 20:25:44.72 hk1vIV+F.net
ルーターのMACアドレスフィルター機能を無効にしたらOKだった。

235:デフォルトの名無しさん
23/03/07 23:47:03.05 6mbkztgh.net
MACアドレスフィルタとステルスSSIDは百害あって一利なし

236:デフォルトの名無しさん
23/03/08 11:38:43.29 vTZN1yCJ.net
デスクトップにprivate_key.pepkがあるけど何に使うのですか?

237:デフォルトの名無しさん
23/04/08 21:42:35.86 R+Wqhk0Q.net
attachBaseContextでSharedPreferences prefs = getPreferences(Context.MODE_PRIVATE)を使いたかったが例外が発生するのか?

238:デフォルトの名無しさん
23/04/15 18:10:50.96 u/cNI/cn.net
attachBaseContextてなあに

239:デフォルトの名無しさん
23/06/26 20:11:24.90 XNhAuZJ8.net
NDKってバグ多いよな
問題点や回避方法がまとまってるところとかある?

●NativeActivity & EGL
ウィンドウサイズ変更後最初の描画がくずれる

●AAudio Input
デフォルトプリセットだと入力データレートがおかしい機種がある
プリセットによって音が入力されない機種がある
ステレオ入力でも左チャンネルしか音が入力されない機種がある
(たいていの機種が何かしら問題がある)

240:デフォルトの名無しさん
23/06/28 23:59:07.01 BVdlIcNn.net
ή∞!!!!
粉∞!!!!!
堅∞!!!!!!
Ⅳ∞!!!!!!!
刃∞!!!!!!!!
輔∞!!!!!!!!!
書∞!!!!!!!!!!
棚∞!!!!!!!!!!!

241:デフォルトの名無しさん
23/07/15 13:32:21.20 qTZx5K+e.net
ナビゲーションメニューで組んでいますが、8インチとかの大きな画面にも対応した、UIの例ありませんか?

242:デフォルトの名無しさん
23/09/13 16:01:11.93 1gsZLk61.net
Bluetooth 5.1で追加された「方向検知機能」を知ろう
URLリンク(edn.itmedia.co.jp)
SDKで方向検知の値(AoAやAoD)に対応していますか?
試してみてもRSSIは取得出来ますが、方向検知はみつからなくって

243:過去ログ ★
[過去ログ]
■ このスレッドは過去ログ倉庫に格納されています


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch