72 lines
2.4 KiB
Objective-C
72 lines
2.4 KiB
Objective-C
|
//
|
|||
|
// FinCustomApiViewController.m
|
|||
|
// FinDemo
|
|||
|
//
|
|||
|
// Created by 胡健辉 on 2023/5/30.
|
|||
|
//
|
|||
|
|
|||
|
#import "FinCustomApiViewController.h"
|
|||
|
#import <FinApplet/FinApplet.h>
|
|||
|
|
|||
|
@interface FinCustomApiViewController ()
|
|||
|
|
|||
|
@end
|
|||
|
|
|||
|
@implementation FinCustomApiViewController
|
|||
|
|
|||
|
/*
|
|||
|
有时候我们需要app提供超出微信小程序体系的能力,能可以通过自定义api提供。
|
|||
|
|
|||
|
详细教程可以参考https://www.finclip.com/mop/document/runtime-sdk/ios/api/api-custom.html#_1-1-%E6%B3%A8%E5%86%8C%E5%B0%8F%E7%A8%8B%E5%BA%8F%E5%BC%82%E6%AD%A5api
|
|||
|
*/
|
|||
|
|
|||
|
- (instancetype)init {
|
|||
|
if (self = [super init]) {
|
|||
|
//注册自定义api(异步)。param是入参
|
|||
|
[[FATClient sharedClient] registerExtensionApi:@"finclipLogin" handler:^(FATAppletInfo *appletInfo, id param, FATExtensionApiCallback callback) {
|
|||
|
NSLog(@"自定义api入参:%@", param);
|
|||
|
|
|||
|
//出参
|
|||
|
NSDictionary *outParam = @{
|
|||
|
@"token" : @"abcdefg",
|
|||
|
@"name" : @"小明",
|
|||
|
@"url" : [NSString stringWithFormat:@"这是新的url:%@", param[@"url"]?:@""]
|
|||
|
};
|
|||
|
|
|||
|
//返回成功和出参
|
|||
|
callback(FATExtensionCodeSuccess, outParam);
|
|||
|
}];
|
|||
|
|
|||
|
|
|||
|
//可以打开vconsole观看小程序的log输出
|
|||
|
[FATClient sharedClient].config.enableAppletDebug = FATBOOLStateTrue;
|
|||
|
}
|
|||
|
return self;
|
|||
|
}
|
|||
|
|
|||
|
- (void)viewDidLoad {
|
|||
|
[super viewDidLoad];
|
|||
|
// Do any additional setup after loading the view.
|
|||
|
self.view.backgroundColor = UIColor.whiteColor;
|
|||
|
UIButton * button = [[UIButton alloc]initWithFrame:CGRectMake(0, 0, 300, 40)];
|
|||
|
[button setTitle: NSLocalizedString(@"打开小程序", nil) forState:UIControlStateNormal];
|
|||
|
[button setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
|
|||
|
[button addTarget:self action:@selector(click) forControlEvents:UIControlEventTouchUpInside];
|
|||
|
[self.view addSubview:button];
|
|||
|
button.center = self.view.center;
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
- (void)click {
|
|||
|
FATAppletRequest *request = [[FATAppletRequest alloc] init];
|
|||
|
request.appletId = @"64756ffed21d34000194b307";//小程序代码可见finclipLogin.zip
|
|||
|
|
|||
|
[[FATClient sharedClient] startAppletWithRequest:request InParentViewController:self completion:nil closeCompletion:nil];
|
|||
|
}
|
|||
|
|
|||
|
- (void)dealloc {
|
|||
|
//关闭vconsole
|
|||
|
[FATClient sharedClient].config.enableAppletDebug = FATBOOLStateUndefined;
|
|||
|
}
|
|||
|
@end
|