From 7ac82bec4eacbb4be1124d83dc1ffd733c6dc4f7 Mon Sep 17 00:00:00 2001 From: Pascal Hartig Date: Thu, 19 Sep 2019 02:58:43 -0700 Subject: [PATCH] Make fresco a stand-alone gradle project (#548) Summary: Pull Request resolved: https://github.com/facebook/flipper/pull/548 First project to pull out of the "fat distribution" we currently have. Still needs setup for Maven and registration in Bintray. Reviewed By: jknoxville Differential Revision: D17395660 fbshipit-source-id: 6244495a2e25d705dd930ef87c7e5e1f038eb921 --- android/build.gradle | 3 --- android/plugins/fresco/build.gradle | 27 +++++++++++++++++++ .../fresco/src/main/AndroidManifest.xml | 11 ++++++++ .../fresco/FrescoFlipperDebugPrefHelper.java | 0 .../plugins/fresco/FrescoFlipperPlugin.java | 0 .../fresco/FrescoFlipperRequestListener.java | 0 .../objecthelper/FlipperObjectHelper.java | 0 android/sample/build.gradle | 1 + android/tutorial/build.gradle | 1 + settings.gradle | 4 +++ 10 files changed, 44 insertions(+), 3 deletions(-) create mode 100644 android/plugins/fresco/build.gradle create mode 100644 android/plugins/fresco/src/main/AndroidManifest.xml rename android/{ => plugins/fresco}/src/main/java/com/facebook/flipper/plugins/fresco/FrescoFlipperDebugPrefHelper.java (100%) rename android/{ => plugins/fresco}/src/main/java/com/facebook/flipper/plugins/fresco/FrescoFlipperPlugin.java (100%) rename android/{ => plugins/fresco}/src/main/java/com/facebook/flipper/plugins/fresco/FrescoFlipperRequestListener.java (100%) rename android/{ => plugins/fresco}/src/main/java/com/facebook/flipper/plugins/fresco/objecthelper/FlipperObjectHelper.java (100%) diff --git a/android/build.gradle b/android/build.gradle index f02e4e161..5aa8668ab 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -70,9 +70,6 @@ android { implementation deps.lithoSectionsDebug implementation deps.lithoSectionsCore implementation deps.lithoWidget - implementation deps.fresco - implementation deps.frescoFlipper - implementation deps.frescoStetho compileOnly deps.leakcanary testImplementation deps.mockito diff --git a/android/plugins/fresco/build.gradle b/android/plugins/fresco/build.gradle new file mode 100644 index 000000000..4ec9f23d3 --- /dev/null +++ b/android/plugins/fresco/build.gradle @@ -0,0 +1,27 @@ +/* + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the LICENSE + * file in the root directory of this source tree. + */ + +apply plugin: 'com.android.library' +apply plugin: 'maven' + +android { + compileSdkVersion rootProject.compileSdkVersion + buildToolsVersion rootProject.buildToolsVersion + + defaultConfig { + minSdkVersion rootProject.minSdkVersion + targetSdkVersion rootProject.targetSdkVersion + } + + dependencies { + implementation project(':android') + implementation deps.fresco + implementation deps.frescoFlipper + implementation deps.frescoStetho + compileOnly deps.jsr305 + } +} diff --git a/android/plugins/fresco/src/main/AndroidManifest.xml b/android/plugins/fresco/src/main/AndroidManifest.xml new file mode 100644 index 000000000..ae829b7f1 --- /dev/null +++ b/android/plugins/fresco/src/main/AndroidManifest.xml @@ -0,0 +1,11 @@ + + + + + diff --git a/android/src/main/java/com/facebook/flipper/plugins/fresco/FrescoFlipperDebugPrefHelper.java b/android/plugins/fresco/src/main/java/com/facebook/flipper/plugins/fresco/FrescoFlipperDebugPrefHelper.java similarity index 100% rename from android/src/main/java/com/facebook/flipper/plugins/fresco/FrescoFlipperDebugPrefHelper.java rename to android/plugins/fresco/src/main/java/com/facebook/flipper/plugins/fresco/FrescoFlipperDebugPrefHelper.java diff --git a/android/src/main/java/com/facebook/flipper/plugins/fresco/FrescoFlipperPlugin.java b/android/plugins/fresco/src/main/java/com/facebook/flipper/plugins/fresco/FrescoFlipperPlugin.java similarity index 100% rename from android/src/main/java/com/facebook/flipper/plugins/fresco/FrescoFlipperPlugin.java rename to android/plugins/fresco/src/main/java/com/facebook/flipper/plugins/fresco/FrescoFlipperPlugin.java diff --git a/android/src/main/java/com/facebook/flipper/plugins/fresco/FrescoFlipperRequestListener.java b/android/plugins/fresco/src/main/java/com/facebook/flipper/plugins/fresco/FrescoFlipperRequestListener.java similarity index 100% rename from android/src/main/java/com/facebook/flipper/plugins/fresco/FrescoFlipperRequestListener.java rename to android/plugins/fresco/src/main/java/com/facebook/flipper/plugins/fresco/FrescoFlipperRequestListener.java diff --git a/android/src/main/java/com/facebook/flipper/plugins/fresco/objecthelper/FlipperObjectHelper.java b/android/plugins/fresco/src/main/java/com/facebook/flipper/plugins/fresco/objecthelper/FlipperObjectHelper.java similarity index 100% rename from android/src/main/java/com/facebook/flipper/plugins/fresco/objecthelper/FlipperObjectHelper.java rename to android/plugins/fresco/src/main/java/com/facebook/flipper/plugins/fresco/objecthelper/FlipperObjectHelper.java diff --git a/android/sample/build.gradle b/android/sample/build.gradle index ecc7a7a02..d631abb90 100644 --- a/android/sample/build.gradle +++ b/android/sample/build.gradle @@ -67,5 +67,6 @@ dependencies { testImplementation deps.junit debugImplementation project(':android') + debugImplementation project(':fresco-plugin') releaseImplementation project(':noop') } diff --git a/android/tutorial/build.gradle b/android/tutorial/build.gradle index 5a1678f22..d0171417c 100644 --- a/android/tutorial/build.gradle +++ b/android/tutorial/build.gradle @@ -45,6 +45,7 @@ dependencies { // For simplicity, we use Flipper for both debug and release builds here. // Check out the "sample" app to see how to separate your build flavors. implementation project(':android') + implementation project(':fresco-plugin') implementation deps.soloader // Litho diff --git a/settings.gradle b/settings.gradle index 7b50accd2..e818f6b6e 100644 --- a/settings.gradle +++ b/settings.gradle @@ -29,3 +29,7 @@ project(':libevent').projectDir = file('android/third-party/external/LibEvent/') project(':rsocket').projectDir = file('android/third-party/external/RSocket/') project(':third-party').projectDir = file('android/third-party/') project(':noop').projectDir = file('android/no-op/') + +// Plugins +include ':fresco-plugin' +project(':fresco-plugin').projectDir = file('android/plugins/fresco')