diff --git a/android/app/src/main/java/io/gitjournal/gitjournal/LogDumper.java b/android/app/src/main/java/io/gitjournal/gitjournal/LogDumper.java
deleted file mode 100644
index 165367f3..00000000
--- a/android/app/src/main/java/io/gitjournal/gitjournal/LogDumper.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package io.gitjournal.gitjournal;
-
-import java.io.BufferedReader;
-import java.io.File;
-import java.io.FileOutputStream;
-import java.io.InputStreamReader;
-import java.io.PrintWriter;
-
-public class LogDumper {
-    public static void dumpLogs(String filePath) throws Exception {
-        File file = new File(filePath);
-
-        // Truncate the existing file
-        PrintWriter pw = new PrintWriter(file);
-        pw.close();
-
-        FileOutputStream stream = new FileOutputStream(file, true);
-
-        Process logcat = Runtime.getRuntime().exec(new String[]{"logcat", "-d"});
-        BufferedReader br = new BufferedReader(new InputStreamReader(logcat.getInputStream()), 4 * 1024);
-        String line;
-        String separator = System.getProperty("line.separator");
-        while ((line = br.readLine()) != null) {
-            stream.write(line.getBytes());
-            stream.write(separator.getBytes());
-        }
-        stream.close();
-    }
-}
diff --git a/android/app/src/main/java/io/gitjournal/gitjournal/MainActivity.java b/android/app/src/main/java/io/gitjournal/gitjournal/MainActivity.java
index 4bfa6d85..4935eea8 100644
--- a/android/app/src/main/java/io/gitjournal/gitjournal/MainActivity.java
+++ b/android/app/src/main/java/io/gitjournal/gitjournal/MainActivity.java
@@ -56,23 +56,9 @@ public class MainActivity extends FlutterActivity implements MethodCallHandler {
         if (call.method.equals("getBaseDirectory")) {
             result.success(filesDir);
             return;
-        } else if (call.method.equals("dumpAppLogs")) {
-            String filePath = filesDir + "/app-logs.txt";
-
-            try {
-                LogDumper.dumpLogs(filePath);
-            } catch (Exception e) {
-                e.printStackTrace();
-                result.error("FAILED", e.toString(), null);
-                return;
-            }
-
-            result.success(filePath);
-            return;
         } else if (call.method.equals("shouldEnableAnalytics")) {
             boolean shouldBe = true;
-            String testLabSetting =
-                    Settings.System.getString(context.getContentResolver(), "firebase.test.lab");
+            String testLabSetting = Settings.System.getString(context.getContentResolver(), "firebase.test.lab");
             if ("true".equals(testLabSetting)) {
                 shouldBe = false;
             }
diff --git a/lib/utils.dart b/lib/utils.dart
index a22fce0a..bd394903 100644
--- a/lib/utils.dart
+++ b/lib/utils.dart
@@ -34,14 +34,6 @@ Future<bool> shouldEnableAnalytics() async {
   }
 }
 
-/// adb logcat
-/// Returns the file path where the logs were dumped
-Future<String> dumpAppLogs() async {
-  const _platform = MethodChannel('gitjournal.io/git');
-  final String logsFilePath = await _platform.invokeMethod('dumpAppLogs');
-  return logsFilePath;
-}
-
 void showUndoDeleteSnackbar(
   BuildContext context,
   StateContainerState stateContainer,
diff --git a/lib/widgets/app_drawer.dart b/lib/widgets/app_drawer.dart
index 9831cb68..a4c3b286 100644
--- a/lib/widgets/app_drawer.dart
+++ b/lib/widgets/app_drawer.dart
@@ -6,6 +6,7 @@ import 'package:launch_review/launch_review.dart';
 import 'package:share/share.dart';
 import 'package:url_launcher/url_launcher.dart';
 import 'package:page_transition/page_transition.dart';
+import 'package:fetch_app_logs/fetch_app_logs.dart';
 
 import 'package:gitjournal/analytics.dart';
 import 'package:gitjournal/state_container.dart';
@@ -163,7 +164,7 @@ class AppDrawer extends StatelessWidget {
             onTap: () async {
               var platform = Platform.operatingSystem;
               var versionText = await getVersionString();
-              var appLogsFilePath = await dumpAppLogs();
+              var appLogsFilePath = await FetchAppLogs.dumpAppLogsToFile();
 
               final Email email = Email(
                 body:
diff --git a/pubspec.lock b/pubspec.lock
index 91265be1..d243e0d5 100644
--- a/pubspec.lock
+++ b/pubspec.lock
@@ -113,6 +113,13 @@ packages:
       url: "https://pub.dartlang.org"
     source: hosted
     version: "1.0.1"
+  fetch_app_logs:
+    dependency: "direct main"
+    description:
+      name: fetch_app_logs
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "0.0.1"
   file:
     dependency: transitive
     description:
diff --git a/pubspec.yaml b/pubspec.yaml
index b6d3e184..fae4be6d 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -30,7 +30,8 @@ dependencies:
   flutter_staggered_grid_view: ^0.3.0
   page_transition: "^1.1.5"
   provider: ^3.2.0
-  git_bindings: 0.0.2
+  git_bindings: ^0.0.2
+  fetch_app_logs: ^0.0.1
 
 dev_dependencies:
   flutter_launcher_icons: "^0.7.2"