Android開発質問スレ Part2 (243レス)
上下前次1-新
1(1): デフォルトの名無しさん (ワッチョイ 6310-7zv1) [sage] 2023/02/05(日)19:16 ID:d5UWZ1fB0(1/3)
!extend:checked:vvvvv:1000:512
↑スレ立て時は1行目と2行目に「!extend:checked:vvvvv:1000:512」をコピペして立てて下さい
荒らし対策のために強制コテハン表示&コピペミス防止
http://info.2ch.net/index.php/BBS_SLIP
Androidの開発全般に関する質問を扱います。
前のスレ
Android開発質問スレ
2chスレ:tech VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
224: デフォルトの名無しさん (ブーイモ MMb3-ieKl) [] 01/08(水)11:25 ID:LgTxFklPM(1)
オフラインアプリなんだけどKotlinでWebViewに大きな配列データ渡すときって
JSON形式でファイルにして渡したほうが早い?
JavaScriptの関数の引数に配列データ渡す方法だと、どえらい時間かかるの。
chunkとかいうのも試したけどほとんど変化なし。
225: デフォルトの名無しさん (アウアウウー Sa85-Y8TR) [] 01/09(木)17:00 ID:2CxgFrpya(1)
ファイルが正解
226: デフォルトの名無しさん (ブーイモ MMb3-ieKl) [] 01/10(金)06:06 ID:LI2heNE1M(1)
ファイルにしたら多少速くなりました
227: 警備員[Lv.11][芽] (ワッチョイ 4bff-0nh0) [] 01/10(金)20:34 ID:1wSxaQph0(1)
!donguri
228(1): デフォルトの名無しさん (ワッチョイ be68-zF+6) [sage] 01/17(金)06:33 ID:HG7gwVzM0(1)
gradleでビルドしているアプリにJNIでライブラリのバイナリ(libA.so)をロードしたく、
プロジェクト内でjniLibsというフォルダを作りそこに置いたら、認識はされたようです
ですが、今度は実行時にlibA.soが依存しているlibBが見つからずエラーになります
というわけでlibBもjniLibsに置いてみたのですが、どうやら
- 元のライブラリはlibB.so.1という名前だった
- libB.so.1というファイル名だとjniLibsに置いてもアプリのビルド時に除外されるっぽい
(apkの中を見たときにlibB.so.1が入っていない)
- libB.so.1をllibB.soにファイル名変更するとビルド時に認識されるが、実行時にlibB.so.1
は未解決のまま
というわけで、明示的にlibB.so.1を指定してビルド時にapkに含まれるようにしたら
よさそうだと思いますが、どのようなgradleの指定にしたらいいかご存知の方はいますか?
229: デフォルトの名無しさん (ワッチョイ a1b4-pNfh) [sage] 01/17(金)23:05 ID:Vwo7h/Ia0(1)
共有ライブラリってファイル名じゃなくて中に含まれる関数名しか見てない気がする
違ってたらごめん
230(1): デフォルトの名無しさん (ワッチョイ d547-Kw+3) [sage] 01/18(土)12:17 ID:ZEzNbt5p0(1/2)
>>228
WindowsだったらWSLでubuntuとかいれてreadelfコマンドでsoファイルの依存関係が見れる
適当なubuntuのsoファイルを見るとこんな感じ
$ readelf -d /usr/lib/libnetpbm.so.10
.......
0x0000000000000001 (NEEDED) Shared library: [libc.so.6]
0x000000000000000e (SONAME) Library soname: [libnetpbm.so.10]
AndroidStudioで作ったsoファイルも見れてこんな感じになっている
$ readelf -d ~/libfoo.so
.......
0x0000000000000001 (NEEDED) Shared library: [liblog.so]
0x0000000000000001 (NEEDED) Shared library: [libm.so]
0x0000000000000001 (NEEDED) Shared library: [libdl.so]
0x0000000000000001 (NEEDED) Shared library: [libc.so]
0x000000000000000e (SONAME) Library soname: [libfoo.so]
そのlibAとlibBの実際の依存関係もこれで確認できるだろう
231(1): デフォルトの名無しさん (ワッチョイ d547-Kw+3) [sage] 01/18(土)12:18 ID:ZEzNbt5p0(2/2)
調べてみるとAndroidは.so以外の名前の共有ライブラリファイルをサポートしていないみたいだな
ビルド時にパッケージングしてくれないだけじゃなくてくて、端末のランタイムがサポートしていないみたいな?情報が古いかもしれんが
だからライブラリそのものを作り直す必要があるんじゃないだろうか
libA.soを作るときにlibB.soを動的リンクするんじゃなくて、libB.aがたぶんあるだろうから、libA.soにlibB.aを静的リンクすれば解決する
232: 228 (ワッチョイ 6f68-GTnW) [sage] 01/19(日)07:45 ID:pBs5rxiX0(1)
皆さんどうもです
>>230
それで例えばNEEDEDの一つにlibc.so.6がありますがそれをロードする条件は
- SONAME が libc.so.6 で
- ファイル名も libc.so.6 である
ようなライブラリーがあれば読み込む、ということなのかな? と。しかし
>>231
>調べてみるとAndroidは.so以外の名前の共有ライブラリファイルをサポートしていないみたいだな
やはりそうなんですかね。それだと .so.6 とかはうまく組み込めなそうですね
>だからライブラリそのものを作り直す必要があるんじゃないだろうか
依存している全ライブラリのソースがあれば再ビルドしてまとめるという手はありますね
ふと思ったのは上の認識が正しければSONAMEをなんとか編集して .6とか取ればいいのかなと
だいぶハックの領域ですが。ただ、.6は本来必要があって付いているんでしょうが
233(1): デフォルトの名無しさん (ワッチョイ fb9e-4jap) [sage] 03/02(日)01:49 ID:Q8QqUz1P0(1)
NDKのドキュメントを見るといろんなクラスが定義されてて、native-activityだとか
そんなサンプルもありますが、
もしかして今ってC/C++だけで一通りアプリ(アクティビティ)やサービスを書けたりします?
234: 警備員[Lv.122][苗] (ワッチョイ 2bd5-2IS+) [sage] 03/02(日)02:44 ID:h6q+H0JB0(1)
なんでそんなめんどくさいことするん
235: デフォルトの名無しさん (ワッチョイ 01b5-Y5YW) [sage] 03/02(日)08:04 ID:e55JM6DW0(1)
manifestにはクラス名を書く必要があるだろうし簡単ではなさそうだよね
236: デフォルトの名無しさん (ワッチョイ 5387-BTKw) [sage] 03/02(日)23:20 ID:bQNA6zwE0(1)
>>233
そのサンプルのnative-activityのドキュメントにAndroid APIレベル9以降って書いてある
237: デフォルトの名無しさん (ワッチョイ 8b10-iQBB) [sage] 03/03(月)19:49 ID:OQ7q3jtm0(1)
!donguri
238: デフォルトの名無しさん (ワッチョイ a6b0-z5RJ) [] 03/11(火)07:49 ID:XAuedD1d0(1)
LadybugからMeerkatにアップデートしたらステップーオーバーで変な位置に飛ぶ状態
Ladybugに戻しても同じ動作でキャッシュを削除しても変わらず
エクスポートして別の場所にインポートしたら動作が正常になってMeerkatでも大丈夫でした
キャッシュ削除以外で同様なコマンドありますか?
239: デフォルトの名無しさん (ワッチョイ c925-eM9o) [] 03/21(金)23:11 ID:v629zwFr0(1)
NE3っていう耳かきカメラなんだけどさ。
コパイロットに聞いたら対応してんのandroidのバージョン5以降からじゃね。っていうんだよね。
俺のandroid2.3.3でちょっとばかし古いんだ。
で、アプリって自作できないかなと。
240: デフォルトの名無しさん (ワッチョイ b650-Zxw8) [] 04/24(木)10:49 ID:JmnRwG4W0(1)
最近アプリを更新公開したら以下の注意が出たのですが、自分のコードでは使ってない。
どうしたらよいのでしょうか?
お客様のアプリは、エッジ ツー エッジで非推奨の API またはパラメータを使用しています
エッジ ツー エッジおよびウィンドウの表示のために使用または設定している API またはパラメータの 1 つ以上が、Android 15 で非推奨になりました。お客様のアプリでは、サポートが終了した以下の API またはパラメータが使用されています。
android.view.Window.setStatusBarColor
android.view.Window.setNavigationBarColor
これらは次の場所で開始します。
androidx.activity.EdgeToEdgeApi26.setUp
androidx.activity.EdgeToEdgeApi29.setUp
com.google.android.material.bottomsheet.BottomSheetDialog.onCreate
com.google.android.material.internal.EdgeToEdgeUtils.applyEdgeToEdge
com.google.android.material.sidesheet.SheetDialog.onCreate
この問題を解決するには、これらの API またはパラメータの使用をやめてください。
build.gradleは以下です。
implementation 'androidx.appcompat:appcompat:1.7.0'
implementation 'com.google.android.material:material:1.12.0'
implementation 'androidx.constraintlayout:constraintlayout:2.2.1'
implementation 'androidx.lifecycle:lifecycle-livedata-ktx:2.8.7'
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.8.7'
implementation 'androidx.navigation:navigation-fragment:2.8.9'
implementation 'androidx.navigation:navigation-ui:2.8.9'
241: デフォルトの名無しさん (ドコグロ MMb1-a8gS) [] 04/24(木)11:30 ID:EB3sMTiUM(1)
使ってるんちゃうか😌
242: 警備員[Lv.6][新芽] (ワッチョイ b62c-KAX7) [sage] 04/24(木)14:24 ID:CTbhdHQN0(1)
間接的に使ってるんだろう
とりあえずライブラリを全部更新してみたら
243: 警備員[Lv.4][芽] (ワッチョイ 0f10-rxm+) [] 05/28(水)11:40 ID:wS+zlCxW0(1)
!donguri
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.014s