AddressableでAssetBundleをビルドしている場合、自動的にlink.xmlが生成されます。
Addressableがlink.xmlを生成する
Addressableをビルドする際、StreamingAssetsに幾つかのファイルを自動的に生成します。
このlink.xmlですが、AssetBundleに含まれるべきアセンブリの一覧が登録されています。なので、ストリップ対策のlink.xmlがまだ無ければそのまま、既にあるなら生成されたlink.xmlの中身を移植することで、AssetBundleでしか使わないコードが剥がされるのを回避出来ます。
なおlink.xmlファイルはStreamingAssetsに追加されてしまうので、出来ればAssets以下に移動したほうが良いです。
link.xmlを作成しているコード
作成しているのは、BuildScriptPackedMode.BuildData(...)
です。
正しくはこのコードにAddressableのビルド作業は大体含まれます。ContentPipeline.BuildAssetBundles()
が出力するIBundleBuildResults
の中にアセンブリが全部入ってるので、ソレをlink.xmlに出力している感じです。Scriptable Build Pipeline様様です。
関連
BuildScriptPackedMode.BuildData
を読むなら知っておいたほうが良いかも
link.xmlの問題について
SRB以前(マニフェスト)を使用していた場合