-
Notifications
You must be signed in to change notification settings - Fork 6k
Pass the filename directly to JNI for loading deferred component. #23824
Conversation
When .so files are in the lib/ path in the APK, it can be dlopen-ed directly using just the filename. We don't need to search for the file. The interface has thus been changed to accept a single path instead of a search directory. Also instead of hardcoding the .so basename and assets directory, read them from FlutterApplicationInfo instead.
|
Another note, in the .aab file that @GaryQian sent to me, the .so file in the base module is called The change is this PR will be looking for |
|
Changing to |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, thanks!
| * when a library is sucessfully found. When the found library is invalid, no additional paths | ||
| * will be attempted. | ||
| * @param sharedLibraryName File name of the .so file to be loaded, or if the file is not already | ||
| * in LD_LIBRARY_PATH, the full path to the file. Note: .so files in the lib/<abi> directory |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Remove Note. Also, may want to replicate this info about lib/ in the DeferredComponentManager docs as well.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Updated, and added this to the DeferredComponentManager docs. Thanks for the review!
* 5b2defd Roll Fuchsia Mac SDK from MrtHftV0U... to 7nZajqutF... (flutter/engine#23827) * c8ffb20 Roll Skia from 87a055b02027 to e0d023562bd9 (1 revision) (flutter/engine#23829) * 296902b implemented GetMainContext() for opengl (flutter/engine#23634) * 5cf3eae Roll Skia from e0d023562bd9 to 982127b7d57d (4 revisions) (flutter/engine#23831) * fd9a079 [iOS] Fixes DisplayLinkManager leaks (flutter/engine#22194) * b241537 Roll Fuchsia Linux Toolchain from git_revision:2c0536b76b35fa592ac7b4a0e4bb176eaf55af75 to IJxh_9dNS... (flutter/engine#23832) * 5c2003f Roll Skia from 982127b7d57d to 6de1e52d0b12 (1 revision) (flutter/engine#23834) * 5b9cd44 Automatically download Noto fonts as backup fonts in CanvasKit mode (flutter/engine#23728) * 70a6824 Roll Dart SDK from 5e24a66b1bb8 to 704928da5702 (2 revisions) (flutter/engine#23838) * b0c46d8 Roll Skia from 6de1e52d0b12 to 8a37fb2c605b (5 revisions) (flutter/engine#23836) * d4132ea Use references when iterating over SkParagraph text boxes (flutter/engine#23837) * 87960d8 Fix typo in embedder unit tests (flutter/engine#23783) * 7f66714 iOS deeplink sends "path + query" instead of just path (flutter/engine#23562) * 1474d08 Roll Skia from 8a37fb2c605b to 37d16f135265 (4 revisions) (flutter/engine#23839) * 3da13fc Make android more lenient when it comes to out-of-order key event responses (flutter/engine#23604) * 9223073 Fix background crash when FlutterView going appear while app goes background (flutter/engine#23175) * 7c19824 Pass the filename directly to JNI for loading deferred component. (flutter/engine#23824) * 5dc2469 Reland path vol tracker (flutter/engine#23840) * e7e76f1 Roll Skia from 37d16f135265 to e89d8ea20b62 (2 revisions) (flutter/engine#23841) * 07f4861 Roll Dart SDK from 704928da5702 to 1db2d4d95562 (1 revision) (flutter/engine#23846) * 993ab78 Roll Skia from e89d8ea20b62 to c09761f57605 (1 revision) (flutter/engine#23843) * a4836a6 Call Dart plugin registrant if available (flutter/engine#23813) * 475a234 Roll Fuchsia Linux SDK from UGavhI1zv... to mODEe2CNk... (flutter/engine#23848) * b51da31 Roll Skia from c09761f57605 to 450f8565c7f3 (5 revisions) (flutter/engine#23851) * cb7106d Roll Skia from 450f8565c7f3 to 372791761157 (1 revision) (flutter/engine#23855) * 69980e5 Roll Fuchsia Mac SDK from 7nZajqutF... to tuJCioUf3... (flutter/engine#23857) * 20ff574 Roll Skia from 372791761157 to ce75036b3eaf (4 revisions) (flutter/engine#23858) * 0118b54 Implements accessibility bridge in common library (flutter/engine#23491) * ffc77f0 Search multiple paths when loading deferred component .so files. (flutter/engine#23849) * 71d264d Revert "implemented GetMainContext() for opengl (#23634)" (flutter/engine#23859) * fb48735 Roll Skia from ce75036b3eaf to cc6961b9ac5e (3 revisions) (flutter/engine#23860) * fdddf87 Roll Dart SDK from 1db2d4d95562 to 82b4c77fb17f (2 revisions) (flutter/engine#23861)
…utter#23824) When .so files are in the lib/ path in the APK, it can be dlopen-ed directly using just the filename. We don't need to search for the file. The interface has thus been changed to accept a single path instead of a search directory. Also instead of hardcoding the .so basename and assets directory, read them from FlutterApplicationInfo instead.
When .so files are in the lib/ path in the APK, it can be dlopen-ed
directly using just the filename. We don't need to search for the file.
The interface has thus been changed to accept a single path instead of a
search directory.
Also instead of hardcoding the .so basename and assets directory, read
them from FlutterApplicationInfo instead.
Pre-launch Checklist
writing and running engine tests.
///).