NativeScript / NativeScript/android

Crash: No implementation found for void com.tns.AssetExtractor.extractAssets

オープン
#1,225 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

主要言語
C++
スター
563
フォーク
144
平均マージ
10時間 46分
マージ済み PR(30日)
14

説明

Environment

  • CLI: 4.2.1
  • Cross-platform modules: 4.2.0
  • Android Runtime: 4.2.0

Describe the bug

We got several crash reports mostly occuring on Huawei devices running Android 9.0 where the app crashes on startup because of a missing AssetExtractor implementation (which seems pretty weird)

Any ideas what's happening there and how to resolve it?

Stack trace:

12-07 15:44:02.932 10130 12663 12663 E No implementation found for void com.tns.AssetExtractor.extractAssets(java.lang.String, java.lang.String, java.lang.String, boolean) (tried Java_com_tns_AssetExtractor_extractAssets and Java_com_tns_AssetExtractor_extractAssets__Ljava_lang_String_2Ljava_lang_String_2Ljava_lang_String_2Z)
12-07 15:44:02.933 10130 12663 12663 D AndroidRuntime: Shutting down VM
--------- beginning of crash
12-07 15:44:02.934 10130 12663 12663 E AndroidRuntime: FATAL EXCEPTION: main
12-07 15:44:02.934 10130 12663 12663 E AndroidRuntime: Process: ***.***.control, PID: 12663
12-07 15:44:02.934 10130 12663 12663 E AndroidRuntime: java.lang.UnsatisfiedLinkError: No implementation found for void com.tns.AssetExtractor.extractAssets(java.lang.String, java.lang.String, java.lang.String, boolean) (tried Java_com_tns_AssetExtractor_extractAssets and Java_com_tns_AssetExtractor_extractAssets__Ljava_lang_String_2Ljava_lang_String_2Ljava_lang_String_2Z)
12-07 15:44:02.934 10130 12663 12663 E AndroidRuntime: 	at com.tns.AssetExtractor.extractAssets(Native Method)
12-07 15:44:02.934 10130 12663 12663 E AndroidRuntime: 	at com.tns.AssetExtractor.extractAssets(Unknown Source:38)
12-07 15:44:02.934 10130 12663 12663 E AndroidRuntime: 	at com.tns.RuntimeHelper.initRuntime(Unknown Source:111)
12-07 15:44:02.934 10130 12663 12663 E AndroidRuntime: 	at com.tns.NativeScriptApplication.onCreate(Unknown Source:19)
12-07 15:44:02.934 10130 12663 12663 E AndroidRuntime: 	at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1162)
12-07 15:44:02.934 10130 12663 12663 E AndroidRuntime: 	at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6535)
12-07 15:44:02.934 10130 12663 12663 E AndroidRuntime: 	at android.app.ActivityThread.access$1900(ActivityThread.java:267)
12-07 15:44:02.934 10130 12663 12663 E AndroidRuntime: 	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1957)
12-07 15:44:02.934 10130 12663 12663 E AndroidRuntime: 	at android.os.Handler.dispatchMessage(Handler.java:109)
12-07 15:44:02.934 10130 12663 12663 E AndroidRuntime: 	at android.os.Looper.loop(Looper.java:207)
12-07 15:44:02.934 10130 12663 12663 E AndroidRuntime: 	at android.app.ActivityThread.main(ActivityThread.java:7439)
12-07 15:44:02.934 10130 12663 12663 E AndroidRuntime: 	at java.lang.reflect.Method.invoke(Native Method)
12-07 15:44:02.934 10130 12663 12663 E AndroidRuntime: 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:524)
12-07 15:44:02.934 10130 12663 12663 E AndroidRuntime: 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:958)

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

調査の方向性

エントリーポイントの AssetExtractor.extractAssets から始め、NativeScriptApplication.onCreate 中の RuntimeHelper.initRuntime からの呼び出しを追跡します。報告された JNI メソッドシグネチャと利用可能な実装を比較し、影響を受ける Android 構成で起動を再現します。extractAssets に対して起動時に UnsatisfiedLinkError が発生しなくなれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
android, cpp, java
領域
mobile-dev
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
停滞
明瞭さ
説明が足りない
初心者へのやさしさ
28/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。