You need to enable JavaScript to run this app.
导航

Android Sample(v4.1.0.0及以上)

最近更新时间2022.02.25 17:16:51

首次发布时间2022.02.25 17:16:51

Sample总体结构

├── algorithm //基础算法模块
├── app // 首页
├── ar // AR模块
├── avatar // Avatar模块
├── build.gradle
├── ck // 
├── common // 通用工具封装
├── core // SDK调用封装
├── effect // 特效模块
├── gradle
├── gradle.properties
├── gradlew
├── gradlew.bat
├── lens // 画质模块
├── library // SDK库
├── local.properties
├── settings.gradle
└── sports // 运动健身模块


特效模块结构

├── activity
│   ├── BaseEffectActivity.java //特效基类
│   ├── BeautyActivity.java //美颜美型
│   ├── MattingStickerActivity.java //分割贴纸
│   ├── QRScanActivity.java // 扫一扫
│   ├── SingleTabStickerActivity.java //单tab贴纸页面
│   ├── StickerActivty.java//多tab贴纸
│   └── StyleMakeUpActivity.java// 风格妆
├── adapter
│   ├── EffectButtonRVAdapter.java
│   ├── EffectButtonViewRVAdapter.java
│   ├── FragmentVPAdapter.java
│   ├── OnPageChangeListenerAdapter.java
│   └── SelectItemRVAdapter.java
├── config
│   ├── EffectConfig.java
│   └── StickerConfig.java
├── fragment
│   ├── BeautyFaceFragment.java
│   ├── EffectFragment.java
│   ├── FilterFragment.java
│   ├── MattingStickerFragment.java
│   ├── MultiTabStickerFragment.java
│   ├── SingleTabStickerFrament.java
│   ├── StickerFragment.java
│   └── StyleMakeUpFragment.java
├── gesture // 手势管理器
│   ├── BaseGestureDetector.java
│   ├── GestureHelper.java
│   ├── GestureManager.java
│   ├── RotateGestureDetector.java
│   └── TwoFingerGestureDetector.java
├── manager //特效节点数据管理
│   ├── EffectDataManager.java
│   ├── FilterDataManager.java
│   └── StickerDataManager.java
├── model // 数据模型
│   ├── ComposerNode.java
│   ├── EffectButtonItem.java
│   ├── FilterItem.java
│   └── StickerItem.java
├── qrscan //扫码下载相关
│   ├── BaseResponse.java
│   ├── DownloadParam.java
│   ├── EncryptParam.java
│   ├── EncryptResult.java
│   └── QRScanResult.java
├── res // 资源路径管理
│   └── EffectResourceHelper.java
├── task //异步任务
│   └── DownloadStickerTask.java
├── utils // 工具
│   ├── Config.java
│   └── NetworkUtils.java
└── view
    ├── ProgressBar.java
    ├── RadioTextView.java
    └── ViewfinderView.java



算法模块结构

├── activity
│   └── AlgorithmActivity.java //算法页面
├── adapter
│   ├── AlgorithmButtonRVAdapter.java
│   └── FaceClusterAdapter.java
├── config
│   └── AlgorithmConfig.java
├── fragment 
│   ├── AlgorithmBoardFragment.java
│   ├── FaceClusterFragment.java
│   ├── FaceInfoFragment.java
│   ├── FaceVerifyFragment.java
│   ├── FaceVerifyInfoFragment.java
│   ├── SkyInfoFragment.java
│   └── StudentIdOcrFragment.java
├── model
│   ├── AlgorithmItem.java
│   └── AlgorithmItemGroup.java
├── render // 算法渲染相关
│   ├── AlgorithmRender.java
│   ├── FaceSegmentProgram.java
│   ├── HairMaskProgram.java
│   ├── LineProgram.java
│   ├── MaskProgram.java
│   ├── PointProgram.java
│   ├── PortraitMaskProgram.java
│   ├── ShaderHelper.java
│   ├── ShaderProgram.java
│   ├── SkyMaskProgram.java
│   └── TextureRotationUtil.java
├── res //  资源路径管理
│   └── AlgorithmResourceHelper.java
├── task //异步任务
│   ├── facecluster // 人脸聚类
│   │   ├── FaceClusterHandler.java
│   │   ├── FaceClusterMgr.java
│   │   └── FaceClusterThread.java
│   └── faceverify // 人脸比对
│       ├── FaceVerifyResult.java
│       ├── FaceVerifyThreadHandler.java
│       └── RepeatedVerifyHandler.java
├── ui // UI控件
│   ├── AlgorithmUI.java
│   ├── AlgorithmUIFactory.java
│   ├── AnimojiUI.java
│   ├── BaseAlgorithmUI.java
│   ├── C1UI.java
│   ├── C2UI.java
│   ├── CarUI.java
│   ├── ConcentrationUI.java
│   ├── FaceClusterUI.java
│   ├── FaceUI.java
│   ├── FaceVerifyUI.java
│   ├── GazeEstimationUI.java
│   ├── HairParserUI.java
│   ├── HandUI.java
│   ├── HeadSegUI.java
│   ├── HumanDistanceUI.java
│   ├── LightClsUI.java
│   ├── PetFaceUI.java
│   ├── PortraitMattingUI.java
│   ├── SkeletonUI.java
│   ├── SkySegUI.java
│   ├── StudentIdOcrTestUI.java
│   ├── StudentIdOcrUI.java
│   └── VideoClsUI.java
└── view // 自定义view
    ├── BrandRecogTip.java
    ├── CarRectInfoTip.java
    ├── HandInfoTip.java
    ├── HumanDistanceTip.java
    ├── PetFaceInfoTip.java
    ├── ResultTip.java
    └── TipManager.java

