mForce(false), mGrayscaleTolerance(0), mMakePackageDirs(false),
mUpdate(false), mExtending(false),
mRequireLocalization(false), mPseudolocalize(false),
- mUTF8(false), mValues(false),
+ mUTF8(false), mEncodingSpecified(false), mValues(false),
mCompressionMethod(0), mOutputAPKFile(NULL),
mAssetSourceDir(NULL), mProguardFile(NULL),
mAndroidManifestFile(NULL), mPublicOutputFile(NULL),
void setPseudolocalize(bool val) { mPseudolocalize = val; }
bool getUTF8(void) const { return mUTF8; }
void setUTF8(bool val) { mUTF8 = val; }
+ bool getEncodingSpecified(void) const { return mEncodingSpecified; }
+ void setEncodingSpecified(bool val) { mEncodingSpecified = val; }
bool getValues(void) const { return mValues; }
void setValues(bool val) { mValues = val; }
int getCompressionMethod(void) const { return mCompressionMethod; }
const char* getMinSdkVersion() const { return mMinSdkVersion; }
void setMinSdkVersion(const char* val) {
mMinSdkVersion = val;
- setUTF8(isUTF8Available());
+ if (!mEncodingSpecified) {
+ setUTF8(isUTF8Available());
+ }
}
const char* getTargetSdkVersion() const { return mTargetSdkVersion; }
void setTargetSdkVersion(const char* val) { mTargetSdkVersion = val; }
bool mRequireLocalization;
bool mPseudolocalize;
bool mUTF8;
+ bool mEncodingSpecified;
bool mValues;
int mCompressionMethod;
bool mJunkPath;
" [-0 extension [-0 extension ...]] [-g tolerance] [-j jarfile] \\\n"
" [--min-sdk-version VAL] [--target-sdk-version VAL] \\\n"
" [--max-sdk-version VAL] [--app-version VAL] \\\n"
- " [--app-version-name TEXT] [--custom-package VAL] \\\n"
+ " [--app-version-name TEXT] [--custom-package VAL] [--utf16] \\\n"
" [-I base-package [-I base-package ...]] \\\n"
" [-A asset-source-dir] [-G class-list-file] [-P public-definitions-file] \\\n"
" [-S resource-sources [-S resource-sources ...]] "
" -P specify where to output public resource definitions\n"
" -S directory in which to find resources. Multiple directories will be scanned\n"
" and the first match found (left to right) will take precedence.\n"
- " -8 Encode string resources in UTF-8.\n"
" -0 specifies an additional extension for which such files will not\n"
" be stored compressed in the .apk. An empty string means to not\n"
" compress any files at all.\n"
" --min-sdk-version\n"
- " inserts android:minSdkVersion in to manifest.\n"
+ " inserts android:minSdkVersion in to manifest. If the version is 7 or\n"
+ " higher, the default encoding for resources will be in UTF-8.\n"
" --target-sdk-version\n"
" inserts android:targetSdkVersion in to manifest.\n"
" --max-sdk-version\n"
" --version-name\n"
" inserts android:versionName in to manifest.\n"
" --custom-package\n"
- " generates R.java into a different package.\n");
+ " generates R.java into a different package.\n"
+ " --utf16\n"
+ " changes default encoding for resources to UTF-16. Only useful when API\n"
+ " level is set to 7 or higher where the default encoding is UTF-8.\n");
}
/*
bundle.setCompressionMethod(ZipEntry::kCompressStored);
}
break;
- case '8':
- bundle.setUTF8(true);
- break;
case '-':
if (strcmp(cp, "-min-sdk-version") == 0) {
argc--;
goto bail;
}
bundle.setCustomPackage(argv[0]);
+ } else if (strcmp(cp, "-utf16") == 0) {
+ bundle.setEncodingSpecified(true);
+ bundle.setUTF8(false);
} else {
fprintf(stderr, "ERROR: Unknown option '-%s'\n", cp);
wantUsage = true;