Parcourir la source

[Android] Add LeakCanary

LeakCanary is a memory leak detection library which will run only in Debug mode.
master
Saúl Ibarra Corretgé il y a 7 ans
Parent
révision
4fd8172126

+ 3
- 0
android/app/build.gradle Voir le fichier

@@ -43,4 +43,7 @@ dependencies {
43 43
     compile fileTree(dir: 'libs', include: ['*.jar'])
44 44
 
45 45
     implementation project(':sdk')
46
+
47
+    debugImplementation 'com.squareup.leakcanary:leakcanary-android:1.6.1'
48
+    releaseImplementation 'com.squareup.leakcanary:leakcanary-android-no-op:1.6.1'
46 49
 }

+ 1
- 0
android/app/src/main/AndroidManifest.xml Voir le fichier

@@ -5,6 +5,7 @@
5 5
       android:allowBackup="true"
6 6
       android:icon="@mipmap/ic_launcher"
7 7
       android:label="@string/app_name"
8
+      android:name=".MainApplication"
8 9
       android:theme="@style/AppTheme">
9 10
     <activity
10 11
         android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|screenSize|smallestScreenSize"

+ 36
- 0
android/app/src/main/java/org/jitsi/meet/MainApplication.java Voir le fichier

@@ -0,0 +1,36 @@
1
+/*
2
+ * Copyright @ 2018-present Atlassian Pty Ltd
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ *     http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+
17
+package org.jitsi.meet;
18
+
19
+import android.app.Application;
20
+
21
+import com.squareup.leakcanary.LeakCanary;
22
+
23
+/**
24
+ * Simple {@link Application} for hooking up LeakCanary:
25
+ * https://github.com/square/leakcanary
26
+ */
27
+public class MainApplication extends Application {
28
+    @Override
29
+    public void onCreate() {
30
+        super.onCreate();
31
+
32
+        if (!LeakCanary.isInAnalyzerProcess(this)) {
33
+            LeakCanary.install(this);
34
+        }
35
+    }
36
+}

Chargement…
Annuler
Enregistrer