| Index: chrome/android/webapk/shell_apk/BUILD.gn
|
| diff --git a/chrome/android/webapk/shell_apk/BUILD.gn b/chrome/android/webapk/shell_apk/BUILD.gn
|
| index 285a1eb8025616e16acfde1d8718286a3b899668..0d564076f142a1e0389662ac3d5b89db5efea625 100644
|
| --- a/chrome/android/webapk/shell_apk/BUILD.gn
|
| +++ b/chrome/android/webapk/shell_apk/BUILD.gn
|
| @@ -24,20 +24,34 @@ declare_args() {
|
|
|
| shell_apk_manifest_package =
|
| "org.chromium.webapk.$webapk_manifest_package_origin"
|
| +test_shell_apk_manifest_package = "org.chromium.webapk.template.test"
|
|
|
| -shell_apk_manifest = "$target_gen_dir/shell_apk_manifest/AndroidManifest.xml"
|
| +webapk_common_jinja_variables = [
|
| + "host_url=$webapk_start_url",
|
| + "scope_url=$webapk_scope_url",
|
| + "scope_url_host=$webapk_scope_url_host",
|
| +]
|
| +
|
| +webapk_jinja_variables = [
|
| + "manifest_package=$shell_apk_manifest_package",
|
| + "runtime_host=$webapk_runtime_host",
|
| +]
|
| +
|
| +test_webapk_jinja_variables = [
|
| + "manifest_package=$test_shell_apk_manifest_package",
|
| + "runtime_host=org.chromium.chrome",
|
| +]
|
|
|
| jinja_template("shell_apk_manifest") {
|
| input = "AndroidManifest.xml"
|
| - output = shell_apk_manifest
|
| -
|
| - variables = [
|
| - "manifest_package=$shell_apk_manifest_package",
|
| - "host_url=$webapk_start_url",
|
| - "runtime_host=$webapk_runtime_host",
|
| - "scope_url=$webapk_scope_url",
|
| - "scope_url_host=$webapk_scope_url_host",
|
| - ]
|
| + output = "$target_gen_dir/shell_apk_manifest/AndroidManifest.xml"
|
| + variables = webapk_common_jinja_variables + webapk_jinja_variables
|
| +}
|
| +
|
| +jinja_template("test_shell_apk_manifest") {
|
| + input = "AndroidManifest.xml"
|
| + output = "$target_gen_dir/test_shell_apk_manifest/AndroidManifest.xml"
|
| + variables = webapk_common_jinja_variables + test_webapk_jinja_variables
|
| }
|
|
|
| android_resources("shell_apk_resources") {
|
| @@ -52,24 +66,49 @@ android_library("dex_loader_lib") {
|
| # Template for WebAPK. When a WebAPK is generated:
|
| # - Android manifest is customized to the website.
|
| # - App icon is extracted from the website and added to the APK's resources.
|
| -android_apk("webapk") {
|
| - android_manifest = shell_apk_manifest
|
| +template("webapk_template") {
|
| + android_apk(target_name) {
|
| + forward_variables_from(invoker, "*")
|
| + java_files = [
|
| + "src/org/chromium/webapk/shell_apk/MainActivity.java",
|
| + "src/org/chromium/webapk/shell_apk/WebApkServiceFactory.java",
|
| + ]
|
| + deps += [
|
| + ":dex_loader_lib",
|
| + ":shell_apk_manifest",
|
| + ":shell_apk_resources",
|
| + "//chrome/android/webapk/libs/common",
|
| + "//chrome/android/webapk/libs/runtime_library",
|
| + ]
|
| + if (!is_debug) {
|
| + proguard_enabled = true
|
| + proguard_configs = [ "//chrome/android/java/proguard.flags" ]
|
| + }
|
| + }
|
| +}
|
| +
|
| +webapk_template("webapk") {
|
| + android_manifest = get_target_outputs(":shell_apk_manifest")
|
| + android_manifest = android_manifest[1]
|
| apk_name = "WebApk.$webapk_manifest_package_origin"
|
| - java_files = [
|
| - "src/org/chromium/webapk/shell_apk/MainActivity.java",
|
| - "src/org/chromium/webapk/shell_apk/WebApkServiceFactory.java",
|
| - ]
|
| +
|
| deps = [
|
| - ":dex_loader_lib",
|
| ":shell_apk_manifest",
|
| - ":shell_apk_resources",
|
| - "//chrome/android/webapk/libs/common",
|
| - "//chrome/android/webapk/libs/runtime_library",
|
| ]
|
| - if (!is_debug) {
|
| - proguard_enabled = true
|
| - proguard_configs = [ "//chrome/android/java/proguard.flags" ]
|
| - }
|
| +}
|
| +
|
| +# The |test_webapk| target is used for WebAPK's instrumentation tests in the
|
| +# target chrome_public_test_apk. |test_webapk|'s package name and runtime
|
| +# host are set to be compatible with the instrumentation tests and are not
|
| +# customizable.
|
| +webapk_template("test_webapk") {
|
| + android_manifest = get_target_outputs(":test_shell_apk_manifest")
|
| + android_manifest = android_manifest[1]
|
| + apk_name = "TestWebApk"
|
| +
|
| + deps = [
|
| + ":test_shell_apk_manifest",
|
| + ]
|
| }
|
|
|
| android_library("shell_apk_javatests") {
|
|
|