目录
扩展开发手册(废弃)
Android扩展开发手册
开发要求
【技能要求】
【设备要求】
环境搭建
开发步骤
1、创建工程
2、集成第三方SDK
3、扩展代码编写
4、调试测试
5、扩展服务制作
参见本文上级目录
iOS扩展开发手册
开发要求
【技能要求】
【设备要求】
环境搭建
开发步骤
1、创建工程
2、集成第三方SDK
3、扩展代码编写
图片资源需要放到.bundle中使用
4、调试测试
5、扩展服务制作
参见本文上级目录
6、样例
MyExtension.h
@interface MyExtension : NSObject
@end
MyExtension.m
// 引入头文件
#import <Mediator/Mediator.h>
@implementation MyExtension
+ (void)load {
// 注册扩展服务
[[IUMMediator sharedInstance] registerExtension:@"A" forClass:@"MyExtension"];
}
// 扩展服务方法
- (void)myMethod:(id<SUMExtension>)args {
// 场景1:页面跳转
({
// 获取 Summer 中的 window
UIViewController *sumWindow = [args sum_container];
UIViewController *toVC; // 要跳转的 ViewController
[sumWindow.navigationController pushViewController:toVC animated:YES];
});
// 场景2:获取 JavaScript 端传递过来的参数
({
NSDictionary *params = [args params];
NSString *value = params[@"key"];
});
// 场景3:回调 JavaScript 端
BOOL success;
id returnValue; // 返回参数,可以是 NSString、Number、NSDictionary、NSArray 等。
if (success) {
// 成功回调
[args evaluateJavaScriptCallbackWithObject:returnValue];
}
else {
// 失败回调
[args evaluateJavaScriptErrorWithObject:returnValue];
}
}
@end
JS 中调用方法
var params = {
"params": {
"key": "hello world"
}
"callback": "callbackFunction()",
"error": "errorFunction()",
};
summer.callService("A.myMethod", )
文档更新时间: 2018-01-15 14:29