Android開発質問スレ Part2

2023/02/05(日) 19:16:57.21ID:d5UWZ1fB0
!extend:checked:vvvvv:1000:512
↑スレ立て時は1行目と2行目に「!extend:checked:vvvvv:1000:512」をコピペして立てて下さい
荒らし対策のために強制コテハン表示&コピペミス防止
http://info.2ch.net/index.php/BBS_SLIP

Androidの開発全般に関する質問を扱います。

前のスレ
Android開発質問スレ
https://mevius.5ch.net/test/read.cgi/tech/1472135665/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
258デフォルトの名無しさん (ワッチョイ 1396-jjfP)
垢版 |
2025/10/17(金) 13:55:45.11ID:juAhJ49r0
MediaRecorderクラスの使い方の質問なのですが
そのインスタンスをmrとして

mr.stop();
mr.reset();
mr.release();
mr=null;

の4行のそれぞれでは内部的にどのようなことが行われているか詳しく教えていただけませんか?
2025/10/18(土) 10:57:25.96ID:C27xPZaQ0
>>258
https://developer.android.com/reference/android/media/MediaRecorder
これ以上の情報が欲しければソースコード読むとかだな
260デフォルトの名無しさん (ワッチョイ 166b-1ZE+)
垢版 |
2025/10/25(土) 14:08:48.70ID:fMw822mK0
基本的な質問ですが
自作アプリでActivityAからActivityBを呼んでAが非表示になってます。
ここで他のアプリ(電話アプリでもなんでもいいけど)を操作していると自作アプリはosにより強制的に消されることがあるんですよね?
そうなったときまた自作アプリを立ち上げると立ち上がるのはActivityAですかActivityBですか?

いままで入門系の本はたくさん読んだけど、こんな基本的なことをはっきり書いてる本は一冊もない。どうなってるの。
2025/10/25(土) 14:52:20.58ID:bayQ7BSs0
B
バックキーで戻ったらAが復元されて開かれる
singleTaskとかその辺いじってたら挙動変わるかも
262デフォルトの名無しさん (ワッチョイ fada-91lC)
垢版 |
2025/10/25(土) 15:32:48.30ID:KfGQxKJS0
【田中角栄流】心の汚い女性の8つの見分け方|裏切る人の特徴と縁を切る究極の見極め術|名言|人間関係|処世術
youtube.com/watch?v=9Z09HRsRPNk


ネット上の発言での反論で明確な回答「論文」が無い人って・・・
2025/10/25(土) 18:31:35.14ID:3C917xDm0
>>260
Actiivtyの設計思想が順序保証しねえからいつ呼び出されても良いように作っとけよってなっとるやろ
264デフォルトの名無しさん (ワッチョイ e149-Qr12)
垢版 |
2025/10/27(月) 20:46:26.97ID:+Yoo2gGB0
初歩的な質問ですが
ActivityからServiceを立ち上げたらそれは別スレッドで実行されるのですか?
2025/10/27(月) 21:07:52.57ID:QYRHY6eG0
>>264
同じUIスレッドです
266デフォルトの名無しさん (ワッチョイ e149-Qr12)
垢版 |
2025/10/27(月) 22:12:05.44ID:+Yoo2gGB0
>>264
ありがとうございます
267デフォルトの名無しさん (ワッチョイ e149-Qr12)
垢版 |
2025/10/27(月) 22:13:02.69ID:+Yoo2gGB0
そしたら
Serviceは立ち上げるとコードでストップしない限り
永久に動き続けるんですか?
2025/10/28(火) 00:47:07.03ID:o5EFriX10
>>267
一定時間以上動き続けると強制停止になる
https://developer.android.com/topic/performance/vitals/anr
269デフォルトの名無しさん (ワッチョイ e149-Qr12)
垢版 |
2025/10/28(火) 01:07:48.11ID:7qnErpFB0
>>268
さっぱり分からないじゃないか。
その理由もそのURL先の説明も。

