Skip to content

Commit c4cf16d

Browse files
committed
chore: upgrade example app to 0.63.2
1 parent 7fa24f3 commit c4cf16d

31 files changed

+3110
-1962
lines changed

example/RNBackgroundExample/.flowconfig

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ node_modules/warning/.*
2121
[include]
2222

2323
[libs]
24-
node_modules/react-native/Libraries/react-native/react-native-interface.js
24+
node_modules/react-native/interface.js
2525
node_modules/react-native/flow/
2626

2727
[options]
@@ -36,9 +36,8 @@ module.file_ext=.ios.js
3636

3737
munge_underscores=true
3838

39-
module.name_mapper='^react-native$' -> '<PROJECT_ROOT>/node_modules/react-native/Libraries/react-native/react-native-implementation'
4039
module.name_mapper='^react-native/\(.*\)$' -> '<PROJECT_ROOT>/node_modules/react-native/\1'
41-
module.name_mapper='^[./a-zA-Z0-9$_-]+\.\(bmp\|gif\|jpg\|jpeg\|png\|psd\|svg\|webp\|m4v\|mov\|mp4\|mpeg\|mpg\|webm\|aac\|aiff\|caf\|m4a\|mp3\|wav\|html\|pdf\)$' -> '<PROJECT_ROOT>/node_modules/react-native/Libraries/Image/RelativeImageStub'
40+
module.name_mapper='^@?[./a-zA-Z0-9$_-]+\.\(bmp\|gif\|jpg\|jpeg\|png\|psd\|svg\|webp\|m4v\|mov\|mp4\|mpeg\|mpg\|webm\|aac\|aiff\|caf\|m4a\|mp3\|wav\|html\|pdf\)$' -> '<PROJECT_ROOT>/node_modules/react-native/Libraries/Image/RelativeImageStub'
4241

4342
suppress_type=$FlowIssue
4443
suppress_type=$FlowFixMe
@@ -72,4 +71,4 @@ untyped-import
7271
untyped-type-import
7372

7473
[version]
75-
^0.105.0
74+
^0.122.0

example/RNBackgroundExample/.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,3 +59,5 @@ artifacts/
5959

6060
# CocoaPods
6161
/ios/Pods/
62+
63+
*.hprof

