mirror of
https://github.com/nextcloud/talk-android
synced 2025-06-20 03:59:35 +01:00
commit
2315701b3a
@ -45,11 +45,11 @@ for (TaskExecutionRequest tr : getGradle().getStartParameter().getTaskRequests()
|
|||||||
}
|
}
|
||||||
|
|
||||||
android {
|
android {
|
||||||
compileSdkVersion 29
|
compileSdkVersion 30
|
||||||
buildToolsVersion '30.0.3'
|
buildToolsVersion '30.0.3'
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
minSdkVersion 21
|
minSdkVersion 21
|
||||||
targetSdkVersion 29
|
targetSdkVersion 30
|
||||||
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
||||||
|
|
||||||
// mayor.minor.hotfix.increment (for increment: 01-50=Alpha / 51-89=RC / 90-99=stable)
|
// mayor.minor.hotfix.increment (for increment: 01-50=Alpha / 51-89=RC / 90-99=stable)
|
||||||
|
@ -62,7 +62,10 @@
|
|||||||
<uses-permission
|
<uses-permission
|
||||||
android:name="android.permission.USE_CREDENTIALS"
|
android:name="android.permission.USE_CREDENTIALS"
|
||||||
android:maxSdkVersion="22" />
|
android:maxSdkVersion="22" />
|
||||||
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
|
<uses-permission
|
||||||
|
android:name="android.permission.WRITE_EXTERNAL_STORAGE"
|
||||||
|
android:maxSdkVersion="29"
|
||||||
|
tools:ignore="ScopedStorage" />
|
||||||
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
|
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
|
||||||
<uses-permission android:name="android.permission.WAKE_LOCK" />
|
<uses-permission android:name="android.permission.WAKE_LOCK" />
|
||||||
|
|
||||||
|
@ -519,7 +519,7 @@ class LocationPickerController(args: Bundle) :
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onLocationChanged(location: Location?) {
|
override fun onLocationChanged(location: Location) {
|
||||||
myLocation = GeoPoint(location)
|
myLocation = GeoPoint(location)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -527,11 +527,11 @@ class LocationPickerController(args: Bundle) :
|
|||||||
// empty
|
// empty
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onProviderEnabled(provider: String?) {
|
override fun onProviderEnabled(provider: String) {
|
||||||
// empty
|
// empty
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onProviderDisabled(provider: String?) {
|
override fun onProviderDisabled(provider: String) {
|
||||||
// empty
|
// empty
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -213,7 +213,21 @@ class UploadAndShareFilesWorker(val context: Context, workerParameters: WorkerPa
|
|||||||
const val META_DATA = "META_DATA"
|
const val META_DATA = "META_DATA"
|
||||||
|
|
||||||
fun isStoragePermissionGranted(context: Context): Boolean {
|
fun isStoragePermissionGranted(context: Context): Boolean {
|
||||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
|
when {
|
||||||
|
Build.VERSION.SDK_INT > Build.VERSION_CODES.Q -> {
|
||||||
|
return if (PermissionChecker.checkSelfPermission(
|
||||||
|
context,
|
||||||
|
Manifest.permission.READ_EXTERNAL_STORAGE
|
||||||
|
) == PermissionChecker.PERMISSION_GRANTED
|
||||||
|
) {
|
||||||
|
Log.d(TAG, "Permission is granted (SDK 30 or greater)")
|
||||||
|
true
|
||||||
|
} else {
|
||||||
|
Log.d(TAG, "Permission is revoked (SDK 30 or greater)")
|
||||||
|
false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Build.VERSION.SDK_INT >= Build.VERSION_CODES.M -> {
|
||||||
return if (PermissionChecker.checkSelfPermission(
|
return if (PermissionChecker.checkSelfPermission(
|
||||||
context,
|
context,
|
||||||
Manifest.permission.WRITE_EXTERNAL_STORAGE
|
Manifest.permission.WRITE_EXTERNAL_STORAGE
|
||||||
@ -225,13 +239,26 @@ class UploadAndShareFilesWorker(val context: Context, workerParameters: WorkerPa
|
|||||||
Log.d(TAG, "Permission is revoked")
|
Log.d(TAG, "Permission is revoked")
|
||||||
false
|
false
|
||||||
}
|
}
|
||||||
} else { // permission is automatically granted on sdk<23 upon installation
|
}
|
||||||
|
else -> { // permission is automatically granted on sdk<23 upon installation
|
||||||
Log.d(TAG, "Permission is granted")
|
Log.d(TAG, "Permission is granted")
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
fun requestStoragePermission(controller: Controller) {
|
fun requestStoragePermission(controller: Controller) {
|
||||||
|
|
||||||
|
when {
|
||||||
|
Build.VERSION.SDK_INT > Build.VERSION_CODES.Q -> {
|
||||||
|
controller.requestPermissions(
|
||||||
|
arrayOf(
|
||||||
|
Manifest.permission.READ_EXTERNAL_STORAGE
|
||||||
|
),
|
||||||
|
REQUEST_PERMISSION
|
||||||
|
)
|
||||||
|
}
|
||||||
|
Build.VERSION.SDK_INT >= Build.VERSION_CODES.M -> {
|
||||||
controller.requestPermissions(
|
controller.requestPermissions(
|
||||||
arrayOf(
|
arrayOf(
|
||||||
Manifest.permission.WRITE_EXTERNAL_STORAGE
|
Manifest.permission.WRITE_EXTERNAL_STORAGE
|
||||||
@ -239,5 +266,9 @@ class UploadAndShareFilesWorker(val context: Context, workerParameters: WorkerPa
|
|||||||
REQUEST_PERMISSION
|
REQUEST_PERMISSION
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
else -> { // permission is automatically granted on sdk<23 upon installation
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -31,6 +31,7 @@
|
|||||||
|
|
||||||
package com.nextcloud.talk.webrtc;
|
package com.nextcloud.talk.webrtc;
|
||||||
|
|
||||||
|
import android.annotation.SuppressLint;
|
||||||
import android.content.BroadcastReceiver;
|
import android.content.BroadcastReceiver;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
@ -193,6 +194,7 @@ public class MagicAudioManager {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@SuppressLint("WrongConstant")
|
||||||
public void start(AudioManagerEvents audioManagerEvents) {
|
public void start(AudioManagerEvents audioManagerEvents) {
|
||||||
Log.d(TAG, "start");
|
Log.d(TAG, "start");
|
||||||
ThreadUtils.checkIsOnMainThread();
|
ThreadUtils.checkIsOnMainThread();
|
||||||
@ -291,6 +293,7 @@ public class MagicAudioManager {
|
|||||||
Log.d(TAG, "AudioManager started");
|
Log.d(TAG, "AudioManager started");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@SuppressLint("WrongConstant")
|
||||||
public void stop() {
|
public void stop() {
|
||||||
Log.d(TAG, "stop");
|
Log.d(TAG, "stop");
|
||||||
ThreadUtils.checkIsOnMainThread();
|
ThreadUtils.checkIsOnMainThread();
|
||||||
@ -464,7 +467,7 @@ public class MagicAudioManager {
|
|||||||
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) {
|
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) {
|
||||||
return audioManager.isWiredHeadsetOn();
|
return audioManager.isWiredHeadsetOn();
|
||||||
} else {
|
} else {
|
||||||
final AudioDeviceInfo[] devices = audioManager.getDevices(AudioManager.GET_DEVICES_ALL);
|
@SuppressLint("WrongConstant") final AudioDeviceInfo[] devices = audioManager.getDevices(AudioManager.GET_DEVICES_ALL);
|
||||||
for (AudioDeviceInfo device : devices) {
|
for (AudioDeviceInfo device : devices) {
|
||||||
final int type = device.getType();
|
final int type = device.getType();
|
||||||
if (type == AudioDeviceInfo.TYPE_WIRED_HEADSET) {
|
if (type == AudioDeviceInfo.TYPE_WIRED_HEADSET) {
|
||||||
|
Loading…
Reference in New Issue
Block a user