From 598544d7d7be79438528bf5a1794a2153be0b711 Mon Sep 17 00:00:00 2001 From: Prerak Mann Date: Fri, 16 Aug 2019 01:50:51 +0530 Subject: [PATCH] fixed file rename bug --- README.md | 3 +- .../NearbyConnectionsPlugin.java | 29 +- .../android/app/src/main/AndroidManifest.xml | 3 + example/lib/main.dart | 335 ++++++++++-------- lib/src/nearby_connections.dart | 22 +- 5 files changed, 225 insertions(+), 167 deletions(-) diff --git a/README.md b/README.md index 16cfc18..c3c79fb 100644 --- a/README.md +++ b/README.md @@ -29,8 +29,9 @@ Add these to AndroidManifest.xml - + + ``` Since ACCESS_FINE_LOCATION and READ_EXTERNAL_STORAGE is considered to be dangerous system permissions, in addition to adding them to your manifest, you must request these permissions at runtime. diff --git a/android/src/main/java/com/pkmnapps/nearby_connections/NearbyConnectionsPlugin.java b/android/src/main/java/com/pkmnapps/nearby_connections/NearbyConnectionsPlugin.java index ac830d4..b473614 100644 --- a/android/src/main/java/com/pkmnapps/nearby_connections/NearbyConnectionsPlugin.java +++ b/android/src/main/java/com/pkmnapps/nearby_connections/NearbyConnectionsPlugin.java @@ -62,21 +62,36 @@ public class NearbyConnectionsPlugin implements MethodCallHandler { public void onMethodCall(MethodCall call, final Result result) { switch (call.method) { - case "checkPermissions": + case "checkLocationPermission": if (ContextCompat.checkSelfPermission(activity, Manifest.permission.ACCESS_FINE_LOCATION) - != PackageManager.PERMISSION_GRANTED || ContextCompat.checkSelfPermission(activity, Manifest.permission.ACCESS_COARSE_LOCATION) - != PackageManager.PERMISSION_GRANTED) { - result.success(false); - } else { + == PackageManager.PERMISSION_GRANTED && ContextCompat.checkSelfPermission(activity, Manifest.permission.ACCESS_COARSE_LOCATION) + == PackageManager.PERMISSION_GRANTED) { result.success(true); + } else { + result.success(false); } break; - case "askPermissions": + case "askLocationPermission": ActivityCompat.requestPermissions(activity, new String[]{Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.ACCESS_COARSE_LOCATION}, 0); result.success(null); break; + case "checkExternalStoragePermission": + if (ContextCompat.checkSelfPermission(activity, Manifest.permission.READ_EXTERNAL_STORAGE) + == PackageManager.PERMISSION_GRANTED && ContextCompat.checkSelfPermission(activity, Manifest.permission.WRITE_EXTERNAL_STORAGE) + == PackageManager.PERMISSION_GRANTED) { + result.success(true); + } else { + result.success(false); + } + break; + case "askExternalStoragePermission": + ActivityCompat.requestPermissions(activity, + new String[]{Manifest.permission.READ_EXTERNAL_STORAGE,Manifest.permission.WRITE_EXTERNAL_STORAGE}, + 0); + result.success(null); + break; case "stopAdvertising": Log.d("nearby_connections", "stopAdvertising"); Nearby.getConnectionsClient(activity).stopAdvertising(); @@ -358,7 +373,7 @@ public class NearbyConnectionsPlugin implements MethodCallHandler { assert bytes != null; args.put("bytes", bytes); } - else if (payload.getType() == Payload.Type.BYTES) { + else if (payload.getType() == Payload.Type.FILE) { args.put("filePath", payload.asFile().asJavaFile().getAbsolutePath()); } diff --git a/example/android/app/src/main/AndroidManifest.xml b/example/android/app/src/main/AndroidManifest.xml index da157b9..d175df9 100644 --- a/example/android/app/src/main/AndroidManifest.xml +++ b/example/android/app/src/main/AndroidManifest.xml @@ -7,6 +7,9 @@ + + +