Merge branch 'master' into major

# Conflicts:
#	android/build.gradle
master
kangxuyao 2023-04-23 16:12:25 +08:00
commit 861bab0492
21 changed files with 288 additions and 60 deletions

View File

@ -91,6 +91,6 @@ kapt {
}
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.finogeeks.lib:finapplet:2.41.0-alpha20230408v01'
implementation 'com.finogeeks.mop:plugins:2.41.0-alpha20230408v01'
implementation 'com.finogeeks.lib:finapplet:2.40.4-dev20230417v01'
implementation 'com.finogeeks.mop:plugins:2.40.4-dev20230417v01'
}

View File

@ -12,7 +12,7 @@ import androidx.annotation.NonNull;
import com.finogeeks.lib.applet.client.FinAppProcessClient;
import com.finogeeks.lib.applet.client.FinAppClient;
import com.finogeeks.lib.applet.client.FinAppTrace;
import com.finogeeks.lib.applet.modules.log.FLog;
import com.finogeeks.lib.applet.interfaces.FinCallback;
import com.finogeeks.lib.applet.page.view.moremenu.MoreMenuItem;
import com.finogeeks.lib.applet.page.view.moremenu.MoreMenuType;
@ -58,7 +58,7 @@ public class AppletHandlerModule extends BaseApi {
public void invoke(String event, Map param, ICallback callback) {
if ("getPhoneNumberResult".equals(event)) {
FinAppTrace.d("AppletHandlerModule", "getPhoneNumberResult");
FLog.d("AppletHandlerModule", "getPhoneNumberResult");
getPhoneNumberResult(event, param, callback);
return;
}
@ -203,13 +203,13 @@ public class AppletHandlerModule extends BaseApi {
@Override
public void error(String errorCode, String errorMessage, Object errorDetails) {
FinAppTrace.e(TAG, "getCustomMenus errorCode : " + errorCode + " errorMessage : " + errorMessage);
FLog.e(TAG, "getCustomMenus errorCode : " + errorCode + " errorMessage : " + errorMessage);
latch.countDown();
}
@Override
public void notImplemented() {
FinAppTrace.d(TAG, "getCustomMenus notImplemented");
FLog.d(TAG, "getCustomMenus notImplemented");
latch.countDown();
}
});
@ -219,7 +219,7 @@ public class AppletHandlerModule extends BaseApi {
} catch (InterruptedException e) {
e.printStackTrace();
}
FinAppTrace.d(TAG, "getRegisteredMoreMenuItems moreMenuItems : " + moreMenuItems + " size : " + moreMenuItems.size());
FLog.d(TAG, "getRegisteredMoreMenuItems moreMenuItems : " + moreMenuItems + " size : " + moreMenuItems.size());
return moreMenuItems;
}
@ -234,19 +234,19 @@ public class AppletHandlerModule extends BaseApi {
channel.invokeMethod("extensionApi:onCustomMenuClick", params, new MethodChannel.Result() {
@Override
public void success(Object result) {
FinAppTrace.d(TAG, "onCustomMenuClick success");
FLog.d(TAG, "onCustomMenuClick success");
iAppletCallback.onSuccess(null);
}
@Override
public void error(String errorCode, String errorMessage, Object errorDetails) {
FinAppTrace.e(TAG, "onCustomMenuClick errorCode : " + errorCode + " errorMessage : " + errorMessage);
FLog.e(TAG, "onCustomMenuClick errorCode : " + errorCode + " errorMessage : " + errorMessage);
iAppletCallback.onFailure();
}
@Override
public void notImplemented() {
FinAppTrace.d(TAG, "onCustomMenuClick notImplemented");
FLog.d(TAG, "onCustomMenuClick notImplemented");
iAppletCallback.onFailure();
}
});
@ -303,20 +303,20 @@ public class AppletHandlerModule extends BaseApi {
channel.invokeMethod("extensionApi:getPhoneNumber", params, new MethodChannel.Result() {
@Override
public void success(Object result) {
FinAppTrace.d(TAG, "onCustomMenuClick success");
FLog.d(TAG, "onCustomMenuClick success");
// callback.onSuccess(null);
phoneNumberCallback = callback;
}
@Override
public void error(String errorCode, String errorMessage, Object errorDetails) {
FinAppTrace.e(TAG, "onCustomMenuClick errorCode : " + errorCode + " errorMessage : " + errorMessage);
FLog.e(TAG, "onCustomMenuClick errorCode : " + errorCode + " errorMessage : " + errorMessage);
callback.onFailure();
}
@Override
public void notImplemented() {
FinAppTrace.d(TAG, "onCustomMenuClick notImplemented");
FLog.d(TAG, "onCustomMenuClick notImplemented");
callback.onFailure();
}
});
@ -368,7 +368,7 @@ public class AppletHandlerModule extends BaseApi {
}
private void getPhoneNumberResult(String event, Map param, ICallback callback) {
FinAppTrace.d("AppletHandlerModule", "getPhoneNumberResult,param:" + param.toString());
FLog.d("AppletHandlerModule", "getPhoneNumberResult,param:" + param.toString());
callback.onSuccess(null);
if (phoneNumberCallback != null) {
try {

View File

@ -6,7 +6,7 @@ import android.os.Looper;
import android.util.Log;
import com.finogeeks.lib.applet.client.FinAppClient;
import com.finogeeks.lib.applet.client.FinAppTrace;
import com.finogeeks.lib.applet.modules.log.FLog;
import com.finogeeks.mop.api.BaseApi;
import com.finogeeks.mop.interfaces.ICallback;
import com.finogeeks.mop.service.MopPluginService;
@ -57,7 +57,7 @@ public class ExtensionApiModule extends BaseApi {
@Override
public void success(Object result) {
String json = GsonUtil.gson.toJson(result);
FinAppTrace.d(ExtensionApiModule.TAG, "channel invokeMethod:" + name
FLog.d(ExtensionApiModule.TAG, "channel invokeMethod:" + name
+ " success, result=" + result + ", json=" + json);
JSONObject ret = null;
if (json != null && !json.equals("null")) {
@ -80,7 +80,7 @@ public class ExtensionApiModule extends BaseApi {
@Override
public void error(String errorCode, String errorMessage, Object errorDetails) {
FinAppTrace.e(ExtensionApiModule.TAG, "channel invokeMethod:" + name
FLog.e(ExtensionApiModule.TAG, "channel invokeMethod:" + name
+ " error, errorCode=" + errorCode
+ ", errorMessage=" + errorMessage
+ ", errorDetails=" + errorDetails);
@ -114,7 +114,7 @@ public class ExtensionApiModule extends BaseApi {
@Override
public void success(Object result) {
String json = GsonUtil.gson.toJson(result);
FinAppTrace.d(ExtensionApiModule.TAG, "channel invokeMethod:" + name
FLog.d(ExtensionApiModule.TAG, "channel invokeMethod:" + name
+ " success, result=" + result + ", json=" + json);
JSONObject ret = null;
if (json != null && !json.equals("null")) {
@ -137,7 +137,7 @@ public class ExtensionApiModule extends BaseApi {
@Override
public void error(String errorCode, String errorMessage, Object errorDetails) {
FinAppTrace.e(ExtensionApiModule.TAG, "channel invokeMethod:" + name
FLog.e(ExtensionApiModule.TAG, "channel invokeMethod:" + name
+ " error, errorCode=" + errorCode
+ ", errorMessage=" + errorMessage
+ ", errorDetails=" + errorDetails);

View File

@ -0,0 +1,40 @@
package com.finogeeks.mop_example;
import android.content.Context;
import android.widget.TextView;
import com.finogeeks.lib.applet.modules.appletloadinglayout.IFinAppletLoadingPage;
import androidx.annotation.NonNull;
public class CustomLoadingPage extends IFinAppletLoadingPage {
public CustomLoadingPage(@NonNull Context context) {
super(context);
}
@Override
public int getFailureLayoutRes() {
return R.layout.layout_custom_loading_page_failure;
}
@Override
public int getLoadingLayoutRes() {
return R.layout.layout_custom_loading_page;
}
@Override
public void onLoadingFailure(@NonNull String s) {
((TextView)getFailureLayout().findViewById(R.id.failMsg)).setText(s);
}
@Override
public void onLoadingFailure(@NonNull String s, @NonNull String s1) {
((TextView)getFailureLayout().findViewById(R.id.failTitle)).setText(s);
((TextView)getFailureLayout().findViewById(R.id.failMsg)).setText(s1);
}
@Override
public void onUpdate(@NonNull String s, @NonNull String s1) {
((TextView)getLoadingLayout().findViewById(R.id.loadingTitle)).setText(s);
}
}

View File

@ -1,6 +1,8 @@
package com.finogeeks.mop_example;
import android.app.AlertDialog;
import android.app.Application;
import android.app.Dialog;
import android.content.Context;
// import android.support.annotation.NonNull;
import androidx.annotation.NonNull;
@ -27,11 +29,16 @@ public class MainApplication extends Application {
FinAppProcessClient.INSTANCE.getAppletProcessApiManager().setAppletProcessHandler(new IAppletProcessHandler(){
@Override
public boolean onNavigationBarMoreButtonClicked(@NonNull Context context, @NonNull String appId) {
// truefalse使
//
new AlertDialog.Builder(context)
.setTitle("更多视图")
.setMessage(appId)
.setPositiveButton("菜单", null)
.setNegativeButton("取消", null)
.show();
return false;
// truefalse使
return true;
}
});
}

View File

@ -0,0 +1,21 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:gravity="center">
<ProgressBar
android:id="@+id/loadingWaiting"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Widget.AppCompat.ProgressBar"
/>
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/loadingTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="@style/TextAppearance.AppCompat.Body2"
android:textStyle="bold"
android:layout_marginTop="16dp"
/>
</LinearLayout>

View File

@ -0,0 +1,23 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:gravity="center"
android:padding="24dp">
<TextView
android:id="@+id/failTitle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:textAppearance="@style/TextAppearance.AppCompat.Body1"
/>
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/failMsg"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:textAppearance="@style/TextAppearance.AppCompat.Caption"
android:layout_marginTop="16dp"
/>
</LinearLayout>

View File

@ -1,11 +1,11 @@
PODS:
- FinApplet (2.40.1)
- FinAppletExt (2.40.1):
- FinApplet (= 2.40.1)
- FinApplet (2.40.3)
- FinAppletExt (2.40.3):
- FinApplet (= 2.40.3)
- Flutter (1.0.0)
- mop (0.1.1):
- FinApplet (= 2.40.1)
- FinAppletExt (= 2.40.1)
- FinApplet (= 2.40.3)
- FinAppletExt (= 2.40.3)
- Flutter
DEPENDENCIES:
@ -24,10 +24,10 @@ EXTERNAL SOURCES:
:path: ".symlinks/plugins/mop/ios"
SPEC CHECKSUMS:
FinApplet: 053df5db21b766a8705a6fb809731ec19f75578e
FinAppletExt: 45c9fece1524d9eafa25e6bcd0fe492060492e3a
FinApplet: a76ded99df163388bb4de129df20c0ff44abe37c
FinAppletExt: 5c53d5c3554ce1be014871214a5c7a06f0bf9177
Flutter: 50d75fe2f02b26cc09d224853bb45737f8b3214a
mop: 8dffe3317decd528a199f7a8695d74174fded976
mop: 4881eb2c1d365d9cf148b5dc7f8eca2b7018121d
PODFILE CHECKSUM: 2317ba7584871ae8cd67fd0244fbd5e96fd06167

View File

@ -14,6 +14,8 @@
97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; };
97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; };
97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; };
A8C6E1F329E2FFEC00E3B446 /* LoadingView.m in Sources */ = {isa = PBXBuildFile; fileRef = A8C6E1F229E2FFEC00E3B446 /* LoadingView.m */; };
A8C6E1F629E3E71400E3B446 /* FlutterMethodChannelHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = A8C6E1F529E3E71400E3B446 /* FlutterMethodChannelHandler.m */; };
/* End PBXBuildFile section */
/* Begin PBXCopyFilesBuildPhase section */
@ -46,6 +48,10 @@
97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
A8C6E1F129E2FFEC00E3B446 /* LoadingView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = LoadingView.h; sourceTree = "<group>"; };
A8C6E1F229E2FFEC00E3B446 /* LoadingView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = LoadingView.m; sourceTree = "<group>"; };
A8C6E1F429E3E71400E3B446 /* FlutterMethodChannelHandler.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = FlutterMethodChannelHandler.h; sourceTree = "<group>"; };
A8C6E1F529E3E71400E3B446 /* FlutterMethodChannelHandler.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = FlutterMethodChannelHandler.m; sourceTree = "<group>"; };
B691CF78BE1464D3451E07AF /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; };
/* End PBXFileReference section */
@ -120,6 +126,10 @@
1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */,
74858FAE1ED2DC5600515810 /* AppDelegate.swift */,
74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */,
A8C6E1F129E2FFEC00E3B446 /* LoadingView.h */,
A8C6E1F229E2FFEC00E3B446 /* LoadingView.m */,
A8C6E1F429E3E71400E3B446 /* FlutterMethodChannelHandler.h */,
A8C6E1F529E3E71400E3B446 /* FlutterMethodChannelHandler.m */,
);
path = Runner;
sourceTree = "<group>";
@ -272,6 +282,8 @@
buildActionMask = 2147483647;
files = (
74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */,
A8C6E1F329E2FFEC00E3B446 /* LoadingView.m in Sources */,
A8C6E1F629E3E71400E3B446 /* FlutterMethodChannelHandler.m in Sources */,
1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;

View File

@ -3,10 +3,16 @@ import Flutter
@UIApplicationMain
@objc class AppDelegate: FlutterAppDelegate {
var channelHander : FlutterMethodChannelHandler?
override func application(
_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
) -> Bool {
let controller : FlutterViewController = window?.rootViewController as! FlutterViewController
channelHander = FlutterMethodChannelHandler(messenger: controller)
GeneratedPluginRegistrant.register(with: self)
return super.application(application, didFinishLaunchingWithOptions: launchOptions)
}

View File

@ -0,0 +1,16 @@
//
// FlutterMethodChannelHandler.h
// Runner
//
// Created by Haley on 2023/4/10.
//
#import <Flutter/Flutter.h>
#import <Foundation/Foundation.h>
@interface FlutterMethodChannelHandler : NSObject
- (instancetype)initWithMessenger:(NSObject *)messenger;
@end

View File

@ -0,0 +1,53 @@
//
// FlutterMethodChannelHandler.m
// Runner
//
// Created by Haley on 2023/4/10.
//
#import "FlutterMethodChannelHandler.h"
#import <FinApplet/UIApplication+FATPublic.h>
@interface FlutterMethodChannelHandler ()
@property (nonatomic,strong) FlutterMethodChannel *channel;
@end
@implementation FlutterMethodChannelHandler
- (instancetype)initWithMessenger:(NSObject<FlutterBinaryMessenger>*)messenger
{
self = [super init];
if (self) {
[self setupChannelWithMessenger:messenger];
}
return self;
}
- (void)setupChannelWithMessenger:(NSObject<FlutterBinaryMessenger>*)messenger
{
_channel = [FlutterMethodChannel methodChannelWithName:@"com.message.flutter_to_app" binaryMessenger:messenger];
[_channel setMethodCallHandler:^(FlutterMethodCall * _Nonnull call, FlutterResult _Nonnull result) {
NSLog(@"收到Flutter消息%@", call.method);
if ([call.method isEqualToString:@"showCustomMoreView"]) {
NSString *appId = call.arguments[@"appId"];
//
UIViewController *viewController = [[UIApplication sharedApplication] fat_topViewController];
UIAlertController *alertViewController = [UIAlertController alertControllerWithTitle:@"更多视图" message:appId preferredStyle:UIAlertControllerStyleActionSheet];
[alertViewController addAction:[UIAlertAction actionWithTitle:@"转发" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {
}]];
[alertViewController addAction:[UIAlertAction actionWithTitle:@"取消" style:UIAlertActionStyleCancel handler:^(UIAlertAction * _Nonnull action) {
}]];
[viewController presentViewController:alertViewController animated:YES completion:nil];
}
}];
}
@end

View File

@ -0,0 +1,16 @@
//
// LoadingView.h
// Runner
//
// Created by Haley on 2023/4/9.
//
#import <FinApplet/FinApplet.h>
NS_ASSUME_NONNULL_BEGIN
@interface LoadingView : FATBaseLoadingView
@end
NS_ASSUME_NONNULL_END

View File

@ -0,0 +1,29 @@
//
// LoadingView.m
// Runner
//
// Created by Haley on 2023/4/9.
//
#import "LoadingView.h"
@implementation LoadingView
- (instancetype)initWithFrame:(CGRect)frame {
if ([super initWithFrame:frame]) {
self.loadingView.padding = 5;
self.loadingView.dotView.backgroundColor = [UIColor redColor];
self.loadingView.animation.duration = 2;
self.titleLabel.textColor = [UIColor redColor];
}
return self;
}
- (void)layoutSubviews
{
[super layoutSubviews];
// logologoloding
self.bottomImageView.hidden = YES;
}
@end

View File

@ -1 +1,2 @@
#import "GeneratedPluginRegistrant.h"
#import "FlutterMethodChannelHandler.h"

View File

@ -3,6 +3,7 @@
import 'dart:ffi';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:mop/api.dart';
import 'dart:async';
import 'dart:io';
@ -10,6 +11,8 @@ import 'package:mop/mop.dart';
void main() => runApp(MyApp());
const toAppMessageChannel = MethodChannel("com.message.flutter_to_app");
class MyApp extends StatefulWidget {
@override
_MyAppState createState() => _MyAppState();
@ -41,6 +44,7 @@ class _MyAppState extends State<MyApp> {
List<FinStoreConfig> storeConfigs = [storeConfigA];
Config config = Config(storeConfigs);
config.language = LanguageType.English;
config.baseLoadingViewClass = "LoadingView";
UIConfig uiconfig = UIConfig();
uiconfig.isAlwaysShowBackInDefaultNavigationBar = false;
@ -54,6 +58,7 @@ class _MyAppState extends State<MyApp> {
// capsuleConfig.capsuleRightMargin = 25;
uiconfig.capsuleConfig = capsuleConfig;
uiconfig.appletText = "applet";
uiconfig.loadingLayoutCls = "com.finogeeks.mop_example.CustomLoadingPage";
// if (Platform.isIOS) {
// final res = await Mop.instance.initialize(
@ -174,7 +179,9 @@ class MyAppletHandler extends AppletHandler {
@override
bool customCapsuleMoreButtonClick(String appId) {
return false;
print("customCapsuleMoreButtonClick---");
toAppMessageChannel.invokeMethod("showCustomMoreView", {"appId": appId});
return true;
}
@override

View File

@ -72,8 +72,8 @@
NSError* error = nil;
FATUIConfig *uiconfig = [[FATUIConfig alloc]init];
uiconfig.autoAdaptDarkMode = YES;
if (_uiConfig) {
//
if (_uiConfig[@"navigationTitleTextAttributes"]) {
uiconfig.navigationTitleTextAttributes = _uiConfig[@"navigationTitleTextAttributes"];
}
@ -91,28 +91,20 @@
if (_uiConfig[@"navigationBarBackBtnDarkColor"]) {
uiconfig.navigationBarBackBtnDarkColor = [MOPTools colorWithRGBHex:[_uiConfig[@"navigationBarBackBtnDarkColor"] intValue]];
}
//
uiconfig.moreMenuStyle = [_uiConfig[@"moreMenuStyle"] integerValue];
uiconfig.hideBackToHomePriority = [_uiConfig[@"isHideBackHomePriority"] integerValue];
uiconfig.hideFeedbackMenu = [_uiConfig[@"isHideFeedbackAndComplaints"] boolValue];
uiconfig.hideBackToHome = [_uiConfig[@"isHideBackHome"] boolValue];
uiconfig.hideForwardMenu = [_uiConfig[@"isHideForwardMenu"] boolValue];
uiconfig.hideShareAppletMenu = [_uiConfig[@"isHideShareAppletMenu"] boolValue];
uiconfig.hideRefreshMenu = [_uiConfig[@"isHideRefreshMenu"] boolValue];
uiconfig.hideTransitionCloseButton = [_uiConfig[@"hideTransitionCloseButton"] boolValue];
uiconfig.disableSlideCloseAppletGesture = [_uiConfig[@"disableSlideCloseAppletGesture"] boolValue];
if (_uiConfig[@"webViewProgressBarColor"]) {
uiconfig.progressBarColor = [MOPTools colorWithRGBHex:[_uiConfig[@"webViewProgressBarColor"] intValue]];
}
uiconfig.hideFeedbackMenu = [_uiConfig[@"isHideFeedbackAndComplaints"] boolValue];
uiconfig.hideForwardMenu = [_uiConfig[@"isHideForwardMenu"] boolValue];
uiconfig.autoAdaptDarkMode = [_uiConfig[@"autoAdaptDarkMode"] boolValue];
uiconfig.hideSettingMenu = [_uiConfig[@"isHideSettingMenu"] boolValue];
uiconfig.hideFeedbackMenu = [_uiConfig[@"isHideFeedbackAndComplaints"] boolValue];
uiconfig.hideRefreshMenu = [_uiConfig[@"isHideRefreshMenu"] boolValue];
uiconfig.hideFavoriteMenu = [_uiConfig[@"isHideFavoriteMenu"] boolValue];
uiconfig.hideAddToDesktopMenu = [_uiConfig[@"isHideAddToDesktopMenu"] boolValue];
uiconfig.appletText = _uiConfig[@"appletText"];
uiconfig.disableSlideCloseAppletGesture = [_uiConfig[@"disableSlideCloseAppletGesture"] boolValue];
//
if (_uiConfig[@"capsuleConfig"]) {
NSDictionary *capsuleConfigDic = _uiConfig[@"capsuleConfig"];
FATCapsuleConfig *capsuleConfig = [[FATCapsuleConfig alloc]init];
@ -134,8 +126,8 @@
capsuleConfig.capsuleDividerLightColor = [MOPTools colorWithRGBHex:[capsuleConfigDic[@"capsuleDividerLightColor"] intValue]];
capsuleConfig.capsuleDividerDarkColor = [MOPTools colorWithRGBHex:[capsuleConfigDic[@"capsuleDividerDarkColor"] intValue]];
uiconfig.capsuleConfig = capsuleConfig;
}
uiconfig.hideTransitionCloseButton = [_uiConfig[@"hideTransitionCloseButton"] boolValue];
if (_uiConfig[@"navHomeConfig"]) {
NSDictionary *navHomeConfigDic = _uiConfig[@"navHomeConfig"];
@ -244,15 +236,19 @@
uiconfig.authViewConfig = authViewConfig;
}
uiconfig.appendingCustomUserAgent = _uiConfig[@"customWebViewUserAgent"];
uiconfig.hideWebViewProgressBar = [_uiConfig[@"hideWebViewProgressBar"] boolValue];
uiconfig.autoAdaptDarkMode = [_uiConfig[@"autoAdaptDarkMode"] boolValue];
uiconfig.transtionStyle = [_uiConfig[@"transtionStyle"] integerValue];
uiconfig.disableSlideCloseAppletGesture = [_uiConfig[@"disableSlideCloseAppletGesture"] boolValue];
if (_uiConfig[@"webViewProgressBarColor"]) {
uiconfig.progressBarColor = [MOPTools colorWithRGBHex:[_uiConfig[@"webViewProgressBarColor"] intValue]];
}
uiconfig.hideWebViewProgressBar = [_uiConfig[@"hideWebViewProgressBar"] boolValue];
uiconfig.appletText = _uiConfig[@"appletText"];
uiconfig.appendingCustomUserAgent = _uiConfig[@"customWebViewUserAgent"];
uiconfig.autoAdaptDarkMode = [_uiConfig[@"autoAdaptDarkMode"] boolValue];
uiconfig.useNativeLiveComponent = [_uiConfig[@"useNativeLiveComponent"] boolValue];
}
// uiconfig.moreMenuStyle = FATMoreViewStyleNormal;
[[FATClient sharedClient] initWithConfig:config uiConfig:uiconfig error:&error];
if (error) {
failure(@"初始化失败");
@ -268,8 +264,6 @@
[[FATClient sharedClient].logManager initLogWithLogDir:logDir logLevel:logLevel consoleLog:YES];
}
[[FATClient sharedClient] setEnableLog:YES];
success(@{});

View File

@ -76,7 +76,6 @@
NSError* error = nil;
FATUIConfig *uiconfig = [[FATUIConfig alloc]init];
uiconfig.autoAdaptDarkMode = YES;
if (_uiConfig) {
if (_uiConfig[@"navigationTitleTextAttributes"]) {
uiconfig.navigationTitleTextAttributes = _uiConfig[@"navigationTitleTextAttributes"];

View File

@ -16,7 +16,6 @@
{
NSLog(@"MOP_registerAppletHandler");
[FATClient sharedClient].delegate = [MOPAppletDelegate instance];
[FATClient sharedClient].shareItemDelegate = [MOPAppletDelegate instance];
}
@end

View File

@ -17,7 +17,7 @@ A finclip miniprogram flutter sdk.
s.dependency 'Flutter'
s.ios.deployment_target = '9.0'
s.dependency 'FinApplet' , '2.40.1'
s.dependency 'FinAppletExt' , '2.40.1'
s.dependency 'FinApplet' , '2.40.4-dev20230422v01'
s.dependency 'FinAppletExt' , '2.40.4-dev20230422v01'
end

View File

@ -338,6 +338,10 @@ class UIConfig {
// true
bool autoAdaptDarkMode = false;
// 使livefalse(iOS)
// trueLiveSDK
bool useNativeLiveComponent = false;
// userAgent
String? appendingCustomUserAgent;
@ -399,6 +403,7 @@ class UIConfig {
"moreMenuStyle": moreMenuStyle,
"isHideBackHomePriority": isHideBackHomePriority.index,
"autoAdaptDarkMode": autoAdaptDarkMode,
"useNativeLiveComponent": useNativeLiveComponent,
"appendingCustomUserAgent": appendingCustomUserAgent,
"transtionStyle": transtionStyle.index,
"disableSlideCloseAppletGesture": disableSlideCloseAppletGesture,