入門者がそのしくみを段階的に分かるようになるための本とかサイトはないのですか?
2025/10/28(火) 01:29:28.76ID:fdpxD9qe0
chatGptに聞いた方がいいぞ
2025/10/28(火) 01:30:41.16ID:5gVhC/FW0
>>269
https://developer.android.com/get-started/overview
272デフォルトの名無しさん (ワッチョイ e149-Qr12)
垢版 |
2025/10/28(火) 13:37:07.52ID:7qnErpFB0
> 271
ありがとうございます
しかしその先も竹を割ったようなわかりやすい解説とは言えないですね
273デフォルトの名無しさん (ワッチョイ e149-Qr12)
垢版 |
2025/10/28(火) 13:38:54.45ID:7qnErpFB0
基本的な質問でございます。

Activityは裏に行ったら常に破棄される可能性があるとのことですが、
普通にfinish()やBackボタンで終了されたときとちがいonDestroy()は呼ばれないという認識で正しいでござるか?
2025/10/28(火) 14:00:29.29ID:fdpxD9qe0
大体は呼ばれないけどたまに呼ばれるので呼ばれる想定で実装しておいた方がいい
開発者オプションでアクティビティを保持しないにしておいたら毎回破棄を再現できる
275デフォルトの名無しさん (ワッチョイ e149-Qr12)
垢版 |
2025/10/28(火) 14:02:09.68ID:7qnErpFB0
>>274
そんな適当な仕様になっているのか(ワラ。
開発者はいろいろ気をつかわねばならぬことがあって大変だな。
276デフォルトの名無しさん (ワッチョイ e149-Qr12)
垢版 |
2025/10/28(火) 14:04:56.13ID:7qnErpFB0
>>268
サービスも強制破棄になる可能性があるなら
自作の目覚ましアプリも作れなくない?
朝7:30にアラームが鳴るようサービスで動くようなアプリを作っても
サービスが破棄されて鳴らないことがあるなら会社に遅刻することもありえる?
2025/10/28(火) 15:26:15.49ID:o5EFriX10
>>276
ActivityやService内に実装したonCreate()やonStartCommand()みたいな関数はシステムからUIスレッド上で呼び出されるが、呼び出されたら数秒以内に関数の処理を終了させてリターンしなければいけないルールになっている
そのまま動き続けて何かしたい場合には別のスレッドを作ってそっちでやる必要がある
しかし別スレッドで動き続けるのにも年々制限が追加されてアラームを実現するような長時間の時間待ちには使えない
馬鹿なアプリが動き続けてバッテリーを減らすことになる可能性がある仕組みはほとんど潰された

アラームのようなものを実装するにはアラームマネージャを使う
https://developer.android.com/develop/background-work/services/alarms
278デフォルトの名無しさん (ワッチョイ e149-Qr12)
垢版 |
2025/10/28(火) 15:36:14.36ID:7qnErpFB0
>>277
素晴らしい情報ありがとうございます。
まずテクニカルなことの解釈や読解の前に
なぜわたしの知らないことをたくさん知っているの?
どの本やサイトで勉強したのかをまず非常に知りたいのですが、なぜでしょうか?
279デフォルトの名無しさん (ワッチョイ e149-Qr12)
垢版 |
2025/10/28(火) 15:37:26.53ID:7qnErpFB0
少なくともそんな情報は
いままで買ったり積ん読してるAndroid開発の入門書10冊くらいには載っていない気がする。
2025/10/28(火) 15:41:19.48ID:fdpxD9qe0
本よりChatGptに聞いた方が良いぞ
2025/10/28(火) 15:56:36.61ID:o5EFriX10
>>278
別のスレッドを作って~のあたりまではAndroidの入門書を読み進めればほとんど載っていただろう
昔はAsyncTaskを使うとかだったが今はKotlinコルーチンを使ってになるのかな

それ以降の情報は、アプリをメンテしているのならば毎年更新されるこれを見て理解をしなければいけない
https://developer.android.com/about/versions?hl=ja
いやでも理解することになる

でもいまならば、ほかの人が言っているようにChatGPTとかに聞いた方が早いだろう
とりあえずChatGPTが面倒だと思うならば、Google検索のAIモードでもけっこう情報は得られるぞ
282デフォルトの名無しさん (ワッチョイ e149-Qr12)
垢版 |
2025/10/28(火) 22:37:17.43ID:7qnErpFB0
>>281
さようでございましたか
じゃもっと本を読んで勉強しますわ
調べたら「Androidを支える技術」のIとIIみたいなのが中上級の本みいだけど、こういう高度な本ってほとんど出版されてないのかな?
283デフォルトの名無しさん (ワッチョイ e149-Qr12)
垢版 |
2025/10/28(火) 22:42:07.69ID:7qnErpFB0
Kotlinは嫌いだから一切知らないけどJavaで突き進むのはダメじゃないよね?
学習コストが高すぎる。
Kotlinは難しいと言われるJavaを簡単にした言語というのが本当だとすると
わざわざ文法が違うだけでKotlinを学ぶ意味は少ないし大(Java)は小(Kotlin)を兼ねるみたいな関係になってるんだったらますますKotlinは意味ないし。

もともとゲーム開発のUnityでC#やってるしフロントエンドのJavaScriptやバックエンドのPHP,SQLもやってるから
新言語を学ぶ余裕はない(他に勉強すること多すぎて)
284デフォルトの名無しさん (ワッチョイ 5326-k8wO)
垢版 |
2025/10/28(火) 22:54:46.06ID:b4eezzg/0
>>282
他の人も言ってるけど
本読むよりChatGPTに聞いたほうがいいよ
2025/10/29(水) 01:07:55.71ID:mTpOLlHP0
>>282
その本は基礎を固めるのにはよいと思うけどAndroid7対応だからけっこう古いね
Androidは8~16で随分変わってしまったからその辺の情報は公式の上のリンクかChatGPTなりに聞くかする必要があるだろう
2025/10/29(水) 01:08:44.39ID:mTpOLlHP0
>>283
Javaでも実力があれば組めるけど、Kotlinコルーチンを使ったサンプルを動かすのはきついし、将来Viewが非推奨になってComposeを使う必要が出てくるとKotlinが必須になるかもしれない
2025/10/29(水) 01:33:16.27ID:EdPQy0wU0
もはやAndroidはKotlinがデファクトスタンダードみたいな状況だから
ネットで調べ物してもKotlinの情報が多く見つかるだろうしそれをJavaに変換するコストを考えるとKotlinで書いた方が良いと思うけどなあ
2025/10/30(木) 01:23:15.33ID:XCVWCKKja
変なこだわりでコトリンを毛嫌いするよりとりあえず使ってみなよ
シンタクスシュガーだらけの言語なので記述の選択の幅が広すぎるから
「あれもこれも達人みたいに使えるようになりたい!!」みたいな欲張りな考えさえ捨てれば
誰でも普通にすっと使えるようになるから
289デフォルトの名無しさん (ワッチョイ 13ad-z5dq)
垢版 |
2025/10/30(木) 02:37:15.34ID:BLLztpmv0
>>283
> Kotlinは難しいと言われるJavaを簡単にした言語というのが本当だとすると

「簡単」というのが何を意味するのかによるな。
Java で書くと長くなって分かり辛くなるようなことを短く分かりやすく書ける(難しいことを簡単に書ける)という意味での簡単ならその通りだと思うが。
Kotlin で書いた方が色々と楽だよ。
290デフォルトの名無しさん (ワッチョイ 1b88-Qr12)
垢版 |
2025/10/30(木) 13:30:42.49ID:CyR0jNtQ0
>>284-286
ありがとうございます。
その本は熟読してみます。2冊読破するのに何ヵ月かかるかわかりませんが。
ChatGPTはよく嘘つくと言われますがプログラミングの分野ではどれほど信頼できるのでしょうかね?
291デフォルトの名無しさん (ワッチョイ 1b88-Qr12)
垢版 |
2025/10/30(木) 13:33:41.16ID:CyR0jNtQ0
わたしはKotlinを毛嫌いしています。
Javaで突き進めるところまでいくかあるいは永遠にJavaを使い続けます。
上位互換(この語の使い方があってるかわからないけど)になってるならなおさらKotlinはいらん気がするし。わたしの認識ではJavaすら難しいと考える人のために浅い知識のままでも開発できるようにしたのがKotlin。
292デフォルトの名無しさん (ワッチョイ 1b88-Qr12)
垢版 |
2025/10/30(木) 13:35:14.02ID:CyR0jNtQ0
ところで
onSaveInstanceStateで保存してデータはどこに保存されてるんですか?
PrefernceやSQLデータベースのようにAndroidの中のアプリ専用フォルダの中?
293デフォルトの名無しさん (ワッチョイ 297f-z5dq)
垢版 |
2025/10/30(木) 14:02:19.09ID:PehO0UxW0
>>291
Kotlinの方が多機能なので上位互換ではないよ
KotlinでJavaの機能は問題なく使えるが、JavaでKotlin固有の機能を使えるというわけではない。
現在のモダンなAndroid開発のフレームワークがKotlinで楽に実装できる設計になっているから、
今からJavaでゼロから開発するとKotlinで始めるより結果的により苦労すると思う
2025/10/30(木) 14:07:34.32ID:yJbeoAWR0
kotlinでやらないなら教えない
295デフォルトの名無しさん (ワッチョイ 2973-Qr12)
垢版 |
2025/10/30(木) 14:26:41.76ID:K4ZG0xDn0
しかし世の中で言語の普及率は
Java >>>>>>>>>> Kotlin
じゃないか

Javaは小昔からあって信頼がある。
KotlinはiPhone開発のObjective-Cのように消えてしまわないか?(わたしの本音:消えてしまえ)

バックエンド開発でもPHPやPythonがあるのにわざわざRubyを作った日本人がいたが、わざわざ開発者に多大なる言語習得コストを強いて無駄じゃなかったか?実際Rubyは下火になってるし日本だけでしか通用しない。
296デフォルトの名無しさん (ワッチョイ b1bc-Qr12)
垢版 |
2025/10/30(木) 14:27:44.86ID:HyNmcECK0
>>294
そりゃないよかあちゃん
297デフォルトの名無しさん (ワッチョイ 297f-z5dq)
垢版 |
2025/10/30(木) 14:40:46.60ID:PehO0UxW0
>>295
Java習得してるならKotlinでJavaのように書くことができるぞ
Kotlinでは型定義が後置になっているのでそういう違いだけ抑えておけばいい
Javaの土台があれば自分でコーディングするぶんには学習コスト一日かからん微々たるもの

サンプルコード読むときには省略(Kotlinの特徴)されまくってて最初は読めないケースがよくあると思うけど
今の時代AIに聞けば解決するだろうよ
2025/10/30(木) 14:55:14.84ID:D3rdby450
kotlinはとっても
2025/10/30(木) 16:52:54.68ID:ZBJXFhR00
>>292
そのデータはプロセスのメモリ上に保存されて、ファイルやDBに永続的な保存はされない

検索してみると、多分お前の読もうと言ってる本に書いてあるぞ
情報収集力低すぎね?そんな奴がKotlin批判とか笑えない
2025/10/30(木) 17:27:04.47ID:3ydcCZHL0
>>295
Objective-CがSwiftに世代交代したようにJavaもKotlinに世代交代される側だと思うぞ
2025/10/30(木) 18:04:05.36ID:yJbeoAWR0
AndroidはもはやKotlinがデファクトスタンダード
サーバー側も新規ならKotlinじゃね
2025/10/30(木) 18:35:19.50ID:3oj/Mu5eM
マルチプラで使おうと思ったけどまだ未成熟だったので使うのをやめた
303デフォルトの名無しさん (ワッチョイ 5326-k8wO)
垢版 |
2025/10/30(木) 19:32:03.91ID:pL484PV90
>>295
そもそもたかが言語習得コストを多大なるとか言ってる時点でプログラミング向いてないよ
特にKotlinなんて普通のJava経験者なら30分くらいで習得終わるし
2025/10/30(木) 19:46:40.25ID:y8q6nyI2M
今時JavaはできるけどKotlinはできませんなんてやつはAndroidエンジニアとして転職する先はないだろう
2025/10/30(木) 23:24:56.36ID:ZiwhU5I40
AIを信頼できるかなんて考える必要あるのか
5chやブログコードのコピペが信頼できるのか
2025/10/31(金) 00:23:33.05ID:qQ8zNQFO0
Kotlin消えてしまえなんていうやつはAndroid Studioも使うな
eclipseでやってろよ
2025/10/31(金) 08:14:08.49ID:o6usN2tJ0
みなさん、「毛嫌い」って言葉の意味を考えよう
308デフォルトの名無しさん (ワッチョイ e149-Qr12)
垢版 |
2025/10/31(金) 09:53:50.73ID:4nZ/u+/u0
広辞苑より

「毛嫌い」
(鳥獣が相手の毛なみによってすききらいすることから) 何という理由もなく、ただ感情的にきらうこと。「インテリを―する」
レスを投稿する

5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況