Common模块结构

├── adapter
│   └── ButtonViewRVAdapter.java
├── base 
│   ├── BaseBarGLActivity.java //带顶部栏的GLActivity
│   └── BaseGLActivity.java //封装了GLSurfaceView的基类
├── config
│   └── ImageSourceConfig.java
├── fragment
│   └── BoardButtonFragment.java
├── imgsrc // 数据源,分图片、视频、相机三种
│   ├── ImageSourceProvider.java
│   ├── TextureHolder.java
│   ├── bitmap //图片源
│   │   └── BitmapSourceImpl.java
│   ├── camera //相机源
│   │   ├── Camera1.java
│   │   ├── Camera2.java
│   │   ├── Camera2BlackList.java
│   │   ├── CameraInterface.java
│   │   ├── CameraListener.java
│   │   ├── CameraProxy.java
│   │   ├── CameraSourceImpl.java
│   │   ├── RectUtils.java
│   │   └── focus
│   └── video //视频源
│       ├── EglCore.java
│       ├── EglSurfaceBase.java
│       ├── FullFrameRect.java
│       ├── MediaMuxerManager.java
│       ├── SimplePlayer.java
│       ├── Texture2dProgram.java
│       ├── TextureMovieEncoder.java
│       ├── VideoEncodeHelper.java
│       ├── VideoEncoderCore.java
│       ├── VideoReSampleList.java
│       ├── VideoSourceImpl.java
│       └── WindowSurface.java
├── model // 数据模型
│   ├── BubbleConfig.java
│   ├── ButtonItem.java
│   ├── CaptureResult.java
│   ├── EffectType.java
│   ├── ProcessInput.java
│   └── ProcessOutput.java
├── task
│   └── SavePicTask.java
├── utils 
│   ├── BitmapUtils.java
│   ├── CommonUtils.java
│   ├── DensityUtils.java
│   ├── FileUtils.java
│   ├── FrameRator.java
│   ├── PreferenceUtils.java
│   ├── PreviewSizeManager.java
│   └── ToastUtils.java
└── view //自定义视图
    ├── BubbleTipManager.java
    ├── ButtonView.java
    ├── PropertyTextView.java
    ├── SwitchView.java
    └── bubble
        ├── BubblePopupWindow.java
        ├── BubbleRelativeLayout.java
        └── BubbleWindowManager.java

Core模块结构

.
├── algorithm //基础算法调用封装
│   ├── AnimojiAlgorithmTask.java
│   ├── C1AlgorithmTask.java
│   ├── C2AlgorithmTask.java
│   ├── CarAlgorithmTask.java
│   ├── ConcentrateAlgorithmTask.java
│   ├── FaceAlgorithmTask.java
│   ├── FaceClusterAlgorithmTask.java
│   ├── FaceVerifyAlgorithmTask.java
│   ├── GazeEstimationAlgorithmTask.java
│   ├── HairParserAlgorithmTask.java
│   ├── HandAlgorithmTask.java
│   ├── HeadSegAlgorithmTask.java
│   ├── HumanDistanceAlgorithmTask.java
│   ├── LightClsAlgorithmTask.java
│   ├── PetFaceAlgorithmTask.java
│   ├── PortraitMattingAlgorithmTask.java
│   ├── SkeletonAlgorithmTask.java
│   ├── SkySegAlgorithmTask.java
│   ├── StudentIdOcrAlgorithmTask.java
│   ├── VideoClsAlgorithmTask.java
│   ├── base
│   │   ├── AlgorithmResourceProvider.java
│   │   ├── AlgorithmTask.java
│   │   └── AlgorithmTaskKey.java
│   └── factory
│       ├── AlgorithmTaskFactory.java
│       └── AlgorithmTaskKeyFactory.java
├── avatar
│   ├── AvatarInterface.java
│   └── AvatarResourceProvider.java
├── effect // 特效调用封装
│   ├── EffectManager.java
│   └── EffectResourceProvider.java
├── lens // 画质调用封装
│   ├── ImageQualityInterface.java
│   ├── ImageQualityManager.java
│   ├── ImageQualityResourceProvider.java
│   └── util
│       └── ImageQualityUtil.java
├── opengl // opengl相关
│   ├── Drawable2d.java
│   ├── Extensions.java
│   ├── GlUtil.java
│   ├── Program.java
│   ├── ProgramManager.java
│   ├── ProgramTexture2d.java
│   └── ProgramTextureOES.java
└── util // 公共工具类
    ├── ImageUtil.java // 图像处理工具
    ├── LogUtils.java //日志
    ├── OrientationSensor.java //重力方向传感器
    └── timer_record //性能日志
        ├── LogTimerRecord.java
        └── TimerRecord.java