Charles - Android本地多媒体选择器

发表于:2024-4-19 09:15

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:TonnyL    来源:稀土掘金

  CharlesAndroid 系统的本地文件选择器。您可以:
  ·在活动或片段中使用它。
  · 选择包括图像、视频、音频和文档在内的多媒体文件。
  · 应用不同的主题,包括两个内置主题和自定义主题。
  · 限制不同的屏幕方向。
  · 通过您自己去发现更多功能。
  · 将JitPack存储库添加到根build.gradle文件:
     repositories {
      maven { url "https://jitpack.io" }
  }
  · 将代码添加到模块的build.gradle文件中:
    dependencies {
      implementation 'io.github.tonnyl:charles:x.y.z'
  }
  Maven
   <dependency>
    <groupId>io.github.tonnyl</groupId>
    <artifactId>charles</artifactId>
    <version>x.y.z</version>
    <type>pom</type>
  </dependency>
  ProGuard
  如果您使用Glide作为图像引擎,请按照Glide的自述添加规则。并添加额外规则:
   -dontwarn com.squareup.picasso.**
  如果您使用Picasso作为图像引擎,请按照Picasso的自述添加规则。并添加额外规则:
  -dontwarn com.bumptech.glide.**
  注意:以上程序规则是正确的。
  Usage
  Permission
  库需要两个权限:
  ·android.permission.READ_EXTERNAL_STORAGE
  · android.permission.WRITE_EXTERNAL_STORAGE
  所以,如果您的目标是Android 6.0+,您需要在下一步之前处理运行时权限请求。
  Simple Usage Snippet
  Start CharlesActivity from current Activity or Fragment:
         Charles.from(this@MainActivity)
          .choose()
          .maxSelectable(9)
          .progressRate(true)
          .theme(R.style.Charles)
          .imageEngine(GlideEngine())
          .restrictOrientation(ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED)
          .forResult(REQUEST_CODE_CHOOSE)
  Themes
  有两个内置主题可用于启动CharlesActivity:
  · R.style.Charles (light mode)
  · R.style.CharlesDark (dark mode)
  你也可以随心所欲地定义自己的主题。
  Receive Result
  In onActivityResult() callback of the starting Activity or Fragment:
     override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
      super.onActivityResult(requestCode, resultCode, data)
      if (requestCode == REQUEST_CODE_CHOOSE && resultCode == Activity.RESULT_OK) {
          val uris = Charles.obtainResult(data)
          val paths = Charles.obtainPathResult(data)
          Log.d("charles", "uris: $uris")
          Log.d("charles", "paths: $paths")
      }
  }
  本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号