Browse Source

add agora api

matrixbirds 5 years ago
parent
commit
2ea937983f

+ 2
- 2
android/src/main/java/com/syan/agora/AgoraManager.java View File

@@ -134,8 +134,8 @@ public class AgoraManager {
134 134
         return mRtcEngine.setupLocalVideo(new VideoCanvas(surfaceView, VideoCanvas.RENDER_MODE_HIDDEN, mLocalUid));
135 135
     }
136 136
 
137
-    public int setupRemoteVideo(int uid) {
138
-
137
+    public int setupRemoteVideo(ReadableMap options) {
138
+        int uid = options.getInt("uid");
139 139
         SurfaceView surfaceView = RtcEngine.CreateRendererView(context);
140 140
         mSurfaceViews.put(uid, surfaceView);
141 141
         return mRtcEngine.setupRemoteVideo(new VideoCanvas(surfaceView, VideoCanvas.RENDER_MODE_HIDDEN, uid));

+ 2
- 1
android/src/main/java/com/syan/agora/AgoraModule.java View File

@@ -1123,8 +1123,9 @@ public class AgoraModule extends ReactContextBaseJavaModule {
1123 1123
     }
1124 1124
 
1125 1125
     @ReactMethod
1126
-    public void setupRemoteVideo(int uid) {
1126
+    public void setupRemoteVideo(ReadableMap options) {
1127 1127
         try {
1128
+            int uid = options.getInt("uid");
1128 1129
             int res = AgoraManager.getInstance().setupRemoteVideo(uid);
1129 1130
             if (res != 0) throw new ReactNativeAgoraException("setupRemoteVideo Failed", res);
1130 1131
         } catch(Exception e) {

+ 11
- 0
ios/RCTAgora/RCTAgora.m View File

@@ -289,6 +289,17 @@ RCT_EXPORT_METHOD(setupRemoteVideo:(NSDictionary *) options) {
289 289
   [self.rtcEngine setupRemoteVideo:canvas];
290 290
 }
291 291
 
292
+// set local video render mode
293
+RCT_EXPORT_METHOD(setLocalRenderMode:(NSInteger) mode) {
294
+  [self.rtcEngine setLocalRenderMode:mode];
295
+}
296
+
297
+// set remote video render mode
298
+RCT_EXPORT_METHOD(setRemoteRenderMode:(NSInteger) uid
299
+                  mode:(NSInteger) mode) {
300
+  [self.rtcEngine setLocalRenderMode:uid mode:mode];
301
+}
302
+
292 303
 // start video preview
293 304
 RCT_EXPORT_METHOD(startPreview) {
294 305
   [self.rtcEngine startPreview];

+ 3
- 3
lib/RtcEngine.native.js View File

@@ -90,15 +90,15 @@ class RtcEngine {
90 90
         if (this.listeners && this.listeners.length > 0) {
91 91
             for (let listener of this.listeners) {
92 92
                 listener.remove();
93
+                this.listeners = [];
93 94
             }
94 95
         }
95
-        this.listeners = [];
96 96
     }
97 97
     static enableLastmileTest() {
98
-        Agora.enableLastmileTest();
98
+        return Agora.enableLastmileTest();
99 99
     }
100 100
     static disableLastmileTest() {
101
-        Agora.disableLastmileTest();
101
+        return Agora.disableLastmileTest();
102 102
     }
103 103
     static leaveChannel() {
104 104
         return Agora.leaveChannel();

+ 1
- 1
lib/RtcEngine.native.js.map View File

@@ -1 +1 @@
1
-{"version":3,"file":"RtcEngine.native.js","sourceRoot":"","sources":["../src/RtcEngine.native.ts"],"names":[],"mappings":"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"}
1
+{"version":3,"file":"RtcEngine.native.js","sourceRoot":"","sources":["../src/RtcEngine.native.ts"],"names":[],"mappings":"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"}

+ 11
- 20
src/RtcEngine.native.ts View File

@@ -29,11 +29,6 @@ export default class RtcEngine {
29 29
         return Agora.joinChannel({channelName, uid, token, info});
30 30
     }
31 31
 
32
-    static joinChannelWithToken(
33
-        channelName: string, token?: String, uid?: Number): void {
34
-        Agora.joinChannelWithToken(token, channelName, uid);
35
-    }
36
-
37 32
     static eventEmitter(eventScheduler: EventScheduler) {
38 33
         this.removeEmitter();
39 34
         // const events = EventSchedulerKeys;
@@ -168,17 +163,17 @@ export default class RtcEngine {
168 163
         if (this.listeners && this.listeners.length > 0) {
169 164
             for (let listener of this.listeners) {
170 165
                 listener.remove();
166
+                this.listeners = [];
171 167
             }
172 168
         }
173
-        this.listeners = [];
174 169
     }
175 170
 
176 171
     static enableLastmileTest() {
177
-        Agora.enableLastmileTest();
172
+        return Agora.enableLastmileTest();
178 173
     }
179 174
 
180 175
     static disableLastmileTest() {
181
-        Agora.disableLastmileTest();
176
+        return Agora.disableLastmileTest();
182 177
     }
183 178
 
184 179
     static leaveChannel() {
@@ -205,10 +200,6 @@ export default class RtcEngine {
205 200
         Agora.stopPreview();
206 201
     }
207 202
 
208
-    static configPublisher(options: PublisherConfig) {
209
-        Agora.configPublisher(options);
210
-    }
211
-
212 203
     static setLiveTranscoding(options: LiveTranscoding) {
213 204
         Agora.setLiveTranscoding(options);
214 205
     }
@@ -217,8 +208,8 @@ export default class RtcEngine {
217 208
         Agora.setLocalRenderMode(mode);
218 209
     }
219 210
 
220
-    static setRemoteRenderMode(mode: number) {
221
-        Agora.setRemoteRenderMode(mode);
211
+    static setRemoteRenderMode(uid: number, mode: number) {
212
+        Agora.setRemoteRenderMode(uid, mode);
222 213
     }
223 214
 
224 215
     static enableAudioVolumeIndication(interval: number, smooth: number) {
@@ -226,7 +217,7 @@ export default class RtcEngine {
226 217
     }
227 218
 
228 219
     static switchCamera() {
229
-        Agora.switchCamera();
220
+        return Agora.switchCamera();
230 221
     }
231 222
 
232 223
     static enableVideo() {
@@ -258,7 +249,7 @@ export default class RtcEngine {
258 249
     }
259 250
 
260 251
     static setCameraAutoFocusFaceModeEnabled(status: boolean) {
261
-        Agora.setCameraAutoFocusFaceModeEnabled(status);
252
+        return Agora.setCameraAutoFocusFaceModeEnabled(status);
262 253
     }
263 254
 
264 255
     static setDefaultAudioRouteToSpeakerphone(status: boolean) {
@@ -281,12 +272,12 @@ export default class RtcEngine {
281 272
         Agora.muteRemoteVideoStream(uid, status);
282 273
     }
283 274
 
284
-    static createDataStream(reliable: boolean, ordered: boolean, callback: Callback<void>) {
285
-        Agora.createDataStream(reliable, ordered, callback);
275
+    static createDataStream(reliable: boolean, ordered: boolean) {
276
+        return Agora.createDataStream(reliable, ordered);
286 277
     }
287 278
 
288
-    static sendStreamMessage(streamId: number, data: any, callback: Callback<void>) {
289
-        Agora.sendStreamMessage(streamId, data, callback);
279
+    static sendStreamMessage(streamId: number, data: any) {
280
+        return Agora.sendStreamMessage(streamId, data);
290 281
     }
291 282
 
292 283
     static getSdkVersion(callback: Callback<void>) {