Closed GuoDapeng closed 4 years ago
请重新生成签名并替换项目中的签名
需要更改的地方: push.dart 242-245 行,306行
player.dart 197 行
原来GitHub是及时消息???谢谢您的回复
我会继续关注这个问题,直到你解决了它
对不起,我在一开始的测试,修改了推流和拉流地址,不过我在反复尝试,最后一次重新 clone 项目的时候,忘记修改了。
请不要再我的问题上占用您太多时间,也许这是我本地环境的问题。
android 端的进展
我发现在 flutter 工程运行和在 android 运行,控制台的行为会有一点差异。直接在 flutter 工程运行的时候回,会因为错误卡住,直接打开 android 工程的时候,不会卡在那里。
05/14 13:03:59: Launching 'app' on HUAWEI SEA-AL10.
$ adb shell am start -n "top.huic.flutter_qiniucloud_live_plugin_example/top.huic.flutter_qiniucloud_live_plugin_example.MainActivity" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER -D
Waiting for application to come online: top.huic.flutter_qiniucloud_live_plugin_example.test | top.huic.flutter_qiniucloud_live_plugin_example
Waiting for application to come online: top.huic.flutter_qiniucloud_live_plugin_example.test | top.huic.flutter_qiniucloud_live_plugin_example
Waiting for application to come online: top.huic.flutter_qiniucloud_live_plugin_example.test | top.huic.flutter_qiniucloud_live_plugin_example
Connecting to top.huic.flutter_qiniucloud_live_plugin_example
Capturing and displaying logcat messages from application. This behavior can be disabled in the "Logcat output" section of the "Debugger" settings page.
I/_plugin_exampl: Late-enabling -Xcheck:jni
E/_plugin_exampl: Unknown bits set in runtime_flags: 0x8000
I/_plugin_exampl: Reinit property: dalvik.vm.checkjni= false
W/re-initialized>: type=1400 audit(0.0:5980452): avc: denied { read } for pid=18576 name="u:object_r:mmi_prop:s0" dev="tmpfs" ino=16470 scontext=u:r:untrusted_app_27:s0:c63,c257,c512,c768 tcontext=u:object_r:mmi_prop:s0 tclass=file permissive=0
E/libc: Access denied finding property "runtime.mmitest.isrunning"
D/ActivityThread: Attach thread to application
W/ActivityThread: Application top.huic.flutter_qiniucloud_live_plugin_example is waiting for the debugger on port 8100...
I/System.out: Sending WAIT chunk
I/System.out: Debugger has connected
waiting for debugger to settle...
Connected to the target VM, address: 'localhost:8601', transport: 'socket'
I/System.out: waiting for debugger to settle...
I/System.out: waiting for debugger to settle...
I/System.out: waiting for debugger to settle...
I/System.out: waiting for debugger to settle...
I/System.out: waiting for debugger to settle...
I/System.out: waiting for debugger to settle...
I/System.out: waiting for debugger to settle...
I/System.out: debugger has settled (1368)
I/_plugin_exampl: QarthPatchMonintor::Init
QarthPatchMonintor::StartWatch
QarthPatchMonintor::WatchPackage: /data/hotpatch/fwkhotpatch/
QarthPatchMonintor::CheckAndWatchPatch: /data/hotpatch/fwkhotpatch/top.huic.flutter_qiniucloud_live_plugin_example
QarthPatchMonintor::CheckAndWatchPatch: /data/hotpatch/fwkhotpatch/all
QarthPatchMonintor::Run
I/_plugin_exampl: QarthPatchMonintor::Reading
QarthPatchMonintor::CheckNotifyEvent
QarthPatchMonintor::CheckNotifyEvent before read
I/HwApiCacheMangerEx: apicache path=/storage/emulated/0 state=mounted key=top.huic.flutter_qiniucloud_live_plugin_example#10319#256
I/HwApiCacheMangerEx: apicache path=/storage/emulated/0 state=mounted key=top.huic.flutter_qiniucloud_live_plugin_example#10319#0
I/AwareBitmapCacher: init processName:top.huic.flutter_qiniucloud_live_plugin_example pid=18576 uid=10319
I/ResourceExtractor: Found extracted resources res_timestamp-1-1589431959582
I/ResourceExtractor: Resource version mismatch res_timestamp-1-1589432650566
E/AwareLog: AtomicFileUtils: readFileLines file not exist: android.util.AtomicFile@dc90411
E/AwareLog: AtomicFileUtils: readFileLines file not exist: android.util.AtomicFile@3fa1976
I/ResourceExtractor: Extracted baseline resource assets/flutter_assets/kernel_blob.bin
I/ResourceExtractor: Extracted baseline resource assets/flutter_assets/vm_snapshot_data
I/ResourceExtractor: Extracted baseline resource assets/flutter_assets/isolate_snapshot_data
W/ActivityThread: handleWindowVisibility: no activity for token android.os.BinderProxy@3f2449
D/OpenGLRenderer: disableOutlineDraw is true
V/ActivityThread: callActivityOnCreate
I/iGraphics: [0020080c] pn: top.huic.flutter_qiniucloud_live_plugin_example, p: 18576
[0030080c] no spt app: top.huic.flutter_qiniucloud_live_plugin_example
I/PLDroidMediaStreaming: Pili-Interface:StreamingEnv:init
I/PLDroidMediaStreaming: GlUtil:GL info, version:3, supports rg ext:true
I/PLDroidMediaStreaming: Pili-Interface:StreamingEnv:init success !
I/PLDroidRTCStreaming: RTC-Interface:RTCMediaStreaming:init
I/PLDroidMediaStreaming: Pili-Interface:StreamingEnv:init
W/PLDroidMediaStreaming: Pili-Interface:StreamingEnv:ignore since had been initialized!
I/PLDroidRTCStreaming: RTC-Session:MeetingSession:init SDK Version: 2.0.3
I/YOUME: 调用init 函数 开始,目录:
I/flutter: Observatory listening on http://127.0.0.1:36535/-NTZPUw4YCQ=/
I/YOUME: 调用init 函数 开始,目录:/data/user/0/top.huic.flutter_qiniucloud_live_plugin_example/app_libs
I/YOUME: 没有当前版本的更新,忽略已经下载的so 应用versioncode: 1可以更新的版本:
I/YOUME: thread:530262695632 2020-05-14 13:04:15.351 INFO >>> JNI init VideoCallback set begin [JNI_OnLoad#com_youme_voiceengine_NativeEngine.cpp:466]
thread:530262695632 2020-05-14 13:04:15.351 INFO >>> JNI init VideoCallback set success [JNI_OnLoad#com_youme_voiceengine_NativeEngine.cpp:483]
I/YOUME: thread:530262695632 2020-05-14 13:04:15.352 INFO >>> JNI init AudioCallback set success [JNI_OnLoad#com_youme_voiceengine_NativeEngine.cpp:494]
thread:530262695632 2020-05-14 13:04:15.352 INFO >>> JNI init CameraMgr set beigin [JNI_OnLoad#com_youme_voiceengine_NativeEngine.cpp:531]
I/YOUME: thread:530262695632 2020-05-14 13:04:15.353 INFO >>> JNI init CameraMgr set success [JNI_OnLoad#com_youme_voiceengine_NativeEngine.cpp:552]
I/HwPartBaseTelephonyFactory: add HwPartBaseTelephonyFactoryImpl to memory.
W/System.err: java.lang.SecurityException: getUniqueDeviceId: The user 10319 does not meet the requirements to access device identifiers.
at android.os.Parcel.createException(Parcel.java:2071)
W/System.err: at android.os.Parcel.readException(Parcel.java:2039)
at android.os.Parcel.readException(Parcel.java:1987)
at com.android.internal.telephony.IHwTelephony$Stub$Proxy.getUniqueDeviceId(IHwTelephony.java:3062)
at android.telephony.HwTelephonyManagerInner.getUniqueDeviceId(HwTelephonyManagerInner.java:1189)
at android.telephony.HwInnerTelephonyManagerImpl.getUniqueDeviceId(HwInnerTelephonyManagerImpl.java:377)
at android.telephony.TelephonyManager.getDeviceId(TelephonyManager.java:1653)
at com.youme.voiceengine.AppPara.initPara(AppPara.java:50)
W/System.err: at com.youme.voiceengine.mgr.YouMeManager.Init(YouMeManager.java:112)
at com.qiniu.pili.droid.rtcstreaming.a.a.a(MeetingSession.java:167)
at com.qiniu.pili.droid.rtcstreaming.RTCMediaStreamingManager.init(RTCMediaStreamingManager.java:129)
at com.qiniu.pili.droid.rtcstreaming.RTCMediaStreamingManager.init(RTCMediaStreamingManager.java:98)
at com.qiniu.pili.droid.rtcstreaming.RTCMediaStreamingManager.init(RTCMediaStreamingManager.java:86)
at top.huic.flutter_qiniucloud_live_plugin.FlutterQiniucloudLivePlugin.<init>(FlutterQiniucloudLivePlugin.java:44)
W/System.err: at top.huic.flutter_qiniucloud_live_plugin.FlutterQiniucloudLivePlugin.onAttachedToEngine(FlutterQiniucloudLivePlugin.java:55)
at io.flutter.embedding.engine.FlutterEnginePluginRegistry.add(FlutterEnginePluginRegistry.java:133)
at io.flutter.plugins.GeneratedPluginRegistrant.registerWith(GeneratedPluginRegistrant.java:19)
at top.huic.flutter_qiniucloud_live_plugin_example.MainActivity.configureFlutterEngine(MainActivity.java:11)
at io.flutter.embedding.android.FlutterActivityAndFragmentDelegate.onAttach(FlutterActivityAndFragmentDelegate.java:178)
at io.flutter.embedding.android.FlutterActivity.onCreate(FlutterActivity.java:409)
at android.app.Activity.performCreate(Activity.java:8086)
W/System.err: at android.app.Activity.performCreate(Activity.java:8074)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1313)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3746)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3952)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:91)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:149)
W/System.err: at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:103)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2386)
at android.os.Handler.dispatchMessage(Handler.java:107)
at android.os.Looper.loop(Looper.java:213)
at android.app.ActivityThread.main(ActivityThread.java:8169)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:513)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1101)
E/AppPara: context is not activity,can not set setScreenOrientation
I/YOUME: thread:530262695632 2020-05-14 13:04:15.365 INFO 1 [onNetWorkChanged#NgnNetworkService.cpp:164]
V/AudioManager: isSpeakerphoneOn: true
I/YOUME: thread:530262695632 2020-05-14 13:04:15.367 INFO 1 [onNetWorkChanged#NgnNetworkService.cpp:164]
I/YOUME: 调用init 函数 结束
I/PLDroidRTCStreaming: RTC-Session:MeetingSession:init success !
W/_plugin_exampl: Accessing hidden method Landroid/view/accessibility/AccessibilityNodeInfo;->getSourceNodeId()J (greylist, reflection, allowed)
Accessing hidden method Landroid/view/accessibility/AccessibilityRecord;->getSourceNodeId()J (greylist, reflection, allowed)
Accessing hidden field Landroid/view/accessibility/AccessibilityNodeInfo;->mChildNodeIds:Landroid/util/LongArray; (greylist, reflection, allowed)
W/_plugin_exampl: Accessing hidden method Landroid/util/LongArray;->get(I)J (greylist, reflection, allowed)
V/HwWidgetFactory: : successes to get AllImpl object and return....
D/ActivityThread: add activity client record, r= ActivityRecord{d07e0b0 token=android.os.BinderProxy@3f2449 {top.huic.flutter_qiniucloud_live_plugin_example/top.huic.flutter_qiniucloud_live_plugin_example.MainActivity}} token= android.os.BinderProxy@3f2449
I/AudioMgr: onReceive action: android.net.conn.CONNECTIVITY_CHANGE state: -1
D/OpenGLRenderer: disableOutlineDraw is true
D/HiTouch_PressGestureDetector: onAttached, package=top.huic.flutter_qiniucloud_live_plugin_example, windowType=1, mHiTouchRestricted=false
E/libc: Access denied finding property "net.dns1"
Access denied finding property "net.dns2"
Access denied finding property "net.dns3"
E/libc: Access denied finding property "net.dns4"
D/mali_winsys: EGLint new_window_surface(egl_winsys_display *, void *, EGLSurface, EGLConfig, egl_winsys_surface **, EGLBoolean) returns 0x3000
D/mali_winsys: EGLint new_window_surface(egl_winsys_display *, void *, EGLSurface, EGLConfig, egl_winsys_surface **, EGLBoolean) returns 0x3000
W/Gralloc3: mapper 3.x is not supported
E/: APS:IFLoad:importExternalFunctions, search function createNewHwApsUtils failed, dlsym err:undefined symbol: createNewHwApsUtils
D/: APS:importExternalFunctions OK
I/HwViewRootImpl: removeInvalidNode jank list is null
I/AwareBitmapCacher: init lrucache size: 2097152 pid=18576
W/_plugin_example: type=1400 audit(0.0:5980603): avc: granted { write } for pid=18576 name="files" dev="sdcardfs" ino=85604 scontext=u:r:untrusted_app_27:s0:c63,c257,c512,c768 tcontext=u:object_r:sdcardfs:s0 tclass=dir
type=1400 audit(0.0:5980604): avc: granted { add_name } for pid=18576 name="report.db-journal" scontext=u:r:untrusted_app_27:s0:c63,c257,c512,c768 tcontext=u:object_r:sdcardfs:s0 tclass=dir
type=1400 audit(0.0:5980605): avc: granted { create } for pid=18576 name="report.db-journal" scontext=u:r:untrusted_app_27:s0:c63,c257,c512,c768 tcontext=u:object_r:sdcardfs:s0:c63,c257,c512,c768 tclass=file
W/_plugin_example: type=1400 audit(0.0:5980606): avc: granted { read write open } for pid=18576 path="/storage/emulated/0/Android/data/top.huic.flutter_qiniucloud_live_plugin_example/files/report.db-journal" dev="sdcardfs" ino=393988 scontext=u:r:untrusted_app_27:s0:c63,c257,c512,c768 tcontext=u:object_r:sdcardfs:s0 tclass=file
I/YOUMEIM: 2020/05/14 13:04:25.618 threadid:527738858832 INFO: Enter[YouMeDataChannel.cpp#ReportProc:102]
I/YOUMEIM: 2020/05/14 13:04:25.635 threadid:527738858832 INFO: IPV4[SyncTCP.cpp#Connect:131]
D/YOUMEIM: 2020/05/14 13:04:25.636 threadid:527738858832 DEBUG: connected IPV4: -1[SyncTCP.cpp#Connect:138]
I/YOUMEIM: 2020/05/14 13:04:25.711 threadid:527738858832 INFO: IPV4[SyncTCP.cpp#Connect:131]
D/YOUMEIM: 2020/05/14 13:04:25.712 threadid:527738858832 DEBUG: connected IPV4: -1[SyncTCP.cpp#Connect:138]
I/YOUMEIM: 2020/05/14 13:04:25.784 threadid:527738858832 INFO: IPV4[SyncTCP.cpp#Connect:131]
D/YOUMEIM: 2020/05/14 13:04:25.785 threadid:527738858832 DEBUG: connected IPV4: -1[SyncTCP.cpp#Connect:138]
I/YOUMEIM: 2020/05/14 13:04:25.871 threadid:527738858832 INFO: IPV4[SyncTCP.cpp#Connect:131]
D/YOUMEIM: 2020/05/14 13:04:25.872 threadid:527738858832 DEBUG: connected IPV4: -1[SyncTCP.cpp#Connect:138]
I/YOUMEIM: 2020/05/14 13:04:25.957 threadid:527738858832 INFO: IPV4[SyncTCP.cpp#Connect:131]
D/YOUMEIM: 2020/05/14 13:04:25.958 threadid:527738858832 DEBUG: connected IPV4: -1[SyncTCP.cpp#Connect:138]
W/Settings: Setting device_provisioned has moved from android.provider.Settings.Secure to android.provider.Settings.Global.
V/HiTouch_HiTouchSensor: User setup is finished.
V/AudioManager: querySoundEffectsEnabled...
W/PlatformViewsController: Creating a virtual display of size: [1080, 2340] may result in problems(https://github.com/flutter/flutter/issues/2897).It is larger than the device screen size: [1080, 2259].
W/Gralloc3: allocator 3.x is not supported
I/PLDroidMediaStreaming: Pili-Interface:MediaStreamingManager:created, AVCodecType = SW_VIDEO_WITH_SW_AUDIO_CODEC
I/PLDroidMediaStreaming: Pili-System:MediaStreamingManager:{"device_model":"HUAWEISEA-AL10","os_version":"os version:10, Android SDK_INT:29, SoC Hardware:kirin980","sdk_version":"librtmp-1.1.0;PLDroidCameraStreaming-2.3.0.5","app_name":"top.huic.flutter_qiniucloud_live_plugin_example","app_version":"1.0","gl_version":3}
I/PLDroidRTCStreaming: RTC-Interface:RTCMediaStreaming:create RTCMediaStreamingManager encodingType = SW_VIDEO_WITH_SW_AUDIO_CODEC
I/PLDroidMediaStreaming: Pili-Interface:MediaStreamingManager:setStreamingSessionListener true
Pili-Interface:MediaStreamingManager:setStreamStatusCallback true
I/PLDroidRTCStreaming: RTC-Interface:RTCMediaStreaming:setConferenceOptions
RTC-Session:MeetingSession:setConferenceOptions +
RTC-Session:MeetingSession:setConferenceOptions -
I/PLDroidRTCStreaming: RTC-Interface:RTCMediaStreaming:prepare
I/PLDroidMediaStreaming: Pili-Interface:MediaStreamingManager:setStreamingStateListener true
Pili-Interface:MediaStreamingManager:setStreamingPreviewCallback true
W/PLDroidMediaStreaming: Pili-Capture:CameraManager:mCamera is null in preparePreviewCallback
I/PLDroidMediaStreaming: Pili-Interface:MediaStreamingManager:setAudioSourceCallback true
E/MethodChannel#flutter/platform_views: Failed to handle method call
java.lang.IllegalArgumentException: Only support 16:9/4:3 ratio!
at com.qiniu.pili.droid.streaming.StreamingProfile.getVideoEncodingSize(StreamingProfile.java:1282)
at com.qiniu.pili.droid.rtcstreaming.RTCMediaStreamingManager.prepare(RTCMediaStreamingManager.java:375)
at top.huic.flutter_qiniucloud_live_plugin.view.QiniucloudPushPlatformView.init(QiniucloudPushPlatformView.java:294)
at top.huic.flutter_qiniucloud_live_plugin.view.QiniucloudPushPlatformView.create(QiniucloudPushPlatformView.java:215)
at io.flutter.plugin.platform.SingleViewPresentation.onCreate(SingleViewPresentation.java:186)
at android.app.Dialog.dispatchOnCreate(Dialog.java:579)
at android.app.Dialog.show(Dialog.java:397)
at android.app.Presentation.show(Presentation.java:250)
at io.flutter.plugin.platform.VirtualDisplayController.<init>(VirtualDisplayController.java:95)
at io.flutter.plugin.platform.VirtualDisplayController.create(VirtualDisplayController.java:48)
at io.flutter.plugin.platform.PlatformViewsController$1.createPlatformView(PlatformViewsController.java:112)
at io.flutter.embedding.engine.systemchannels.PlatformViewsChannel$1.create(PlatformViewsChannel.java:95)
at io.flutter.embedding.engine.systemchannels.PlatformViewsChannel$1.onMethodCall(PlatformViewsChannel.java:59)
at io.flutter.plugin.common.MethodChannel$IncomingMethodCallHandler.onMessage(MethodChannel.java:226)
at io.flutter.embedding.engine.dart.DartMessenger.handleMessageFromDart(DartMessenger.java:85)
at io.flutter.embedding.engine.FlutterJNI.handlePlatformMessage(FlutterJNI.java:643)
at android.os.MessageQueue.nativePollOnce(Native Method)
at android.os.MessageQueue.next(MessageQueue.java:363)
at android.os.Looper.loop(Looper.java:173)
at android.app.ActivityThread.main(ActivityThread.java:8169)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:513)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1101)
E/flutter: [ERROR:flutter/lib/ui/ui_dart_state.cc(166)] Unhandled Exception: PlatformException(error, Only support 16:9/4:3 ratio!, null)
#0 StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:569:7)
#1 MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:156:18)
<asynchronous suspension>
#2 MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:329:12)
#3 AndroidViewController._create (package:flutter/src/services/platform_views.dart:633:54)
#4 AndroidViewController.setSize (package:flutter/src/services/platform_views.dart:550:14)
#5 RenderAndroidView._sizePlatformView (package:flutter/src/rendering/platform_view.dart:176:29)
#6 RenderAndroidView.performResize (package:flutter/src/rendering/platform_view.dart:157:5)
#7 RenderObject.layout (package:flutter/src/rendering/object.dart:1746:9)
#8 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:113:13)
#9 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#10 RenderStack.performLayout (package:flutter/src/rendering/stack.dart:556:15)
#11 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#12 RenderConstrainedBox.performLayout (package:flutter/src/rendering/proxy_box.dart:268:13)
#13 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#14 RenderStack.performLayout (package:flutter/src/rendering/stack.dart:556:15)
#15 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#16 MultiChildLayoutDelegate.layoutChild (package:flutter/src/rendering/custom_layout.dart:171:11)
#17 _ScaffoldLayout.performLayout (package:flutter/src/material/scaffold.dart:480:7)
#18 MultiChildLayoutDelegate._callPerformLayout (package:flutter/src/rendering/custom_layout.dart:240:7)
#19 RenderCustomMultiChildLayoutBox.performLayout (package:flutter/src/rendering/custom_layout.dart:399:14)
#20 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#21 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:113:13)
#22 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#23 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:113:13)
#24 _RenderCustomClip.performLayout (package:flutter/src/rendering/proxy_box.dart:1267:11)
#25 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#26 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:113:13)
#27 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#28 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:113:13)
#29 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#30 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:113:13)
#31 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#32 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:113:13)
#33 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#34 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:113:13)
#35 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#36 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:113:13)
#37 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#38 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:113:13)
#39 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#40 RenderOffstage.performLayout (package:flutter/src/rendering/proxy_box.dart:3215:14)
#41 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#42 _RenderTheatre.performLayout (package:flutter/src/widgets/overlay.dart:700:15)
#43 RenderObject._layoutWithoutResize (pack
E/_plugin_exampl: No package ID ff found for ID 0xffffffff.
E/Resource: printErrorResource, maybe not a error because module has entative access to resource called by =android.content.res.HwResourcesImpl.printErrorResource:2634 android.content.res.ResourcesImpl.getResourceEntryName:377 android.content.res.Resources.getResourceEntryName:2229 com.youme.voiceengine.video.SurfaceViewRenderer.getResourceName:276 com.youme.voiceengine.video.SurfaceViewRenderer.<init>:54 com.qiniu.pili.droid.rtcstreaming.RTCSurfaceView.<init>:15
I/ResourcesImplEx: The apk asset path = ApkAssets{path=/system/framework/framework-res.apk}
The apk asset path = ApkAssets{path=/system/framework/framework-res-hwext.apk}
The apk asset path = ApkAssets{path=/hw_product/overlay/frameworkResOverlay.apk}
The apk asset path = ApkAssets{path=/data/app/top.huic.flutter_qiniucloud_live_plugin_example--l2hytvDpAgQt_cX0qYVyw==/base.apk}
D/EglRenderer: Initializing EglRenderer
D/EglBase14: SDK version: 29. isEGL14Supported: true
D/OpenGLRenderer: disableOutlineDraw is true
I/HiTouch_HiTouchSensor: HiTouch restricted: Sub windows restricted.
D/HiTouch_PressGestureDetector: onAttached, package=top.huic.flutter_qiniucloud_live_plugin_example, windowType=2030, mHiTouchRestricted=true
E/flutter: [ERROR:flutter/lib/ui/ui_dart_state.cc(166)] Unhandled Exception: NoSuchMethodError: The method 'addRemoteWindow' was called on null.
Receiver: null
Tried calling: addRemoteWindow(id: 1)
#0 Object.noSuchMethod (dart:core-patch/object_patch.dart:51:5)
#1 PushPageState.onPlayerViewCreated (package:flutter_qiniucloud_live_plugin_example/page/push.dart:269:16)
#2 QiniucloudConnectPlayerViewState._onPlatformViewCreated (package:flutter_qiniucloud_live_plugin/view/qiniucloud_connected_player_view.dart:44:27)
#3 AndroidViewController._create (package:flutter/src/services/platform_views.dart:636:15)
<asynchronous suspension>
#4 AndroidViewController.setSize (package:flutter/src/services/platform_views.dart:550:14)
#5 RenderAndroidView._sizePlatformView (package:flutter/src/rendering/platform_view.dart:176:29)
#6 RenderAndroidView.performResize (package:flutter/src/rendering/platform_view.dart:157:5)
#7 RenderObject.layout (package:flutter/src/rendering/object.dart:1746:9)
#8 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:113:13)
#9 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#10 RenderConstrainedBox.performLayout (package:flutter/src/rendering/proxy_box.dart:268:13)
#11 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#12 RenderStack.layoutPositionedChild (package:flutter/src/rendering/stack.dart:487:11)
#13 RenderStack.performLayout (package:flutter/src/rendering/stack.dart:583:30)
#14 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#15 RenderConstrainedBox.performLayout (package:flutter/src/rendering/proxy_box.dart:268:13)
#16 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#17 RenderStack.performLayout (package:flutter/src/rendering/stack.dart:556:15)
#18 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#19 MultiChildLayoutDelegate.layoutChild (package:flutter/src/rendering/custom_layout.dart:171:11)
#20 _ScaffoldLayout.performLayout (package:flutter/src/material/scaffold.dart:480:7)
#21 MultiChildLayoutDelegate._callPerformLayout (package:flutter/src/rendering/custom_layout.dart:240:7)
#22 RenderCustomMultiChildLayoutBox.performLayout (package:flutter/src/rendering/custom_layout.dart:399:14)
#23 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#24 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:113:13)
#25 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#26 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:113:13)
#27 _RenderCustomClip.performLayout (package:flutter/src/rendering/proxy_box.dart:1267:11)
#28 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#29 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:113:13)
#30 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#31 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:113:13)
#32 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#33 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:113:13)
#34 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#35 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:113:13)
#36 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#37 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:113:13)
#38 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#39 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:113:13)
#40 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#41 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:113:13)
#42 Ren
D/mali_winsys: EGLint new_window_surface(egl_winsys_display *, void *, EGLSurface, EGLConfig, egl_winsys_surface **, EGLBoolean) returns 0x3000
I/EglRenderer: setLayoutAspectRatio: 1.0
I/SurfaceViewRenderer: SurfaceViewRender:com.qiniu.pili.droid.rtcstreaming.RTCSurfaceView{a221fc9 V.E...... ......ID 0,0-300,300}view width:300 height:300
I/SurfaceViewRenderer: surfaceCreated
surfaceChanged: format: 4 size: 300x300
D/mali_winsys: EGLint new_window_surface(egl_winsys_display *, void *, EGLSurface, EGLConfig, egl_winsys_surface **, EGLBoolean) returns 0x3000
I/flutter: ══╡ EXCEPTION CAUGHT BY RENDERING LIBRARY ╞═════════════════════════════════════════════════════════
The following NoSuchMethodError was thrown during paint():
The getter 'width' was called on null.
Receiver: null
Tried calling: width
Widget creation tracking is currently disabled. Enabling it enables improved error messages. It can
be enabled by passing `--track-widget-creation` to `flutter run` or `flutter test`.
When the exception was thrown, this was the stack:
#0 Object.noSuchMethod (dart:core-patch/object_patch.dart:51:5)
#1 RenderAndroidView.paint (package:flutter/src/rendering/platform_view.dart:194:46)
#2 RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2264:7)
#3 PaintingContext._repaintCompositedChild (package:flutter/src/rendering/object.dart:135:11)
#4 PaintingContext.repaintCompositedChild (package:flutter/src/rendering/object.dart:95:5)
#5 PaintingContext._compositeChild (package:flutter/src/rendering/object.dart:201:7)
#6 PaintingContext.paintChild (package:flutter/src/rendering/object.dart:182:7)
#7 RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:131:15)
#8 RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2264:7)
#9 PaintingContext.paintChild (package:flutter/src/rendering/object.dart:184:13)
#10 RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:131:15)
#11 RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2264:7)
#12 PaintingContext.paintChild (package:flutter/src/rendering/object.dart:184:13)
#13 RenderBoxContainerDefaultsMixin.defaultPaint (package:flutter/src/rendering/box.dart:2515:15)
#14 RenderStack.paintStack (package:flutter/src/rendering/stack.dart:602:5)
#15 RenderStack.paint (package:flutter/src/rendering/stack.dart:610:7)
#16 RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2264:7)
#17 PaintingContext.paintChild (package:flutter/src/rendering/object.dart:184:13)
#18 RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:131:15)
#19 RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2264:7)
#20 PaintingContext.paintChild (package:flutter/src/rendering/object.dart:184:13)
#21 RenderBoxContainerDefaultsMixin.defaultPaint (package:flutter/src/rendering/box.dart:2515:15)
#22 RenderStack.paintStack (package:flutter/src/rendering/stack.dart:602:5)
#23 RenderStack.paint (package:flutter/src/rendering/stack.dart:610:7)
#24 RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2264:7)
#25 PaintingContext.paintChild (package:flutter/src/rendering/object.dart:184:13)
#26 RenderBoxContainerDefaultsMixin.defaultPaint (package:flutter/src/rendering/box.dart:2515:15)
#27 RenderCustomMultiChildLayoutBox.paint (package:flutter/src/rendering/custom_layout.dart:404:5)
#28 RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2264:7)
#29 PaintingContext.paintChild (package:flutter/src/rendering/object.dart:184:13)
#30 RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:131:15)
#31 _RenderInkFeatures.paint (package:flutter/src/material/material.dart:531:11)
#32 RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2264:7)
#33 PaintingContext.paintChild (package:flutter/src/rendering/object.dart:184:13)
#34 RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:131:15)
#35 PaintingContext.pushLayer (package:flutter/src/rendering/object.dart:391:12)
#36 RenderPhysicalModel.paint (package:flutter/src/rendering/proxy_box.dart:1819:15)
#37 RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2264:7)
#38 PaintingContext.paintChild (package:flutter/src/rendering/object.dart:184:13)
#39 RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:131:15)
#40 RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2264:7)
#41 PaintingContext.paintChild (package:flutter/src/rendering/object.dart:184:13)
#42 RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:131:15)
#43 RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2264:7)
#44 PaintingContext._repaintCompositedChild (package:flutter/src/rendering/object.dart:135:11)
#45 PaintingContext.repaintCompositedChild (package:flutter/src/rendering/object.dart:95:5)
#46 PaintingContext._compositeChild (package:flutter/src/rendering/object.dart:201:7)
#47 PaintingContext.paintChild (package:flutter/src/rendering/object.dart:182:7)
#48 RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:131:15)
#49 RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2264:7)
#50 PaintingContext.paintChild (package:flutter/src/rendering/object.dart:184:13)
#51 RenderAnimatedOpacityMixin.paint (package:flutter/src/rendering/proxy_box.dart:914:17)
#52 RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2264:7)
#53 PaintingContext.paintChild (package:flutter/src/rendering/object.dart:184:13)
#54 RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:131:15)
#55 RenderFractionalTranslation.paint (package:flutter/src/rendering/proxy_box.dart:2533:13)
#56 RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2264:7)
#57 PaintingContext.paintChild (package:flutter/src/rendering/object.dart:184:13)
#58 RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:131:15)
#59 RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2264:7)
#60 PaintingContext._repaintCompositedChild (package:flutter/src/rendering/object.dart:135:11)
#61 PaintingContext.repaintCompositedChild (package:flutter/src/rendering/object.dart:95:5)
#62 PaintingContext._compositeChild (package:flutter/src/rendering/object.dart:201:7)
#63 PaintingContext.paintChild (package:flutter/src/rendering/object.dart:182:7)
#64 RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:131:15)
#65 RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2264:7)
#66 PaintingContext.paintChild (package:flutter/src/rendering/object.dart:184:13)
I/flutter: #67 RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:131:15)
#68 RenderOffstage.paint (package:flutter/src/rendering/proxy_box.dart:3230:11)
#69 RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2264:7)
#70 PaintingContext.paintChild (package:flutter/src/rendering/object.dart:184:13)
#71 _RenderTheatre.paintStack (package:flutter/src/widgets/overlay.dart:737:15)
#72 _RenderTheatre.paint (package:flutter/src/widgets/overlay.dart:747:7)
#73 RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2264:7)
#74 PaintingContext.paintChild (package:flutter/src/rendering/object.dart:184:13)
#75 RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:131:15)
#76 RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2264:7)
#77 PaintingContext.paintChild (package:flutter/src/rendering/object.dart:184:13)
#78 RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:131:15)
#79 RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2264:7)
#80 PaintingContext.paintChild (package:flutter/src/rendering/object.dart:184:13)
#81 RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:131:15)
#82 RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2264:7)
#83 PaintingContext.paintChild (package:flutter/src/rendering/object.dart:184:13)
#84 RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:131:15)
#85 RenderCustomPaint.paint (package:flutter/src/rendering/custom_paint.dart:575:11)
#86 RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2264:7)
#87 PaintingContext.paintChild (package:flutter/src/rendering/object.dart:184:13)
#88 RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:131:15)
#89 RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2264:7)
#90 PaintingContext.paintChild (package:flutter/src/rendering/object.dart:184:13)
#91 RenderProxyBoxMixin.paint (package:flutter/src/rendering/proxy_box.dart:131:15)
#92 RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2264:7)
#93 PaintingContext.paintChild (package:flutter/src/rendering/object.dart:184:13)
#94 RenderView.paint (package:flutter/src/rendering/view.dart:213:15)
#95 RenderObject._paintWithContext (package:flutter/src/rendering/object.dart:2264:7)
#96 PaintingContext._repaintCompositedChild (package:flutter/src/rendering/object.dart:135:11)
#97 PaintingContext.repaintCompositedChild (package:flutter/src/rendering/object.dart:95:5)
#98 PipelineOwner.flushPaint (package:flutter/src/rendering/object.dart:980:29)
#99 RendererBinding.drawFrame (package:flutter/src/rendering/binding.dart:404:19)
#100 WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:865:13)
#101 RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:284:5)
#102 SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1074:15)
#103 SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:1013:9)
#104 SchedulerBinding._handleDrawFrame (package:flutter/src/scheduler/binding.dart:929:5)
#108 _invoke (dart:ui/hooks.dart:277:10)
#109 _drawFrame (dart:ui/hooks.dart:235:3)
(elided 3 frames from dart:async)
The following RenderObject was being processed when the exception was fired: RenderAndroidView#13b72:
needs compositing
creator: _AndroidPlatformView ← Semantics ← _FocusMarker ← Focus ← AndroidView ←
QiniucloudConnectPlayerView ← ConstrainedBox ← Container ← Positioned ← Stack ← ConstrainedBox ←
Container ← ⋯
parentData: <none> (can use size)
constraints: BoxConstraints(w=100.0, h=100.0)
layer: OffsetLayer#4f0a0 DETACHED
semantic boundary
size: Size(100.0, 100.0)
This RenderObject has no descendants.
════════════════════════════════════════════════════════════════════════════════════════════════════
W/HiTouch_PressGestureDetector: Touch pointer move a lot. The moving distance of X is:7.0, limit is:60The moving distance of Y is:82.0, limit is:60
我在这里点击了 开始预览 的按钮
E/flutter: [ERROR:flutter/lib/ui/ui_dart_state.cc(166)] Unhandled Exception: NoSuchMethodError: The method 'resume' was called on null.
Receiver: null
Tried calling: resume()
#0 Object.noSuchMethod (dart:core-patch/object_patch.dart:51:5)
#1 PushPageState.onResume (package:flutter_qiniucloud_live_plugin_example/page/push.dart:122:36)
#2 _InkResponseState._handleTap (package:flutter/src/material/ink_well.dart:933:19)
#3 _InkResponseState.build.<anonymous closure> (package:flutter/src/material/ink_well.dart:1020:38)
#4 GestureRecognizer.invokeCallback (package:flutter/src/gestures/recognizer.dart:182:24)
#5 TapGestureRecognizer.handleTapUp (package:flutter/src/gestures/tap.dart:522:11)
#6 BaseTapGestureRecognizer._checkUp (package:flutter/src/gestures/tap.dart:282:5)
#7 BaseTapGestureRecognizer.acceptGesture (package:flutter/src/gestures/tap.dart:254:7)
#8 GestureArenaManager.sweep (package:flutter/src/gestures/arena.dart:156:27)
#9 GestureBinding.handleEvent (package:flutter/src/gestures/binding.dart:222:20)
#10 GestureBinding.dispatchEvent (package:flutter/src/gestures/binding.dart:198:22)
#11 GestureBinding._handlePointerEvent (package:flutter/src/gestures/binding.dart:156:7)
#12 GestureBinding._flushPointerEventQueue (package:flutter/src/gestures/binding.dart:102:7)
#13 GestureBinding._handlePointerDataPacket (package:flutter/src/gestures/binding.dart:86:7)
#14 _rootRunUnary (dart:async/zone.dart:1206:13)
#15 _CustomZone.runUnary (dart:async/zone.dart:1100:19)
#16 _CustomZone.runUnaryGuarded (dart:async/zone.dart:1005:7)
#17 _invoke1 (dart:ui/hooks.dart:291:10)
#18 _dispatchPointerDataPacket (dart:ui/hooks.dart:200:5)
V/AudioManager: querySoundEffectsEnabled...
iOS 端的进展
我修改了 Podfile 文件 的 platform :ios, '13.0'
,删除了 source 'https://github.com/CocoaPods/Specs.git'
之后运行 pod install
。
现在能在真机测试了,不过在点击开始推流后他闪退了
2020-05-14 12:56:24.446555+0800 Runner[1314:653036] Metal GPU Frame Capture Enabled
2020-05-14 12:56:24.446655+0800 Runner[1314:653036] Metal API Validation Enabled
2020-05-14 12:56:24.619188+0800 Runner[1314:653269] flutter: Observatory listening on http://127.0.0.1:65416/SOH3hd5nSX0=/
在这里,我点击了 开始推流,这里程序应该闪退了
2020-05-14 12:56:55.542431+0800 Runner[1314:653036] streaming version:git-2018-10-08-0e977cd1
2020-05-14 12:56:55:542 Runner[1314:653036] [W] Pili-Streaming init:steaming version:git-2018-10-08-0e977cd1 -[PLStreamingSession initWithVideoStreamingConfiguration:audioStreamingConfiguration:stream:dns:] PLStreamingSession.m:416
2020-05-14 12:56:55:542 Runner[1314:653036] [W] Pili-Streaming init:device info:iPhone12,8:iOS 13.4.1 -[PLStreamingSession initWithVideoStreamingConfiguration:audioStreamingConfiguration:stream:dns:] PLStreamingSession.m:417
2020-05-14 12:56:55.548300+0800 Runner[1314:653036] [] nehelper sent invalid result code [1] for Wi-Fi information request
Could not cast value of type 'NSNull' (0x1e1d56990) to 'NSNumber' (0x1e1d60568).
2020-05-14 12:56:55.563902+0800 Runner[1314:653036] Could not cast value of type 'NSNull' (0x1e1d56990) to 'NSNumber' (0x1e1d60568).
(lldb)
iOS 和 android 端仍然没有正常工作,不过我觉得我有了一些方向,感谢您的启发,我觉得有一点思路了。
请重新生成签名并替换项目中的签名
其实我没理解这个说的是什么。是 iOS 端 apple 的证书吗?
七牛云的
错误信息提示没有找到 resume
方法,但是我检查了代码,它在Android和IOS都是具备的
或许你可以先使用Android尝试,在Android能够跑通后再进行IOS尝试
我感觉我是不是搞错方向了。 RTCMediaStreamingManager 我看了一下,是 Android 连麦 SDK。
我之前研究的单人直播给大家,貌似不是一样的?
不过我定位到出错的位置了
FlutterQiniucloudLivePlugin/android/src/main/java/top/huic/flutter_qiniucloud_live_plugin/view/QiniucloudPushPlatformView.java
manager.prepare(cameraStreamingSetting, microphoneStreamingSetting, watermarkSetting, streamingProfile);
改成这样。
manager.prepare(cameraStreamingSetting, microphoneStreamingSetting);
E/top.huic.flutter_qiniucloud_live_plugin.view.QiniucloudPushPlatformView: streamingProfileStr: {"publishUrl":"rtmp://pili-publish.guodapeng.icu/live-player/FlutterQiniucloudLivePlugin","videoQuality":22,"audioQuality":20,"quicEnable":true}
watermarkSetting: null
看着右上角的小黑框,感觉不是我想要的那种一个人播,一堆人看的那种。不过我感觉我可以照着这个插件把 PLDroidCameraStreaming 的 flutter 插件写出来。
感谢。 你现在用的连麦,是主播和主播连麦,观众观看。 如果你只想主播推流,观众播放,那就不使用连麦即可。连麦类似推流上面的扩展功能
因为有连麦功能,所以那个小黑框默认显示,你可以根据实际使用场景来决定是否显示
哦这样呀,那我想看一下官方文档去,我感觉我就要搞定了。
android 成功了。拉流得到了推流的视频了。
这个错误提示很重要
Only support 16:9/4:3 ratio!
然后设置一下直播的尺寸就可以直播了
FlutterQiniucloudLivePlugin/android/src/main/java/top/huic/flutter_qiniucloud_live_plugin/view/QiniucloudPushPlatformView.java
// 预览设置
cameraStreamingSetting.setCameraPrvSizeRatio(CameraStreamingSetting.PREVIEW_SIZE_RATIO.RATIO_16_9);
示例上的 开始推流 按钮,我修改了一下,还没来得及研究 状态相关的逻辑。
明天搞一下 iOS。不用理我,等我都搞定了,我会都整理好放在这里 ^_^
我已经成功的推流拉流了。不过感觉画面非常不清晰。看样子还有很多工作要做。
最后感谢作者对这个问题的跟踪。
感谢您的付出,我这里遇到了一些问题,我正在尝试自己解决。但是我不懂原生开发,如果方便,希望能提供一些帮助。
android 端能安装到真机,但是点击推流会会卡住:
iOS 无法安装到真机,编译出错了。 我做了一些尝试 1、修改了 Signing & Capabilities 的 Team,修改成我自己的信息 2、修改了 Podfile 文件,
platform :ios, '13.0'
3、尝试pod install
,得到下面的日志。4、我知道已经出现错误了,但是还是尝试了 build 得到下面日志。
最后,我没能成功在 iOS 和 android 让它正常工作。
非常感谢您的付出,我在一个月前就开始尝试自己实现 flutter 直播插件了,因为不懂原生开发,flutter 也刚学不久,我很期待这个插件。谢谢。