diff --git a/android/src/main/java/com/finogeeks/mop/api/mop/AppletHandlerModule.java b/android/src/main/java/com/finogeeks/mop/api/mop/AppletHandlerModule.java index d2b2c55..88dab1d 100644 --- a/android/src/main/java/com/finogeeks/mop/api/mop/AppletHandlerModule.java +++ b/android/src/main/java/com/finogeeks/mop/api/mop/AppletHandlerModule.java @@ -153,6 +153,7 @@ public class AppletHandlerModule extends BaseApi { @Nullable @Override + @SuppressWarnings("unchecked") public List getRegisteredMoreMenuItems(@NotNull String s) { CountDownLatch latch = new CountDownLatch(1); List moreMenuItems = new ArrayList<>(); @@ -162,9 +163,8 @@ public class AppletHandlerModule extends BaseApi { channel.invokeMethod("extensionApi:getCustomMenus", params, new MethodChannel.Result() { @Override public void success(Object result) { - List> ret = (List>) result; - FinAppTrace.d(TAG, "getCustomMenus success : " + ret + " size : " + ret.size()); - if (ret != null) { + if (result instanceof List) { + List> ret = (List>) result; for (Map map : ret) { String type = (String) map.get("type"); MoreMenuType moreMenuType; @@ -173,7 +173,28 @@ public class AppletHandlerModule extends BaseApi { } else { moreMenuType = MoreMenuType.ON_MINI_PROGRAM; } - moreMenuItems.add(new MoreMenuItem((String) map.get("menuId"), (String) map.get("title"), moreMenuType)); + String menuId = (String) map.get("menuId"); + if (menuId == null) { + menuId = ""; + } + String title = (String) map.get("title"); + if (title == null) { + title = ""; + } + String image = (String) map.get("image"); + if (image == null) { + image = ""; + } + moreMenuItems.add( + new MoreMenuItem( + menuId, + title, + image, + -1, + moreMenuType, + true + ) + ); } } latch.countDown(); diff --git a/example/pubspec.lock b/example/pubspec.lock index e86417e..86b7e85 100644 --- a/example/pubspec.lock +++ b/example/pubspec.lock @@ -42,7 +42,7 @@ packages: name: collection url: "https://pub.flutter-io.cn" source: hosted - version: "1.16.0" + version: "1.15.0" cupertino_icons: dependency: "direct main" description: @@ -56,7 +56,7 @@ packages: name: fake_async url: "https://pub.flutter-io.cn" source: hosted - version: "1.3.0" + version: "1.2.0" flutter: dependency: "direct main" description: flutter @@ -95,13 +95,6 @@ packages: url: "https://pub.flutter-io.cn" source: hosted version: "0.12.11" - material_color_utilities: - dependency: transitive - description: - name: material_color_utilities - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.1.4" meta: dependency: transitive description: @@ -115,14 +108,14 @@ packages: path: ".." relative: true source: path - version: "2.37.3" + version: "2.39.1" path: dependency: transitive description: name: path url: "https://pub.flutter-io.cn" source: hosted - version: "1.8.1" + version: "1.8.0" sky_engine: dependency: transitive description: flutter @@ -134,7 +127,7 @@ packages: name: source_span url: "https://pub.flutter-io.cn" source: hosted - version: "1.8.2" + version: "1.8.1" stack_trace: dependency: transitive description: @@ -169,14 +162,21 @@ packages: name: test_api url: "https://pub.flutter-io.cn" source: hosted - version: "0.4.9" + version: "0.4.3" + typed_data: + dependency: transitive + description: + name: typed_data + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.3.0" vector_math: dependency: transitive description: name: vector_math url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.2" + version: "2.1.1" sdks: - dart: ">=2.17.0-0 <3.0.0" + dart: ">=2.14.0 <3.0.0" flutter: ">=2.2.3" diff --git a/pubspec.lock b/pubspec.lock index 7d68fe5..f39f99b 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -42,14 +42,14 @@ packages: name: collection url: "https://pub.flutter-io.cn" source: hosted - version: "1.16.0" + version: "1.15.0" fake_async: dependency: transitive description: name: fake_async url: "https://pub.flutter-io.cn" source: hosted - version: "1.3.0" + version: "1.2.0" flutter: dependency: "direct main" description: flutter @@ -88,13 +88,6 @@ packages: url: "https://pub.flutter-io.cn" source: hosted version: "0.12.11" - material_color_utilities: - dependency: transitive - description: - name: material_color_utilities - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.1.4" meta: dependency: transitive description: @@ -108,7 +101,7 @@ packages: name: path url: "https://pub.flutter-io.cn" source: hosted - version: "1.8.1" + version: "1.8.0" sky_engine: dependency: transitive description: flutter @@ -120,7 +113,7 @@ packages: name: source_span url: "https://pub.flutter-io.cn" source: hosted - version: "1.8.2" + version: "1.8.1" stack_trace: dependency: transitive description: @@ -155,14 +148,21 @@ packages: name: test_api url: "https://pub.flutter-io.cn" source: hosted - version: "0.4.9" + version: "0.4.3" + typed_data: + dependency: transitive + description: + name: typed_data + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.3.0" vector_math: dependency: transitive description: name: vector_math url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.2" + version: "2.1.1" sdks: - dart: ">=2.17.0-0 <3.0.0" + dart: ">=2.14.0 <3.0.0" flutter: ">=2.2.3"