BBASMPlugin+image.h
6.86 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
//
// BBASMPlugin+image.h
// SWAN
//
// Created by baidu on 2018/3/12.
// Copyright © 2018年 baidu. All rights reserved.
//
#import "BBASMPlugin.h"
#define BBASMImageModule @"mnp_image"
@interface BBASMPlugin (image)
/**
* 描 述: 获取小程序图片信息,仅支持在小程序框架中使用
* 示 例: baiduboxapp://swanAPI/getImageInfo?params={"src":"image_url"}
* 文 档: http://ft.baidu.com/#/scheme/swan_getimageinfo
* 备 注:
* ********** description ************
* @name: getImageInfo
* @authority: swanAPI
* @path: /getImageInfo
* @args: [{"name": "src", "value": "string"}]
* @config: {"swan": {"web": {"invoke": "swan.message.url", "handler": "bridge"}, "jsc": {"invoke": "swan.method.url", "method": "_naSwan.bridge.postMessage"}}}
*/
-(void)getImageInfo:(BBASchemeDispatcher *)dispatcher;
/**
* 描 述: 从相机或相册中选择图片
* 示 例: baiduboxapp://swanAPI/chooseImage?params={"count":"0-9","cb":"_bdbox_pjs_884","sizeType":"original/compressed"}
* 文 档: http://ft.baidu.com/#/scheme/swan_chooseimage
* 备 注:
* ********** description ************
* @name: chooseImage
* @authority: swanAPI
* @path: /chooseImage
* @args: [{"name": "count", "value": "string="}, {"name": "sizeType", "value": "string[]="}, {"name": "sourceType", "value": "string[]="}, {"name": "cb", "value": "string"}]
* @config: {"swan": {"web": {"invoke": "swan.message.url", "handler": "bridge"}, "jsc": {"invoke": "swan.method.url", "method": "_naSwan.bridge.postMessage"}}}
*/
-(void)chooseImage:(BBASchemeDispatcher *)dispatcher;
/**
* 描 述: 该端能力可以调起相册,可同时选择图片和视频,支持最大选择个数、是否压缩
* 示 例: baiduboxapp://swanAPI/chooseAlbum?params={"count”:”9”,”mode":"both","compressed":true,"cb":"_bdbox_pjs_514"}&callback=__jsna_109&upgrade=0
* 文 档: http://ft.baidu.com/#/scheme/swan_choosealbum
* 备 注:
* ********** description ************
* @name: chooseAlbum
* @authority: swanAPI
* @path: /chooseAlbum
* @args: [{"name": "count", "value": "string="}, {"name": "mode", "value": "string="}, {"name": "compressed", "value": "boolean="}, {"name": "cb", "value": "string"}]
* @config: {"swan": {"web": {"invoke": "swan.message.url", "handler": "bridge"}, "jsc": {"invoke": "swan.method.url", "method": "_naSwan.bridge.postMessage"}}}
*/
- (void)chooseAlbum:(BBASchemeDispatcher *)dispatcher;
/**
* 描 述: 将图片保存到相册,只有小程序可以用
* 示 例: baiduboxapp://swanAPI/saveImageToPhotosAlbum?params=%7b%22file_path%22%3a%22aaaa%22%7d
* 文 档: http://ft.baidu.com/#/scheme/swan_saveimagetophotosalbum
* 备 注:
* ********** description ************
* @name: saveImageToPhotosAlbum
* @authority: swanAPI
* @path: /saveImageToPhotosAlbum
* @args: [{"name": "filePath", "value": "string"}, {"name": "cb", "value": "string"}]
* @config: {"swan": {"web": {"invoke": "swan.message.url", "handler": "bridge"}, "jsc": {"invoke": "swan.method.url", "method": "_naSwan.bridge.postMessage"}}}
*/
-(void)saveImageToPhotosAlbum:(BBASchemeDispatcher *)dispatcher;
/**
* 描 述: img标签支持bdfile获取图片
* 示 例: baiduboxapp://swanAPI/getLocalImgData?params=$params&callback=$callback
* 文 档: http://ft.baidu.com/#/scheme/swan_getlocalimgdata
* 备 注:
* ********** description ************
* @name: getLocalImgData
* @authority: swanAPI
* @path: /getLocalImgData
* @args: [{"name": "filePath", "value": "string="}]
* @config: {"swan": {"web": {"invoke": "swan.message.url", "handler": "bridge"}, "jsc": {"invoke": "swan.method.url", "method": "_naSwan.bridge.postMessage"}}}
*/
- (void)getLocalImgData:(BBASchemeDispatcher *)dispatcher;
/**
* 描 述: 压缩图片并存储本地临时路径
* 示 例: baiduboxapp://swanAPI/compressImage?params=$params&callback=$callback
* 文 档: http://es.baidu-int.com/#/apidetail/828
* 备 注:
* ********** description ************
* @name: compressImage
* @authority: swanAPI
* @path: /compressImage
* @args: [{"name": "src", "value": "string"}, {"name": "quality", "value": "number="}, {"name": "cb", "value": "string"}]
* @config: {"swan": {"web": {"invoke": "swan.message.url", "handler": "bridge"}, "jsc": {"invoke": "swan.method.json", "method": "_naSwan.bridge.image.compressImage"}}}
*/
- (void)compressImage:(BBASchemeDispatcher *)dispatcher;
/**
* 描 述: 预览图片小程序侧的描述表
* 示 例: baiduboxapp://swanAPI/previewImage?params={"urls":["https://xxx.JPEG","https://yyy.JPEG"]}&callback=_bdbox_js_595&upgrade=0&oauthType=swan
* 文 档: http://ft.baidu.com/#/scheme/utils_previewimage
* 备 注:
* ********** description ************
* @name: previewImage
* @authority: swanAPI
* @path: /previewImage
* @args: [{"name": "urls", "value": "string[]="}, {"name": "images", "value": "Object[]="}, {"name": "current", "value": "string="}, {"name": "from", "value": "string="},{"name": "cb", "value": "string"}]
* @config: {"swan": {"web": {"invoke": "swan.message.url", "handler": "bridge"}, "webdegrade": {"invoke": "swan.message.url", "handler": "bridge"}, "jsc": {"invoke": "swan.method.json", "method": "_naSwan.bridge.image.previewImage"}}}
*/
- (void)previewImage:(BBASchemeDispatcher *)dispatcher;
/**
* 描 述: 调起图片操作菜单
* 示 例: baiduboxapp://swanAPI/callImageMenu?params=$params&callback=$callback
* 文 档: http://es.baidu-int.com/index#/apidetail/1375
* 备 注:
* ********** description ************
* @name: boxjs.callImageMenu
* @authority: swanAPI
* @path: /callImageMenu
* @args: [{"name": "menuItems", "value": "Array="}, {"name": "imageURL", "value": "string"}]
* @config: {"swan": {"web": {"invoke": "swan.message.url", "handler": "bridge"}, "jsc": {"invoke": "swan.method.json", "method": "_naSwan.bridge.image.callImageMenu"}}}
*/
- (void)callImageMenu:(BBASchemeDispatcher *)dispatcher;
#pragma mark - not API
+ (NSDictionary *)compressImageWithAppID:(NSString *)appID
params:(NSDictionary *)params
completion:(void (^)(NSDictionary *completionData))completion;
/**
* @brief 封装方法给 shecme 和 jsbinding 使用调起预览图片
*
* @param appID appID
* @param param 参数
* @param action 方法名称
* @return 返回调起结果
*/
+ (NSDictionary *)previewImageWithAppID:(NSString *)appID param:(NSDictionary *)param
actionName:(NSString *)action
completion:(void (^)(NSDictionary *completionData))completion;
/**
* @brief 调起图片操作菜单
*
* @param appID appID
* @param params 参数
* @return 返回调起结果
*/
+ (NSDictionary *)callImageMenuWithAppID:(NSString *)appID
params:(NSDictionary *)params;
@end