| OLD | NEW |
| 1 # Copyright 2015 The Chromium Authors. All rights reserved. | 1 # Copyright 2015 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
| 4 | 4 |
| 5 import("//build/config/android/rules.gni") | 5 import("//build/config/android/rules.gni") |
| 6 | 6 |
| 7 declare_args() { | 7 declare_args() { |
| 8 # The origin URL of the WebAPK. Used to generate a unique package name for | 8 # The origin URL of the WebAPK. Used to generate a unique package name for |
| 9 # WebAPK. Example: "foo.com" | 9 # WebAPK. Example: "foo.com" |
| 10 webapk_manifest_package_origin = "template" | 10 webapk_manifest_package_origin = "template" |
| 11 | 11 |
| 12 # The browser that the WebAPK will be bound to. | 12 # The browser that the WebAPK will be bound to. |
| 13 webapk_runtime_host = "com.google.android.apps.chrome" | 13 webapk_runtime_host = "com.google.android.apps.chrome" |
| 14 | 14 |
| 15 # The class in |webapk_runtime_host|'s package which handles |
| 16 # NOTIFICATION_PREFERENCES intents. |
| 17 webapk_host_notification_preferences_handler = |
| 18 "com.google.android.apps.chrome.Main" |
| 19 |
| 15 # The Url of the Web Manifest file. | 20 # The Url of the Web Manifest file. |
| 16 webapk_web_manifest_url = "https://www.template.com/manifest.json" | 21 webapk_web_manifest_url = "https://www.template.com/manifest.json" |
| 17 | 22 |
| 18 # Attributes from Web Manifest. | 23 # Attributes from Web Manifest. |
| 19 webapk_start_url = "https://www.template.com/home_page" | 24 webapk_start_url = "https://www.template.com/home_page" |
| 20 webapk_name = "Longer Sample WebAPK Name" | 25 webapk_name = "Longer Sample WebAPK Name" |
| 21 webapk_short_name = "Sample WebAPK" | 26 webapk_short_name = "Sample WebAPK" |
| 22 webapk_scope_url = "https://www.template.com" | 27 webapk_scope_url = "https://www.template.com" |
| 23 webapk_display_mode = "standalone" | 28 webapk_display_mode = "standalone" |
| 24 webapk_orientation = "portrait" | 29 webapk_orientation = "portrait" |
| (...skipping 12 matching lines...) Expand all Loading... |
| 37 | 42 |
| 38 shell_apk_manifest = "$target_gen_dir/shell_apk_manifest/AndroidManifest.xml" | 43 shell_apk_manifest = "$target_gen_dir/shell_apk_manifest/AndroidManifest.xml" |
| 39 | 44 |
| 40 jinja_template("shell_apk_manifest") { | 45 jinja_template("shell_apk_manifest") { |
| 41 input = "AndroidManifest.xml" | 46 input = "AndroidManifest.xml" |
| 42 output = shell_apk_manifest | 47 output = shell_apk_manifest |
| 43 | 48 |
| 44 variables = [ | 49 variables = [ |
| 45 "manifest_package=$shell_apk_manifest_package", | 50 "manifest_package=$shell_apk_manifest_package", |
| 46 "runtime_host=$webapk_runtime_host", | 51 "runtime_host=$webapk_runtime_host", |
| 52 "host_notification_preferences_handler=$webapk_host_notification_preferences
_handler", |
| 47 "start_url=$webapk_start_url", | 53 "start_url=$webapk_start_url", |
| 48 "name=$webapk_name", | 54 "name=$webapk_name", |
| 49 "short_name=$webapk_short_name", | 55 "short_name=$webapk_short_name", |
| 50 "scope_url=$webapk_scope_url", | 56 "scope_url=$webapk_scope_url", |
| 51 "display_mode=$webapk_display_mode", | 57 "display_mode=$webapk_display_mode", |
| 52 "orientation=$webapk_orientation", | 58 "orientation=$webapk_orientation", |
| 53 "theme_color=$webapk_theme_color", | 59 "theme_color=$webapk_theme_color", |
| 54 "background_color=$webapk_background_color", | 60 "background_color=$webapk_background_color", |
| 55 "icon_url=$webapk_icon_url", | 61 "icon_url=$webapk_icon_url", |
| 56 "scope_url_host=$webapk_scope_url_host", | 62 "scope_url_host=$webapk_scope_url_host", |
| (...skipping 13 matching lines...) Expand all Loading... |
| 70 # Template for WebAPK. When a WebAPK is generated: | 76 # Template for WebAPK. When a WebAPK is generated: |
| 71 # - Android manifest is customized to the website. | 77 # - Android manifest is customized to the website. |
| 72 # - App icon is extracted from the website and added to the APK's resources. | 78 # - App icon is extracted from the website and added to the APK's resources. |
| 73 android_apk("webapk") { | 79 android_apk("webapk") { |
| 74 android_manifest = shell_apk_manifest | 80 android_manifest = shell_apk_manifest |
| 75 android_manifest_dep = ":shell_apk_manifest" | 81 android_manifest_dep = ":shell_apk_manifest" |
| 76 apk_name = "WebApk.$webapk_manifest_package_origin" | 82 apk_name = "WebApk.$webapk_manifest_package_origin" |
| 77 java_files = [ | 83 java_files = [ |
| 78 "src/org/chromium/webapk/shell_apk/HostBrowserClassLoader.java", | 84 "src/org/chromium/webapk/shell_apk/HostBrowserClassLoader.java", |
| 79 "src/org/chromium/webapk/shell_apk/MainActivity.java", | 85 "src/org/chromium/webapk/shell_apk/MainActivity.java", |
| 86 "src/org/chromium/webapk/shell_apk/NotificationSettingsLauncherActivity.java
", |
| 80 "src/org/chromium/webapk/shell_apk/WebApkSandboxedProcessService.java", | 87 "src/org/chromium/webapk/shell_apk/WebApkSandboxedProcessService.java", |
| 81 "src/org/chromium/webapk/shell_apk/WebApkSandboxedProcessService0.java", | 88 "src/org/chromium/webapk/shell_apk/WebApkSandboxedProcessService0.java", |
| 82 "src/org/chromium/webapk/shell_apk/WebApkSandboxedProcessService1.java", | 89 "src/org/chromium/webapk/shell_apk/WebApkSandboxedProcessService1.java", |
| 83 "src/org/chromium/webapk/shell_apk/WebApkSandboxedProcessService2.java", | 90 "src/org/chromium/webapk/shell_apk/WebApkSandboxedProcessService2.java", |
| 84 "src/org/chromium/webapk/shell_apk/WebApkServiceFactory.java", | 91 "src/org/chromium/webapk/shell_apk/WebApkServiceFactory.java", |
| 85 "src/org/chromium/webapk/shell_apk/WebApkUtils.java", | 92 "src/org/chromium/webapk/shell_apk/WebApkUtils.java", |
| 86 ] | 93 ] |
| 87 deps = [ | 94 deps = [ |
| 88 ":dex_loader_java", | 95 ":dex_loader_java", |
| 89 ":shell_apk_resources", | 96 ":shell_apk_resources", |
| (...skipping 14 matching lines...) Expand all Loading... |
| 104 [ "javatests/src/org/chromium/webapk/shell_apk/DexLoaderTest.java" ] | 111 [ "javatests/src/org/chromium/webapk/shell_apk/DexLoaderTest.java" ] |
| 105 deps = [ | 112 deps = [ |
| 106 ":dex_loader_java", | 113 ":dex_loader_java", |
| 107 "//base:base_java", | 114 "//base:base_java", |
| 108 "//base:base_java_test_support", | 115 "//base:base_java_test_support", |
| 109 "//chrome/android/webapk/libs/common:common_java", | 116 "//chrome/android/webapk/libs/common:common_java", |
| 110 "//content/public/test/android:content_java_test_support", | 117 "//content/public/test/android:content_java_test_support", |
| 111 ] | 118 ] |
| 112 srcjar_deps = [ "javatests/dex_optimizer:dex_optimizer_service_aidl" ] | 119 srcjar_deps = [ "javatests/dex_optimizer:dex_optimizer_service_aidl" ] |
| 113 } | 120 } |
| OLD | NEW |