example/RNBackgroundExample/App.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -164,6 +164,7 @@ const App: () => React$Node = () => {
164164

165165
Upload.startUpload(options)
166166
.then(uploadId => {
167+
console.warn(uploadId);
167168
setUploadId(uploadId);
168169

169170
Upload.addListener(
@@ -202,12 +203,14 @@ const App: () => React$Node = () => {
202203

203204
Upload.startUpload(options)
204205
.then(uploadId => {
206+
console.warn(uploadId);
205207
setUploadId(uploadId);
206208

207209
Upload.addListener(
208210
'completed',
209211
uploadId,
210212
({responseCode}) => {
213+
console.warn(responseCode);
211214
if (responseCode === 502) {
212215
set5SecDelayCompleted(true);
213216
}

example/RNBackgroundExample/android/app/build.gradle

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -185,9 +185,24 @@ dependencies {
185185
implementation fileTree(dir: "libs", include: ["*.jar"])
186186

187187
implementation 'androidx.appcompat:appcompat:1.1.0'
188-
188+
//noinspection GradleDynamicVersion
189189
implementation "com.facebook.react:react-native:+" // From node_modules
190190

191+
implementation "androidx.swiperefreshlayout:swiperefreshlayout:1.0.0"
192+
193+
debugImplementation("com.facebook.flipper:flipper:${FLIPPER_VERSION}") {
194+
exclude group:'com.facebook.fbjni'
195+
}
196+
197+
debugImplementation("com.facebook.flipper:flipper-network-plugin:${FLIPPER_VERSION}") {
198+
exclude group:'com.facebook.flipper'
199+
exclude group:'com.squareup.okhttp3', module:'okhttp'
200+
}
201+
202+
debugImplementation("com.facebook.flipper:flipper-fresco-plugin:${FLIPPER_VERSION}") {
203+
exclude group:'com.facebook.flipper'
204+
}
205+
191206
if (enableHermes) {
192207
def hermesPath = "../../node_modules/hermes-engine/android/";
193208
debugImplementation files(hermesPath + "hermes-debug.aar")
Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
/**
2+
* Copyright (c) Facebook, Inc. and its affiliates.
3+
*
4+
* <p>This source code is licensed under the MIT license found in the LICENSE file in the root
5+
* directory of this source tree.
6+
*/
7+
package com.rnbackgroundexample;
8+
9+
import android.content.Context;
10+
import com.facebook.flipper.android.AndroidFlipperClient;
11+
import com.facebook.flipper.android.utils.FlipperUtils;
12+
import com.facebook.flipper.core.FlipperClient;
13+
import com.facebook.flipper.plugins.crashreporter.CrashReporterPlugin;
14+
import com.facebook.flipper.plugins.databases.DatabasesFlipperPlugin;
15+
import com.facebook.flipper.plugins.fresco.FrescoFlipperPlugin;
16+
import com.facebook.flipper.plugins.inspector.DescriptorMapping;
17+
import com.facebook.flipper.plugins.inspector.InspectorFlipperPlugin;
18+
import com.facebook.flipper.plugins.network.FlipperOkhttpInterceptor;
19+
import com.facebook.flipper.plugins.network.NetworkFlipperPlugin;
20+
import com.facebook.flipper.plugins.react.ReactFlipperPlugin;
21+
import com.facebook.flipper.plugins.sharedpreferences.SharedPreferencesFlipperPlugin;
22+
import com.facebook.react.ReactInstanceManager;
23+
import com.facebook.react.bridge.ReactContext;
24+
import com.facebook.react.modules.network.NetworkingModule;
25+
import okhttp3.OkHttpClient;
26+
27+
public class ReactNativeFlipper {
28+
public static void initializeFlipper(Context context, ReactInstanceManager reactInstanceManager) {
29+
if (FlipperUtils.shouldEnableFlipper(context)) {
30+
final FlipperClient client = AndroidFlipperClient.getInstance(context);
31+
32+
client.addPlugin(new InspectorFlipperPlugin(context, DescriptorMapping.withDefaults()));
33+
client.addPlugin(new ReactFlipperPlugin());
34+
client.addPlugin(new DatabasesFlipperPlugin(context));
35+
client.addPlugin(new SharedPreferencesFlipperPlugin(context));
36+
client.addPlugin(CrashReporterPlugin.getInstance());
37+
38+
NetworkFlipperPlugin networkFlipperPlugin = new NetworkFlipperPlugin();
39+
NetworkingModule.setCustomClientBuilder(
40+
new NetworkingModule.CustomClientBuilder() {
41+
@Override
42+
public void apply(OkHttpClient.Builder builder) {
43+
builder.addNetworkInterceptor(new FlipperOkhttpInterceptor(networkFlipperPlugin));
44+
}
45+
});
46+
client.addPlugin(networkFlipperPlugin);
47+
client.start();
48+
49+
// Fresco Plugin needs to ensure that ImagePipelineFactory is initialized
50+
// Hence we run if after all native modules have been initialized
51+
ReactContext reactContext = reactInstanceManager.getCurrentReactContext();
52+
if (reactContext == null) {
53+
reactInstanceManager.addReactInstanceEventListener(
54+
new ReactInstanceManager.ReactInstanceEventListener() {
55+
@Override
56+
public void onReactContextInitialized(ReactContext reactContext) {
57+
reactInstanceManager.removeReactInstanceEventListener(this);
58+
reactContext.runOnNativeModulesQueueThread(
59+
new Runnable() {
60+
@Override
61+
public void run() {
62+
client.addPlugin(new FrescoFlipperPlugin());
63+
}
64+
});
65+
}
66+
});
67+
} else {
68+
client.addPlugin(new FrescoFlipperPlugin());
69+
}
70+
}
71+
}
72+
}

example/RNBackgroundExample/android/app/src/main/AndroidManifest.xml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,8 @@
1919
<activity
2020
android:name=".MainActivity"
2121
android:label="@string/app_name"
22-
android:configChanges="keyboard|keyboardHidden|orientation|screenSize"
22+
android:configChanges="keyboard|keyboardHidden|orientation|screenSize|uiMode"
23+
android:launchMode="singleTask"
2324
android:windowSoftInputMode="adjustResize">
2425
<intent-filter>
2526
<action android:name="android.intent.action.MAIN" />

example/RNBackgroundExample/android/app/src/main/java/com/rnbackgroundexample/MainApplication.java

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import android.content.Context;
55
import com.facebook.react.PackageList;
66
import com.facebook.react.ReactApplication;
7+
import com.facebook.react.ReactInstanceManager;
78
import com.facebook.react.ReactNativeHost;
89
import com.facebook.react.ReactPackage;
910
import com.facebook.soloader.SoLoader;
@@ -43,23 +44,24 @@ public ReactNativeHost getReactNativeHost() {
4344
public void onCreate() {
4445
super.onCreate();
4546
SoLoader.init(this, /* native exopackage */ false);
46-
initializeFlipper(this); // Remove this line if you don't want Flipper enabled
47+
initializeFlipper(this, getReactNativeHost().getReactInstanceManager()); // Remove this line if you don't want Flipper enabled
4748
}
4849

4950
/**
5051
* Loads Flipper in React Native templates.
5152
*
5253
* @param context
54+
* @param reactInstanceManager
5355
*/
54-
private static void initializeFlipper(Context context) {
56+
private static void initializeFlipper(Context context, ReactInstanceManager reactInstanceManager) {
5557
if (BuildConfig.DEBUG) {
5658
try {
5759
/*
5860
We use reflection here to pick up the class that initializes Flipper,
5961
since Flipper library is not available in release mode
6062
*/
61-
Class<?> aClass = Class.forName("com.facebook.flipper.ReactNativeFlipper");
62-
aClass.getMethod("initializeFlipper", Context.class).invoke(null, context);
63+
Class<?> aClass = Class.forName("com.rnbackgroundexample.ReactNativeFlipper");
64+
aClass.getMethod("initializeFlipper", Context.class, ReactInstanceManager.class).invoke(null, context, reactInstanceManager);
6365
} catch (ClassNotFoundException e) {
6466
e.printStackTrace();
6567
} catch (NoSuchMethodException e) {

example/RNBackgroundExample/android/build.gradle

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@
22

33
buildscript {
44
ext {
5-
buildToolsVersion = "28.0.3"
5+
buildToolsVersion = "29.0.2"
66
minSdkVersion = 21
7-
compileSdkVersion = 28
8-
targetSdkVersion = 28
7+
compileSdkVersion = 29
8+
targetSdkVersion = 29
99
ext.kotlinVersion = '1.3.41' // Your app's version
1010
ext.detoxKotlinVersion = ext.kotlinVersion // Detox' version: should be 1.1.0 or higher!
1111
}
@@ -14,7 +14,7 @@ buildscript {
1414
jcenter()
1515
}
1616
dependencies {
17-
classpath("com.android.tools.build:gradle:3.4.1")
17+
classpath("com.android.tools.build:gradle:3.5.3")
1818
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion"
1919

2020
// NOTE: Do not place your application dependencies here; they belong
@@ -36,7 +36,7 @@ allprojects {
3636

3737
google()
3838
jcenter()
39-
maven { url 'https://jitpack.io' }
39+
maven { url 'https://www.jitpack.io' }
4040
maven { url "$rootDir/../node_modules/detox/Detox-android" }
4141
}
4242
}

example/RNBackgroundExample/android/gradle.properties

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
# Specifies the JVM arguments used for the daemon process.
1111
# The setting is particularly useful for tweaking memory settings.
1212
# Default value: -Xmx10248m -XX:MaxPermSize=256m
13-
# org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
13+
org.gradle.jvmargs=-Xmx6192m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
1414

1515
# When configured, Gradle will run in incubating parallel mode.
1616
# This option should only be used with decoupled projects. More details, visit
@@ -19,3 +19,5 @@
1919

2020
android.useAndroidX=true
2121
android.enableJetifier=true
22+
23+
FLIPPER_VERSION=0.37.0
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
distributionBase=GRADLE_USER_HOME
22
distributionPath=wrapper/dists
3-
distributionUrl=https\://services.gradle.org/distributions/gradle-5.4.1-all.zip
3+
distributionUrl=https\://services.gradle.org/distributions/gradle-6.2-all.zip
44
zipStoreBase=GRADLE_USER_HOME
55
zipStorePath=wrapper/dists

0 commit comments

Comments
 (0)