写点什么

2022 年度 FinClip 扩展 SDK 推荐!

作者:FinClip
  • 2023-01-19
    广东
  • 本文字数:2554 字

    阅读完需:约 8 分钟


2022 年,FinClip 团队进行了 24 个产品迭代,为了丰富 FinClip 的平台能力,除了核心 SDK 之外,我们还为开发者们提供了扩展 SDK,扩展 SDK 是一个依赖核心 SDK 的库,里面提供了核心 SDK 中所没有的各种小程序 API。


官方希望通过丰富的扩展 SDK 库可以帮助开发者减少开发工作,把更多的精力用到实现业务上。那本期,小编就为大家推荐扩展 SDK 库中 8 个功能稳定又实用的 SDK!(更多详细内容请点击


以下分享以 Android SDK 文件为例,您可登录 资源下载中心下载 Android SDK 文件,扩展 SDK 也处于在所下载的压缩包中。

1、WeChatSDK

微信 SDK 的快捷接入,提供调起微信通过微信小程序获得登录、用户信息、手机号、支付的能力。


集成方式:


implementation 'com.finogeeks.mop:wechat:x.y.z'
复制代码


并在项目的 build.gradle 文件中(如 app/build.gradle)添加您在微信开放平台申请的微信 APPID:


android {    // ..其它配置省略    defaultConfig {    // ..其它配置省略    resValue "string", "wechat_sdk_app_id", "您的微信SDKAPPID"    }}
复制代码


WeChatSDK 相关 api 概览


2、MapSDK

支持 Map 组件及位置 API。 其依赖于核心 SDK,做为地图、位置功能的补充。 其中提供的地图、定位能力依赖于第三方地图、定位 SDK。支持高德地图/高德定位、百度地图/百度定位、谷歌地图/谷歌定位三种组合情况使用。集成文档请参照「小程序SDK-Android SDK-Android 集成-6. MapSDK」


Map SDK 相关 api 概览


3、蓝牙 SDK

使用蓝牙接口需要单独集成蓝牙 SDK,集成后接口即可生效,无需配置。


集成方式:


implementation 'com.finogeeks.mop:bluetooth:x.y.z'
复制代码


蓝牙 SDK 相关 api 概览


4、声网 SDK

使用声网相关的接口需要单独集成声网 SDK,集成后接口即可生效,无需配置。


集成方式:


implementation 'com.finogeeks.mop:agora:x.y.z'
复制代码


若您使用导入 aar 的方式接入声网 SDK,需要额外添加声网依赖:


implementation 'io.agora.rtc:full-sdk:3.5.0'
复制代码


声网 SDK 相关 api 概览


5、WebRTCSDK

使用 WebRTC 相关的接口需要单独集成 WebRTCSDK,集成后接口即可生效,无需配置。


集成方式:


implementation 'com.finogeeks.mop:webrtc:x.y.z'
复制代码


若您使用导入 aar 的方式接入 WebRTCSDK,需要额外添加 WebRTC 依赖:


implementation 'org.webrtc:google-webrtc:1.0.32006'
复制代码


WebRTC SDK 相关 api 概览


6、联系人 SDK

使用联系人相关的接口需要单独集成联系人 SDK,集成后接口即可生效,无需配置。


集成方式:


implementation 'com.finogeeks.mop:contact:x.y.z'
复制代码


联系人 SDK 相关 api 概览


7、剪贴板 SDK

使用剪贴板相关的接口需要单独集成剪贴板 SDK,集成后接口即可生效,无需配置。


集成方式:


implementation 'com.finogeeks.mop:clipboard:x.y.z'
复制代码


剪贴板 SDK 相关 api 概览


8、Media SDK

video 组件的边下边播需要集成此 SDK 才能实现。


集成方式:


android {    packagingOptions {        doNotStrip "*/arm64-v8a/libijkffmpeg.so"        doNotStrip "*/arm64-v8a/libijkplayer.so"        doNotStrip "*/arm64-v8a/libijksdl.so"
doNotStrip "*/armeabi/libijkffmpeg.so" doNotStrip "*/armeabi/libijkplayer.so" doNotStrip "*/armeabi/libijksdl.so"
doNotStrip "*/armeabi-v7a/libijkffmpeg.so" doNotStrip "*/armeabi-v7a/libijkplayer.so" doNotStrip "*/armeabi-v7a/libijksdl.so"
doNotStrip "*/x86/libijkffmpeg.so" doNotStrip "*/x86/libijkplayer.so" doNotStrip "*/x86/libijksdl.so"
doNotStrip "*/x86_64/libijkffmpeg.so" doNotStrip "*/x86_64/libijkplayer.so" doNotStrip "*/x86_64/libijksdl.so" }}

dependencies { implementation 'com.finogeeks.mop:media:x.y.z' //x.y.z须替换为具体的版本号 implementation 'tv.danmaku.ijk.media:ijkplayer-java:0.8.8'}
复制代码


在 proguard-rules.pro 文件中添加混淆规则:


# Media SDK-keep public class com.finogeeks.finclip.plugins.media.player.ijk.FinIjkMediaPlayerFactory {    public <init>();}-keep class com.finogeeks.finclip.plugins.media.player.ijk.IjkMediaPlayerOptionsApplier {    public static <fields>;    public static <methods>;}-keep class com.finogeeks.finclip.plugins.media.player.ijk.IjkMediaPlayerOptionsApplier$Applier {*;}-keep class com.finogeeks.finclip.plugins.media.player.ijk.IjkMediaPlayerOptionsApplier$Options {*;}
#ijkplayer-keep class tv.danmaku.ijk.media.player.** {*;}-keep class tv.danmaku.ijk.media.player.IjkMediaPlayer{*;}-keep class tv.danmaku.ijk.media.player.ffmpeg.FFmpegApi{*;}
复制代码


集成 Media SDK 后,video 组件的播放器实现,会从系统方案 MediaPlayer 自动切换到 IjkMediaPlayer 方案,无需做其他操作。


Media SDK 的相关 API


由于 IjkMediaPlayer 的配置项非常多,每个 App 的需求又不同,所以 Media SDK 将配置功能暴露给 App 开发者来调用。


class SampleApplication : MultiDexApplication() {
override fun onCreate() { super.onCreate() IjkMediaPlayerOptionsApplier.setIjkMediaPlayerOptionsApplier(this) { it.setOption( IjkMediaPlayer.OPT_CATEGORY_PLAYER, "start-on-prepared", 0 ) // 禁止自动开始播放,由上层去控制
it.setOption( IjkMediaPlayer.OPT_CATEGORY_PLAYER, "max-buffer-size", (1024 * 24).toLong() ) // 最大缓冲大小,单位kb
it.setOption( IjkMediaPlayer.OPT_CATEGORY_PLAYER, "packet-buffering", 0L ) // 如此设置,才会在及时停止加载状态显示
it.setOption( IjkMediaPlayer.OPT_CATEGORY_PLAYER, "enable-accurate-seek", 1 ) // 设置为精准seek } // 其他初始化代码…… }}
复制代码


同时如上代码片段中的配置,是 Media SDK 的默认配置项,App 开发者可以按照自己的需要制定相关的配置。

用户头像

FinClip

关注

finogeeks 2018-11-08 加入

深圳湾人才公园旁不知名博主

评论

发布
暂无评论
2022年度 FinClip 扩展SDK推荐!_FinClip_InfoQ写作社区