tencent cloud

フィードバック

最終更新日:2022-08-12 15:16:28

    パケットのサイズを小さくするために、SDKに必要なassetsリソース、soライブラリ、およびダイナミックエフェクトリソースMotionRes(一部のベーシック版SDKにはダイナミックエフェクトリソースはありません)をネットワークからのダウンロードに変更することができます。ダウンロード完了後、上記ファイルのパスをSDKに設定します。

    Demoのダウンロードロジックを再利用することをお勧めします。当然のことながら、既存のダウンロードサービスを使用することもできます。

    Demoのダウンロードロジックを再利用する場合は、次の点に注意してください:Demoでは、ブレークポイントからのダウンロード再開機能がデフォルトで有効になっています。これにより、ダウンロードが異常に中断された場合、次回の時に中断された場所から引き続きダウンロードできます。ブレークポイントからのダウンロード再開機能を有効にする場合は、ダウンロードサーバーがブレークポイントからのダウンロード再開機能をサポートしていることを確認してください。

    検査方法

    サーバーがブレークポイントからのダウンロード再開機能をサポートしているかどうかを判断するには、WebサーバーがRangeリクエストをサポートしているかどうかを確認してください。テスト方法は、コマンドラインで以下のcurlコマンドを実行することです:
    curl -i --range 0-9 https://您的服务器地址/待下载的文件名
    例:
    curl -i --range 0-9 https://mediacloud-76607.gzc.vod.tencent-cloud.com/TencentEffect/Android/2.4.1.119/xmagic_S1-04_android_2.4.1.119.zip
    返された内容にContent-Rangeフィールドがある場合は、サーバーがブレークポイントからのダウンロード再開機能をサポートしていることを意味します。
    

    soのダイナミックダウンロード

    下図に示すように、so圧縮パッケージは jniLibs/arm64-v8ajniLibs/armeabi-v7aにあります:

    1. 2つのZIPパッケージのMD5値を計算します。Macでは、コマンドラインでmd5ファイルパス/ファイル名を使用して直接MD5を計算することができます。または他のツールソフトウェアで計算することもできます。
    2. 圧縮パッケージをサーバーにアップロードして、ダウンロードURLを取得します。
    3. DemoプロジェクトのResDownloadConfigにある次の定数値を更新します:
    4. ResDownloadUtil.checkOrDownloadFilesを呼び出すことで、ダウンロードを開始します。
    注意:

    • SDKのバージョン更新により、対応するsoが変更される可能性があります。そのため、これらのsoを再度ダウンロードしてください。Demoのメソッドを参照し、検証にMD5を使用することをお勧めします。
    • 自分でsoをダウンロードするか、Demoのダウンロードサービスを再利用するかにかかわらず、SDKのauthインターフェースを呼び出す前に、soがダウンロードされているかどうかを先に確認してください。ResDownloadUtilは、以下の確認方法を提供しています。すでにダウンロードされている場合は、SDKでパスを以下のように設定します:
    String validLibsDirectory = ResDownloadUtil.getValidLibsDirectory(LaunchActivity.this,
    isCpuV8a() ? ResDownloadConfig.DOWNLOAD_MD5_LIBS_V8A : ResDownloadConfig.DOWNLOAD_MD5_LIBS_V7A);
    if (validLibsDirectory == null) {
        Toast.makeText(LaunchActivity.this,"libsがダウンロードされていない場合は先にダウンロードしてください",Toast.LENGTH_LONG).show();
        return;
    }
    XmagicApi.setLibPathAndLoad(validLibsDirectory);
    auth();
    

    assetsリソースのダイナミックダウンロード

    assetsリソースのダイナミックダウンロードについての具体的な操作は以下のとおりです:

    1. ローカルプロジェクトのassetsで構成を行います。
      • 2.4.0以降のバージョン:ローカルassetsのディレクトリにファイルを保存する必要はありません。
      • 2.4.0より前のバージョン:Licenseファイルとbrand_name.jsondevice_config.jsonphone_info.jsonscore_phone.jsonの4つのJSON構成ファイルを保存してください。
    2. SDKでパッケージ化されたdownload_assets.zipを見つけます。
    3. 上記のsoファイルの処理方法と同じように、このZIPパッケージのMD5を計算し、サーバーにアップロードしてダウンロードアドレスを取得します。
      1. 下図に示すダウンロードアドレスとMD5を更新します。
      2. ResDownloadUtil.checkOrDownloadFilesを呼び出してダウンロードを開始し、ResDownloadUtil.getValidAssetsDirectoryを呼び出してダウンロード後のassetsのパスを取得します。詳しい方法については、LaunchActivity.java`をご参照ください。
    注意:

    • SDKのバージョン更新により、対応するassetsが変更される可能性があります。互換性を確保するために、これらのassetsを再度ダウンロードしてください。Demoのメソッドを参照し、検証にMD5を使用することをお勧めします。
    • 自分でassetsをダウンロードするか、Demoのダウンロードサービスを再利用するかにかかわらず、撮影する前に、assetsがダウンロードされているかどうかを先に確認してください。ResDownloadUtilは、以下の確認方法を提供しています。すでにダウンロードされている場合は、XmagicResParserでパスを設定します。詳しい方法については、LaunchActivity.javaをご参照ください。
    String validAssetsDirectory = ResDownloadUtil.getValidAssetsDirectory(LaunchActivity.this,ResDownloadConfig.DOWNLOAD_MD5_ASSETS);
    if (validAssetsDirectory == null) {
         Toast.makeText(LaunchActivity.this,"assetsがダウンロードされていない場合は先にダウンロードしてください",Toast.LENGTH_LONG).show();
         return;
    }
    XmagicResParser.setResPath(validAssetsDirectory);
    startActivity(intent);
    

    ダイナミックエフェクトリソースMotionResのダウンロード

    一部のベーシックパッケージにはダイナミックエフェクトリソースがありません。この場合は、このセクションをスキップしてもかまいません。

    ダイナミックエフェクトは6つのカテゴリーに分類され、それぞれに複数のZIPパッケージがあり、各ZIPパッケージは1種類のダイナミックエフェクトです。購入したパッケージタイプによって、そのファイルの内容は異なります。

    ダイナミックエフェクトリソースは、必要に応じて(たとえば、ユーザーが関連する機能ページに入った後、またはダイナミックエフェクトのアイコンをクリックした後など)ダウンロードできます。

    これらのZIPパッケージをサーバーにアップロードし、各ZIPパッケージのダウンロードアドレスを取得する必要があります。

    注意:

    ダイナミックエフェクトリソースのダウンロード後のディレクトリMotionResは、前のセクションのlight_assetsおよびlight_materialと同じレイヤーにある必要があります。また、下図に示すように、ZIPパッケージを直接配置するのではなく、各エフェクトを解凍してください:

    MotionResをダウンロードするには、ResDownloadUtil.checkOrDownloadMotionsメソッドをご参照ください。必要に応じて1つずつダウンロードすることをお勧めします。

    Demoでダウンロードサービスを再利用したい場合は、ResDownloadConfigのMOTION_RES_DOWNLOAD_PREFIX定数値を自分のダウンロードURLのプレフィックスに置き換えてください。

    お問い合わせ

    カスタマーサービスをご提供できるため、ぜひお気軽にお問い合わせくださいませ。

    テクニカルサポート

    さらにサポートが必要な場合は、サポートチケットを送信して弊社サポートチームにお問い合わせください。24時間365日のサポートをご提供します。

    電話サポート(24 時間365日対応)