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にあります:
    
    
    
    Demoでダウンロードサービスを再利用したい場合
    自分でダウンロードサービスをしたい場合
    1. 2つのZIPパッケージのMD5値を計算します。Macでは、コマンドラインでmd5ファイルパス/ファイル名を使用して直接MD5を計算することができます。または他のツールソフトウェアで計算することもできます。
    2. 圧縮パッケージをサーバーにアップロードして、ダウンロードURLを取得します。
    3. DemoプロジェクトのResDownloadConfigにある次の定数値を更新します:
    
    
    
    4. ResDownloadUtil.checkOrDownloadFilesを呼び出すことで、ダウンロードを開始します。
    1. ダウンロードを完了して解凍してから、SDKで解凍後のパスを設定してください。例:解凍完了後:soのpath = /data/data/com.tencent.pitumotionDemo.effects/files/xmagic_libs
    
    
    
    ご注意:
    クリーンアップソフトウェアによって誤って削除された場合に備えて、外部ストレージではなくアプリのプライベートディレクトリにダウンロードすることを強くお勧めします。同時に、ユーザーの携帯電話のCPUタイプによって、必要に応じてv8aまたはv7aをダウンロードし、ダウンロード速度を向上させることをお勧めします。ここでは、DemoプロジェクトのLaunchActivityのメソッドを参照できます。
    2. 以下のコードを呼び出したら、soの読み込みとLicenceの認証は完了します。
    XmagicApi.setLibPathAndLoad(path);
    auth();
    ご注意:
    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を計算し、サーバーにアップロードしてダウンロードアドレスを取得します。
    Demoでダウンロードサービスを再利用したい場合
    自分でダウンロードサービスをしたい場合
    1. 下図に示すダウンロードアドレスとMD5を更新します。
    
    
    2. ResDownloadUtil.checkOrDownloadFilesを呼び出してダウンロードを開始し、ResDownloadUtil.getValidAssetsDirectoryを呼び出してダウンロード後のassetsのパスを取得します。詳しい方法については、LaunchActivity.java`をご参照ください。
    上記のZIPパッケージをダウンロードして解凍した後、パッケージ内のファイルの構造を再構成する必要があります。最終的なファイル構造は以下のとおりです:
    
    
    
    そのうち、赤枠内のlight_assets、light_materialなどの名前は任意に変更できません。ResDownloadUtillのorganizeAssetsDirectoryメソッドを直接再利用して、整理を完了することをお勧めします。
    ご注意:
    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日対応)