flutter

您所在的位置:网站首页 对接萤石云 flutter

flutter

2023-12-31 22:47| 来源: 网络整理| 查看: 265

flutter_ys7

flutter 萤石云直播插件

功能 android ios 直播功能 ✔️ ✔️ 云台控制 ✔️ ✔️ sd卡/NVR回放 ✔️ ✔️ 安装

添加依赖 flutter_ys7 到 pubspec.yaml 文件

IOS

关闭目标target的bitcode功能 Build Settings->Enable Bitcode设置为NO

将以下内容添加到你的 info.plist 文件

相册权限: 如果需要使用开放平台播放器录像和截图并保存的功能,就需要配置相册权限。

NSPhotoLibraryUsageDescription 需要使用手机相册 NSPhotoLibraryAddUsageDescription 需要使用手机相册

麦克风权限: 如果需要使用设备对讲功能,就需要配置麦克风权限。务必在发起对讲前向iOS系统申请麦克风权限,否则将导致第一次对讲异常。

NSMicrophoneUsageDescription 需要使用手机麦克风

摄像头权限: 如果需要仿照demo实现扫码添加设备功能,就需要配置摄像头权限。

NSCameraUsageDescription 需要使用手机照相机 android

在 AndroidMainfest.xml 文件中添加权限:

使用 kotlin 在 MainActivity 添加

class MainActivity: FlutterActivity() { override fun configureFlutterEngine(flutterEngine: FlutterEngine) { super.configureFlutterEngine(flutterEngine) flutterEngine.platformViewsController.registry.registerViewFactory("cspy/flutter_ys7/videoView", FlutterYs7ViewFactory(flutterEngine.dartExecutor.binaryMessenger,application)) } }

使用 java 在 MainActivity 添加

public class MainActivity extends FlutterActivity { @Override public void configureFlutterEngine(@NonNull FlutterEngine flutterEngine) { super.configureFlutterEngine(flutterEngine); flutterEngine.getPlatformViewsController().getRegistry().registerViewFactory("cspy/flutter_ys7/videoView", new FlutterYs7ViewFactory(flutterEngine.getDartExecutor().getBinaryMessenger(),getApplication())); } } 代码混淆

目前sdk在打包时不能混淆,请添加以下内容

#========SDK对外接口=======# -keep class com.ezviz.opensdk.** { *;} #========以下是hik二方库=======# -dontwarn com.ezviz.** -keep class com.ezviz.** { *;} -dontwarn com.ez.** -keep class com.ez.** { *;} -dontwarn com.hc.CASClient.** -keep class com.hc.CASClient.** { *;} -dontwarn com.videogo.** -keep class com.videogo.** { *;} -dontwarn com.hik.TTSClient.** -keep class com.hik.TTSClient.** { *;} -dontwarn com.hik.stunclient.** -keep class com.hik.stunclient.** { *;} -dontwarn com.hik.streamclient.** -keep class com.hik.streamclient.** { *;} -dontwarn com.hikvision.sadp.** -keep class com.hikvision.sadp.** { *;} -dontwarn com.hikvision.netsdk.** -keep class com.hikvision.netsdk.** { *;} -dontwarn com.neutral.netsdk.** -keep class com.neutral.netsdk.** { *;} -dontwarn com.hikvision.audio.** -keep class com.hikvision.audio.** { *;} -dontwarn com.mediaplayer.audio.** -keep class com.mediaplayer.audio.** { *;} -dontwarn com.hikvision.wifi.** -keep class com.hikvision.wifi.** { *;} -dontwarn com.hikvision.keyprotect.** -keep class com.hikvision.keyprotect.** { *;} -dontwarn com.hikvision.audio.** -keep class com.hikvision.audio.** { *;} -dontwarn org.MediaPlayer.PlayM4.** -keep class org.MediaPlayer.PlayM4.** { *;} #========以上是hik二方库=======# #========以下是第三方开源库=======# # JNA -dontwarn com.sun.jna.** -keep class com.sun.jna.** { *;} # Gson -keepattributes *Annotation* -keep class sun.misc.Unsafe { *; } -keep class com.idea.fifaalarmclock.entity.*** -keep class com.google.gson.stream.** { *; } # OkHttp # JSR 305 annotations are for embedding nullability information. -dontwarn javax.annotation.** # A resource is loaded with a relative path so the package of this class must be preserved. -keepnames class okhttp3.internal.publicsuffix.PublicSuffixDatabase # Animal Sniffer compileOnly dependency to ensure APIs are compatible with older versions of Java. -dontwarn org.codehaus.mojo.animal_sniffer.* # OkHttp platform used only on JVM and when Conscrypt dependency is available. -dontwarn okhttp3.internal.platform.ConscryptPlatform # 必须额外加的,否则编译无法通过 -dontwarn okio.** #========以上是第三方开源库=======# 使用方式 // 详情见example/lib/main.dart // 手势监听使用 Listener


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3