Hi,
I think I found the reason why patch obb isn’t used. Below is the OBBData.java file after the package process of a project release.
package com.YourCompany.TestPakWin2;
public class OBBData
{
public static class XAPKFile {
public final boolean mIsMain;
public final String mFileVersion;
public final long mFileSize;
XAPKFile(boolean isMain, String fileVersion, long fileSize) {
mIsMain = isMain;
mFileVersion = fileVersion;
mFileSize = fileSize;
}
}
public static final XAPKFile[] xAPKS = {
new XAPKFile(
true, // true signifies a main file
"10034", // the version of the APK that the file was uploaded against
26529245L // the length of the file in bytes
)
};
};
And here is the OBBData.java file after the package process of a project patch.
package com.YourCompany.TestPakWin2;
public class OBBData
{
public static class XAPKFile {
public final boolean mIsMain;
public final String mFileVersion;
public final long mFileSize;
XAPKFile(boolean isMain, String fileVersion, long fileSize) {
mIsMain = isMain;
mFileVersion = fileVersion;
mFileSize = fileSize;
}
}
public static final XAPKFile[] xAPKS = {
new XAPKFile(
true, // true signifies a main file
"10035", // the version of the APK that the file was uploaded against
6622348L // the length of the file in bytes
)
};
};
There is only one XAPKFile object(main obb) in xAPKS array. But it should be two XAPKFile instance to represent main and patch obb file respectively.
Then I search in engine code and found some clue in file \Engine\Source\Programs\UnrealBuildTool\Android\UEDeployAndroid.cs. At line 421 says: For each obb file… but we only have one… for now anyway.. So, it seems UE4 is only support main obb currently.
Please correct me if I am wrong.