Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(347)

Unified Diff: mojo/shell/android/apk/src/org/chromium/mojo/shell/MojoShellApplication.java

Issue 1049993002: Get mojo_shell building inside chromium checkout. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix presubmit Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: mojo/shell/android/apk/src/org/chromium/mojo/shell/MojoShellApplication.java
diff --git a/mojo/shell/android/apk/src/org/chromium/mojo/shell/MojoShellApplication.java b/mojo/shell/android/apk/src/org/chromium/mojo/shell/MojoShellApplication.java
new file mode 100644
index 0000000000000000000000000000000000000000..f1602605b61d51a607cdc1453ed628c81bd1808f
--- /dev/null
+++ b/mojo/shell/android/apk/src/org/chromium/mojo/shell/MojoShellApplication.java
@@ -0,0 +1,57 @@
+// Copyright 2013 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.chromium.mojo.shell;
+
+import android.util.Log;
+
+import org.chromium.base.BaseChromiumApplication;
+import org.chromium.base.PathUtils;
+import org.chromium.base.library_loader.LibraryLoader;
+import org.chromium.base.library_loader.LibraryProcessType;
+import org.chromium.base.library_loader.ProcessInitException;
+
+/**
+ * MojoShell implementation of {@link android.app.Application}, managing application-level global
+ * state and initializations.
+ */
+public class MojoShellApplication extends BaseChromiumApplication {
+ private static final String TAG = "MojoShellApplication";
+ private static final String PRIVATE_DATA_DIRECTORY_SUFFIX = "mojo_shell";
+
+ @Override
+ public void onCreate() {
+ super.onCreate();
+ clearTemporaryFiles();
+ initializeJavaUtils();
+ initializeNative();
+ }
+
+ /**
+ * Deletes the temporary files and directories created in the previous run of the application.
+ * This is important regardless of cleanups on exit, as the previous run could have crashed.
+ */
+ private void clearTemporaryFiles() {
+ AndroidHandler.clearTemporaryFiles(this);
+ }
+
+ /**
+ * Initializes Java-side utils.
+ */
+ private void initializeJavaUtils() {
+ PathUtils.setPrivateDataDirectorySuffix(PRIVATE_DATA_DIRECTORY_SUFFIX);
+ }
+
+ /**
+ * Loads the native library.
+ */
+ private void initializeNative() {
+ try {
+ LibraryLoader.get(LibraryProcessType.PROCESS_BROWSER).ensureInitialized();
+ } catch (ProcessInitException e) {
+ Log.e(TAG, "libmojo_shell initialization failed.", e);
+ throw new RuntimeException(e);
+ }
+ }
+}

Powered by Google App Engine
This is Rietveld 408576698