diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index cfb44a5e811d1a67233e27733b1f0d9599a1018b..e1992eb9629fa538aa940e8f73563c0da8a50ad3 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -23,7 +23,7 @@
-
+
diff --git a/app/src/main/java/com/github/antweb/donkey/MainActivity.kt b/app/src/main/java/com/github/antweb/donkey/MainActivity.kt
index 6286afb20f59ca68fa5c9639b495e43fa8ffce7a..6a50b8f49e2dbefb81da93df75d6b19f014f8aa5 100644
--- a/app/src/main/java/com/github/antweb/donkey/MainActivity.kt
+++ b/app/src/main/java/com/github/antweb/donkey/MainActivity.kt
@@ -1,25 +1,52 @@
package com.github.antweb.donkey
+import android.Manifest
import android.content.Intent
+import android.content.pm.PackageManager
import android.os.Bundle
import android.widget.Button
import android.widget.TextView
import androidx.appcompat.app.AppCompatActivity
+import androidx.core.app.ActivityCompat
+import androidx.core.content.ContextCompat
private const val TAG = "MainActivity"
+private const val REQUEST_CODE_PERMISSIONS = 1
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
- if (ConnectionService.hasDevice()) {
+ val locationPermission =
+ ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION)
+ val storagePermission =
+ ContextCompat.checkSelfPermission(this, Manifest.permission.READ_EXTERNAL_STORAGE)
+
+ if (locationPermission != PackageManager.PERMISSION_GRANTED ||
+ storagePermission != PackageManager.PERMISSION_GRANTED
+ ) {
+ showPermissionView()
+ } else if (ConnectionService.hasDevice()) {
showConnectedView()
} else {
showNotConnectedView()
}
}
+ private fun showPermissionView() {
+ setContentView(R.layout.activity_main_no_permissions)
+
+ val buttonRequest = findViewById