Merge pull request #432 from fatihergin/feature/migrating-to-target-sdk-34

Feature / migrating to target sdk 34
This commit is contained in:
Tibor Kaputa
2023-08-16 20:33:04 +02:00
committed by GitHub
4 changed files with 34 additions and 33 deletions

View File

@@ -21,6 +21,7 @@
<uses-permission android:name="android.permission.READ_MEDIA_IMAGES" /> <uses-permission android:name="android.permission.READ_MEDIA_IMAGES" />
<uses-permission android:name="android.permission.READ_MEDIA_VIDEO" /> <uses-permission android:name="android.permission.READ_MEDIA_VIDEO" />
<uses-permission android:name="android.permission.READ_MEDIA_VISUAL_USER_SELECTED" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

View File

@@ -59,7 +59,6 @@ class MainActivity : SimpleActivity(), PhotoProcessor.MediaSavedListener, Camera
private lateinit var mOrientationEventListener: OrientationEventListener private lateinit var mOrientationEventListener: OrientationEventListener
private lateinit var mFocusCircleView: FocusCircleView private lateinit var mFocusCircleView: FocusCircleView
private lateinit var mediaSoundHelper: MediaSoundHelper private lateinit var mediaSoundHelper: MediaSoundHelper
private lateinit var binding: ActivityMainBinding
private var mPreview: MyPreview? = null private var mPreview: MyPreview? = null
private var mediaSizeToggleGroup: MaterialButtonToggleGroup? = null private var mediaSizeToggleGroup: MaterialButtonToggleGroup? = null
private var mPreviewUri: Uri? = null private var mPreviewUri: Uri? = null
@@ -67,6 +66,7 @@ class MainActivity : SimpleActivity(), PhotoProcessor.MediaSavedListener, Camera
private var mLastHandledOrientation = 0 private var mLastHandledOrientation = 0
private var countDownTimer: CountDownTimer? = null private var countDownTimer: CountDownTimer? = null
private val binding by lazy(LazyThreadSafetyMode.NONE) { ActivityMainBinding.inflate(layoutInflater) }
private val tabSelectedListener = object : TabSelectedListener { private val tabSelectedListener = object : TabSelectedListener {
override fun onTabSelected(tab: TabLayout.Tab) { override fun onTabSelected(tab: TabLayout.Tab) {
handlePermission(PERMISSION_RECORD_AUDIO) { handlePermission(PERMISSION_RECORD_AUDIO) {
@@ -90,7 +90,6 @@ class MainActivity : SimpleActivity(), PhotoProcessor.MediaSavedListener, Camera
override fun onCreate(savedInstanceState: Bundle?) { override fun onCreate(savedInstanceState: Bundle?) {
useDynamicTheme = false useDynamicTheme = false
super.onCreate(savedInstanceState) super.onCreate(savedInstanceState)
binding = ActivityMainBinding.inflate(layoutInflater)
appLaunched(BuildConfig.APPLICATION_ID) appLaunched(BuildConfig.APPLICATION_ID)
requestWindowFeature(Window.FEATURE_NO_TITLE) requestWindowFeature(Window.FEATURE_NO_TITLE)
initVariables() initVariables()
@@ -225,8 +224,7 @@ class MainActivity : SimpleActivity(), PhotoProcessor.MediaSavedListener, Camera
private fun tryInitCamera() { private fun tryInitCamera() {
handlePermission(PERMISSION_CAMERA) { grantedCameraPermission -> handlePermission(PERMISSION_CAMERA) { grantedCameraPermission ->
if (grantedCameraPermission) { if (grantedCameraPermission) {
handleStoragePermission { grantedStoragePermission -> handleStoragePermission {
if (grantedStoragePermission) {
val isInPhotoMode = isInPhotoMode() val isInPhotoMode = isInPhotoMode()
if (isInPhotoMode) { if (isInPhotoMode) {
initializeCamera(true) initializeCamera(true)
@@ -246,10 +244,6 @@ class MainActivity : SimpleActivity(), PhotoProcessor.MediaSavedListener, Camera
} }
} }
} }
} else {
toast(com.simplemobiletools.commons.R.string.no_storage_permissions)
finish()
}
} }
} else { } else {
toast(com.simplemobiletools.commons.R.string.no_camera_permissions) toast(com.simplemobiletools.commons.R.string.no_camera_permissions)
@@ -270,13 +264,12 @@ class MainActivity : SimpleActivity(), PhotoProcessor.MediaSavedListener, Camera
private fun handleStoragePermission(callback: (granted: Boolean) -> Unit) { private fun handleStoragePermission(callback: (granted: Boolean) -> Unit) {
if (isTiramisuPlus()) { if (isTiramisuPlus()) {
handlePermission(PERMISSION_READ_MEDIA_IMAGES) { grantedReadImages -> val mediaPermissionIds = mutableListOf(PERMISSION_READ_MEDIA_IMAGES, PERMISSION_READ_MEDIA_VIDEO)
if (grantedReadImages) { if (isUpsideDownCakePlus()) {
handlePermission(PERMISSION_READ_MEDIA_VIDEO, callback) mediaPermissionIds.add(PERMISSION_READ_MEDIA_VISUAL_USER_SELECTED)
} else {
callback.invoke(false)
}
} }
handlePartialMediaPermissions(permissionIds = mediaPermissionIds, callback = callback)
} else { } else {
handlePermission(PERMISSION_WRITE_STORAGE, callback) handlePermission(PERMISSION_WRITE_STORAGE, callback)
} }
@@ -574,7 +567,11 @@ class MainActivity : SimpleActivity(), PhotoProcessor.MediaSavedListener, Camera
private fun hasPhotoModePermissions(): Boolean { private fun hasPhotoModePermissions(): Boolean {
return if (isTiramisuPlus()) { return if (isTiramisuPlus()) {
hasPermission(PERMISSION_READ_MEDIA_IMAGES) && hasPermission(PERMISSION_READ_MEDIA_VIDEO) && hasPermission(PERMISSION_CAMERA) var hasMediaPermission = hasPermission(PERMISSION_READ_MEDIA_IMAGES) || hasPermission(PERMISSION_READ_MEDIA_VIDEO)
if (isUpsideDownCakePlus()) {
hasMediaPermission = hasMediaPermission || hasPermission(PERMISSION_READ_MEDIA_VISUAL_USER_SELECTED)
}
hasMediaPermission && hasPermission(PERMISSION_CAMERA)
} else { } else {
hasPermission(PERMISSION_WRITE_STORAGE) && hasPermission(PERMISSION_CAMERA) hasPermission(PERMISSION_WRITE_STORAGE) && hasPermission(PERMISSION_CAMERA)
} }
@@ -582,7 +579,11 @@ class MainActivity : SimpleActivity(), PhotoProcessor.MediaSavedListener, Camera
private fun hasVideoModePermissions(): Boolean { private fun hasVideoModePermissions(): Boolean {
return if (isTiramisuPlus()) { return if (isTiramisuPlus()) {
hasPermission(PERMISSION_READ_MEDIA_VIDEO) && hasPermission(PERMISSION_CAMERA) && hasPermission(PERMISSION_RECORD_AUDIO) var hasMediaPermission = hasPermission(PERMISSION_READ_MEDIA_VIDEO)
if (isUpsideDownCakePlus()) {
hasMediaPermission = hasMediaPermission || hasPermission(PERMISSION_READ_MEDIA_VISUAL_USER_SELECTED)
}
hasMediaPermission && hasPermission(PERMISSION_CAMERA) && hasPermission(PERMISSION_RECORD_AUDIO)
} else { } else {
hasPermission(PERMISSION_WRITE_STORAGE) && hasPermission(PERMISSION_CAMERA) && hasPermission(PERMISSION_RECORD_AUDIO) hasPermission(PERMISSION_WRITE_STORAGE) && hasPermission(PERMISSION_CAMERA) && hasPermission(PERMISSION_RECORD_AUDIO)
} }

View File

@@ -17,12 +17,11 @@ import java.util.*
import kotlin.system.exitProcess import kotlin.system.exitProcess
class SettingsActivity : SimpleActivity() { class SettingsActivity : SimpleActivity() {
private lateinit var binding: ActivitySettingsBinding private val binding by lazy(LazyThreadSafetyMode.NONE) { ActivitySettingsBinding.inflate(layoutInflater) }
override fun onCreate(savedInstanceState: Bundle?) { override fun onCreate(savedInstanceState: Bundle?) {
isMaterialActivity = true isMaterialActivity = true
super.onCreate(savedInstanceState) super.onCreate(savedInstanceState)
binding = ActivitySettingsBinding.inflate(layoutInflater)
binding.apply { binding.apply {
setContentView(root) setContentView(root)
setupOptionsMenu() setupOptionsMenu()

View File

@@ -9,7 +9,7 @@ androidx-window = "1.2.0-beta01"
androidx-camera = "1.3.0-beta02" androidx-camera = "1.3.0-beta02"
androidx-ktx = "2.6.1" androidx-ktx = "2.6.1"
#Simple tools #Simple tools
simple-commons = "53ad279f5e" simple-commons = "d1629c7f1a"
#Gradle #Gradle
gradlePlugins-agp = "8.1.0" gradlePlugins-agp = "8.1.0"
#build #build