From 148ce10dc6ae4e28d65758f6ff04b66e32dc01db Mon Sep 17 00:00:00 2001 From: Adam Barth Date: Thu, 26 Feb 2015 12:05:17 -0800 Subject: [PATCH] Introduce Stocks.apk This CL renames SkyShell.apk to SkyDemo.apk and adds a Stocks.apk which defaults to the stocks demo app. Sky Shell is now a library that can be packaged by different APKs. R=eseidel@chromium.org Review URL: https://codereview.chromium.org/965493002 --- engine/src/flutter/BUILD.gn | 5 +- engine/src/flutter/shell/BUILD.gn | 48 ++++--------------- .../src/flutter/shell/apk/AndroidManifest.xml | 29 ----------- .../flutter/shell/apk/res/values/strings.xml | 7 --- .../domokit/sky/shell/SkyShellActivity.java | 36 -------------- .../sky/shell/JavaServiceProvider.java | 0 .../org/domokit/sky/shell/PlatformView.java | 0 .../org/domokit/sky/shell/SkyActivity.java | 30 ++++++++++++ .../domokit/sky/shell/SkyApplication.java} | 2 +- .../org/domokit/sky/shell/SkyMain.java | 0 10 files changed, 44 insertions(+), 113 deletions(-) delete mode 100644 engine/src/flutter/shell/apk/AndroidManifest.xml delete mode 100644 engine/src/flutter/shell/apk/res/values/strings.xml delete mode 100644 engine/src/flutter/shell/apk/src/org/domokit/sky/shell/SkyShellActivity.java rename engine/src/flutter/shell/{apk/src => }/org/domokit/sky/shell/JavaServiceProvider.java (100%) rename engine/src/flutter/shell/{apk/src => }/org/domokit/sky/shell/PlatformView.java (100%) create mode 100644 engine/src/flutter/shell/org/domokit/sky/shell/SkyActivity.java rename engine/src/flutter/shell/{apk/src/org/domokit/sky/shell/SkyShellApplication.java => org/domokit/sky/shell/SkyApplication.java} (96%) rename engine/src/flutter/shell/{apk/src => }/org/domokit/sky/shell/SkyMain.java (100%) diff --git a/engine/src/flutter/BUILD.gn b/engine/src/flutter/BUILD.gn index 8ec5827ca7..780daf9844 100644 --- a/engine/src/flutter/BUILD.gn +++ b/engine/src/flutter/BUILD.gn @@ -20,7 +20,10 @@ group("sky") { ] if (is_android) { - deps += [ "//sky/shell" ] + deps += [ + "//sky/apk/demo", + "//sky/apk/stocks", + ] } if (!is_android) { diff --git a/engine/src/flutter/shell/BUILD.gn b/engine/src/flutter/shell/BUILD.gn index ed252e41e1..cb52c78263 100644 --- a/engine/src/flutter/shell/BUILD.gn +++ b/engine/src/flutter/shell/BUILD.gn @@ -7,17 +7,11 @@ assert(is_android) import("//build/config/android/config.gni") import("//build/config/android/rules.gni") -group("shell") { - deps = [ - ":sky_shell_apk", - ] -} - generate_jni("jni_headers") { sources = [ - "apk/src/org/domokit/sky/shell/JavaServiceProvider.java", - "apk/src/org/domokit/sky/shell/SkyMain.java", - "apk/src/org/domokit/sky/shell/PlatformView.java", + "org/domokit/sky/shell/JavaServiceProvider.java", + "org/domokit/sky/shell/SkyMain.java", + "org/domokit/sky/shell/PlatformView.java", ] jni_package = "sky/shell" } @@ -74,11 +68,11 @@ shared_library("sky_shell") { android_library("java") { java_files = [ - "apk/src/org/domokit/sky/shell/JavaServiceProvider.java", - "apk/src/org/domokit/sky/shell/PlatformView.java", - "apk/src/org/domokit/sky/shell/SkyMain.java", - "apk/src/org/domokit/sky/shell/SkyShellActivity.java", - "apk/src/org/domokit/sky/shell/SkyShellApplication.java", + "org/domokit/sky/shell/JavaServiceProvider.java", + "org/domokit/sky/shell/PlatformView.java", + "org/domokit/sky/shell/SkyMain.java", + "org/domokit/sky/shell/SkyActivity.java", + "org/domokit/sky/shell/SkyApplication.java", ] deps = [ @@ -93,16 +87,9 @@ android_library("java") { ] } -sky_shell_assets_dir = "$root_build_dir/sky_shell/assets" - -android_resources("resources") { - resource_dirs = [ "apk/res" ] - custom_package = "org.domokit.sky.shell" -} - copy_ex("assets") { clear_dir = true - dest = sky_shell_assets_dir + dest = "$root_build_dir/sky_shell/assets" sources = [ "$root_build_dir/icudtl.dat", ] @@ -110,20 +97,3 @@ copy_ex("assets") { "//third_party/icu", ] } - -android_apk("sky_shell_apk") { - apk_name = "SkyShell" - - android_manifest = "apk/AndroidManifest.xml" - native_libs = [ "libsky_shell.so" ] - - asset_location = sky_shell_assets_dir - - deps = [ - "//base:base_java", - ":assets", - ":java", - ":resources", - ":sky_shell", - ] -} diff --git a/engine/src/flutter/shell/apk/AndroidManifest.xml b/engine/src/flutter/shell/apk/AndroidManifest.xml deleted file mode 100644 index 1d9b12d643..0000000000 --- a/engine/src/flutter/shell/apk/AndroidManifest.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/engine/src/flutter/shell/apk/res/values/strings.xml b/engine/src/flutter/shell/apk/res/values/strings.xml deleted file mode 100644 index ff69533446..0000000000 --- a/engine/src/flutter/shell/apk/res/values/strings.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - diff --git a/engine/src/flutter/shell/apk/src/org/domokit/sky/shell/SkyShellActivity.java b/engine/src/flutter/shell/apk/src/org/domokit/sky/shell/SkyShellActivity.java deleted file mode 100644 index e15982a419..0000000000 --- a/engine/src/flutter/shell/apk/src/org/domokit/sky/shell/SkyShellActivity.java +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2015 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -package org.domokit.sky.shell; - -import android.app.Activity; -import android.content.Intent; -import android.net.Uri; -import android.os.Bundle; - -/** - * Main activity for SkyShell. - */ -public class SkyShellActivity extends Activity { - /** - * @see android.app.Activity#onCreate(android.os.Bundle) - */ - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - - String url = "https://domokit.github.io/home"; - Intent intent = getIntent(); - if (Intent.ACTION_VIEW.equals(intent.getAction())) { - Uri skyUri = intent.getData(); - Uri httpsUri = skyUri.buildUpon().scheme("https").build(); - url = httpsUri.toString(); - } - - SkyMain.ensureInitialized(getApplicationContext()); - PlatformView view = new PlatformView(this); - setContentView(view); - view.loadUrl(url); - } -} diff --git a/engine/src/flutter/shell/apk/src/org/domokit/sky/shell/JavaServiceProvider.java b/engine/src/flutter/shell/org/domokit/sky/shell/JavaServiceProvider.java similarity index 100% rename from engine/src/flutter/shell/apk/src/org/domokit/sky/shell/JavaServiceProvider.java rename to engine/src/flutter/shell/org/domokit/sky/shell/JavaServiceProvider.java diff --git a/engine/src/flutter/shell/apk/src/org/domokit/sky/shell/PlatformView.java b/engine/src/flutter/shell/org/domokit/sky/shell/PlatformView.java similarity index 100% rename from engine/src/flutter/shell/apk/src/org/domokit/sky/shell/PlatformView.java rename to engine/src/flutter/shell/org/domokit/sky/shell/PlatformView.java diff --git a/engine/src/flutter/shell/org/domokit/sky/shell/SkyActivity.java b/engine/src/flutter/shell/org/domokit/sky/shell/SkyActivity.java new file mode 100644 index 0000000000..b0eb9c0662 --- /dev/null +++ b/engine/src/flutter/shell/org/domokit/sky/shell/SkyActivity.java @@ -0,0 +1,30 @@ +// Copyright 2015 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +package org.domokit.sky.shell; + +import android.app.Activity; +import android.os.Bundle; + +/** + * Base class for activities that use Sky. + */ +public class SkyActivity extends Activity { + private PlatformView mView; + + /** + * @see android.app.Activity#onCreate(android.os.Bundle) + */ + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + SkyMain.ensureInitialized(getApplicationContext()); + mView = new PlatformView(this); + setContentView(mView); + } + + public void loadUrl(String url) { + mView.loadUrl(url); + } +} diff --git a/engine/src/flutter/shell/apk/src/org/domokit/sky/shell/SkyShellApplication.java b/engine/src/flutter/shell/org/domokit/sky/shell/SkyApplication.java similarity index 96% rename from engine/src/flutter/shell/apk/src/org/domokit/sky/shell/SkyShellApplication.java rename to engine/src/flutter/shell/org/domokit/sky/shell/SkyApplication.java index d60ce5f5f5..ba53c6d721 100644 --- a/engine/src/flutter/shell/apk/src/org/domokit/sky/shell/SkyShellApplication.java +++ b/engine/src/flutter/shell/org/domokit/sky/shell/SkyApplication.java @@ -17,7 +17,7 @@ import org.chromium.base.library_loader.ProcessInitException; * MojoShell implementation of {@link android.app.Application}, managing application-level global * state and initializations. */ -public class SkyShellApplication extends BaseChromiumApplication { +public class SkyApplication extends BaseChromiumApplication { private static final String TAG = "SkyShellApplication"; private static final String PRIVATE_DATA_DIRECTORY_SUFFIX = "sky_shell"; private static final String[] SKY_MANDATORY_PAKS = { diff --git a/engine/src/flutter/shell/apk/src/org/domokit/sky/shell/SkyMain.java b/engine/src/flutter/shell/org/domokit/sky/shell/SkyMain.java similarity index 100% rename from engine/src/flutter/shell/apk/src/org/domokit/sky/shell/SkyMain.java rename to engine/src/flutter/shell/org/domokit/sky/shell/SkyMain.java