Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
genofire
donkey
Commits
239277fb
Commit
239277fb
authored
Aug 06, 2019
by
Anon
Browse files
Handle permissions
parent
bcf06692
Changes
4
Hide whitespace changes
Inline
Side-by-side
app/src/main/AndroidManifest.xml
View file @
239277fb
...
...
@@ -23,7 +23,7 @@
<uses-permission
android:name=
"android.permission.BLUETOOTH"
/>
<uses-permission
android:name=
"android.permission.BLUETOOTH_ADMIN"
/>
<uses-permission
android:name=
"android.permission.ACCESS_
FIN
E_LOCATION"
/>
<uses-permission
android:name=
"android.permission.ACCESS_
COARS
E_LOCATION"
/>
<uses-permission
android:name=
"android.permission.READ_EXTERNAL_STORAGE"
/>
<uses-permission
android:name=
"android.permission.WRITE_EXTERNAL_STORAGE"
/>
...
...
app/src/main/java/com/github/antweb/donkey/MainActivity.kt
View file @
239277fb
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
<
Button
>(
R
.
id
.
button_request_permissions
)
buttonRequest
.
setOnClickListener
{
ActivityCompat
.
requestPermissions
(
this
,
arrayOf
(
Manifest
.
permission
.
ACCESS_COARSE_LOCATION
,
Manifest
.
permission
.
READ_EXTERNAL_STORAGE
),
REQUEST_CODE_PERMISSIONS
)
}
}
private
fun
showConnectedView
()
{
setContentView
(
R
.
layout
.
activity_main_connected
)
...
...
@@ -43,4 +70,10 @@ class MainActivity : AppCompatActivity() {
startActivity
(
intent
)
}
}
override
fun
onRequestPermissionsResult
(
requestCode
:
Int
,
permissions
:
Array
<
String
>,
grantResults
:
IntArray
)
{
// The lazy way out...
val
intent
=
Intent
(
this
,
MainActivity
::
class
.
java
)
startActivity
(
intent
)
}
}
app/src/main/res/layout/activity_main_no_permissions.xml
0 → 100644
View file @
239277fb
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:orientation=
"vertical"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"@string/main_label_no_permissions"
/>
<Button
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:id=
"@+id/button_request_permissions"
android:text=
"@string/main_button_grant_permissions"
/>
</LinearLayout>
\ No newline at end of file
app/src/main/res/values/strings.xml
View file @
239277fb
...
...
@@ -5,8 +5,10 @@
<string
name=
"send_activity_title"
>
Send File
</string>
<string
name=
"main_activity_title"
>
@string/app_name
</string>
<string
name=
"main_label_no_permissions"
>
card10 needs location and storage permissions in order to scan for Bluetooth devices and send files.
</string>
<string
name=
"main_label_not_connected"
>
You are currently not connected to your card10.
</string>
<string
name=
"main_label_status"
>
You are connected to %1$s (%2$s)
</string>
<string
name=
"main_button_grant_permissions"
>
Grant Permissions
</string>
<string
name=
"main_button_connect"
>
Connect
</string>
<string
name=
"main_button_send"
>
Send File
</string>
</resources>
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment