FileProvider方式分享配置

当前QQ和微信适配了FileProvider,需要把图片放入应用专属目录, 通过context.getFilesDir或context.getExternalFilesDir等方式获取图片路径,传入路径时分享SDK内部会判断在当前APP支持的情况下把路径转为content uri进行分享。

  • 在Manifest中配置Provider,authorities约定为applicationId.FileProvider,注意FileProvider的大小写。

    <provider
      android:name="androidx.core.content.FileProvider"
      android:authorities="com.tencent.tmf.demo.FileProvider"
      android:exported="false"
      android:grantUriPermissions="true">
          <meta-data
                  android:name="android.support.FILE_PROVIDER_PATHS"
                  android:resource="@xml/file_paths" />
    </provider>
    <paths>
      <!-- 自定义目录映射用于微信分享,可以定义多个。name值随意填写,path需要填写子目录名,
      要和文件保存目录保持一致,如以下获得路径时用context.getExternalFilesDir("img"),context.getFilesDir() -->
      <external-files-path name="sharedata" path="img" />
      <files-path name="sharedata2" path="." />
    
      <!-- opensdk_root,opensdk_external 为QQ分享默认规定,无需修改 -->
      <external-files-path name="opensdk_external" path="Images/tmp"/>
      <root-path name="opensdk_root" path=""/>
      <external-path name="external_files" path="."/>
    </paths>
    
Copyright © 2013-2023 Tencent Cloud. all right reserved,powered by GitbookUpdate Time 2023-08-31 14:46:07

results matching ""

    No results matching ""