Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/bitfireAT/cert4android.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRicki Hirner <hirner@bitfire.at>2021-08-23 01:22:44 +0300
committerRicki Hirner <hirner@bitfire.at>2021-08-23 01:27:13 +0300
commit4c01f5ffd3e5c498fc96b0cad45ada282c830583 (patch)
treec3ee07256727dbfa31704861eb2e36eea3e7a58b
parent267f5952ca06a3956af8138a8b59b6a345548a4c (diff)
Raise SDK compatibility level to 31 (Android 12)
-rw-r--r--build.gradle4
-rw-r--r--src/main/java/at/bitfire/cert4android/CustomCertManager.kt2
-rw-r--r--src/main/java/at/bitfire/cert4android/CustomCertService.kt4
-rw-r--r--src/main/java/at/bitfire/cert4android/TrustCertificateActivity.kt20
-rw-r--r--src/main/res/layout/activity_trust_certificate.xml9
5 files changed, 20 insertions, 19 deletions
diff --git a/build.gradle b/build.gradle
index 7bad72f..4f75e15 100644
--- a/build.gradle
+++ b/build.gradle
@@ -28,12 +28,12 @@ apply plugin: 'kotlin-android'
apply plugin: 'org.jetbrains.dokka'
android {
- compileSdkVersion 30
+ compileSdkVersion 31
buildToolsVersion '30.0.3'
defaultConfig {
minSdkVersion 14 // Android 4.0
- targetSdkVersion 30 // Android 11
+ targetSdkVersion 31 // Android 12
}
compileOptions {
diff --git a/src/main/java/at/bitfire/cert4android/CustomCertManager.kt b/src/main/java/at/bitfire/cert4android/CustomCertManager.kt
index d0f7830..a82548d 100644
--- a/src/main/java/at/bitfire/cert4android/CustomCertManager.kt
+++ b/src/main/java/at/bitfire/cert4android/CustomCertManager.kt
@@ -8,6 +8,7 @@
package at.bitfire.cert4android
+import android.annotation.SuppressLint
import android.content.ComponentName
import android.content.Context
import android.content.Intent
@@ -43,6 +44,7 @@ import javax.net.ssl.X509TrustManager
*
* @throws IllegalStateException if run from main thread
*/
+@SuppressLint("CustomX509TrustManager")
class CustomCertManager @JvmOverloads constructor(
val context: Context,
val interactive: Boolean = true,
diff --git a/src/main/java/at/bitfire/cert4android/CustomCertService.kt b/src/main/java/at/bitfire/cert4android/CustomCertService.kt
index b62b53d..5e1912c 100644
--- a/src/main/java/at/bitfire/cert4android/CustomCertService.kt
+++ b/src/main/java/at/bitfire/cert4android/CustomCertService.kt
@@ -250,8 +250,8 @@ class CustomCertService: Service() {
.setContentText(this@CustomCertService.getString(R.string.certificate_notification_user_interaction))
.setSubText(cert.subjectDN.name)
.setCategory(NotificationCompat.CATEGORY_SERVICE)
- .setContentIntent(PendingIntent.getActivity(this@CustomCertService, id, decisionIntent, PendingIntent.FLAG_UPDATE_CURRENT))
- .setDeleteIntent(PendingIntent.getService(this@CustomCertService, id, rejectIntent, PendingIntent.FLAG_UPDATE_CURRENT))
+ .setContentIntent(PendingIntent.getActivity(this@CustomCertService, id, decisionIntent, PendingIntent.FLAG_UPDATE_CURRENT or PendingIntent.FLAG_IMMUTABLE))
+ .setDeleteIntent(PendingIntent.getService(this@CustomCertService, id, rejectIntent, PendingIntent.FLAG_UPDATE_CURRENT or PendingIntent.FLAG_IMMUTABLE))
.build()
val nm = NotificationUtils.createChannels(this@CustomCertService)
nm.notify(CertUtils.getTag(cert), Constants.NOTIFICATION_CERT_DECISION, notify)
diff --git a/src/main/java/at/bitfire/cert4android/TrustCertificateActivity.kt b/src/main/java/at/bitfire/cert4android/TrustCertificateActivity.kt
index e6653a7..a50c0ee 100644
--- a/src/main/java/at/bitfire/cert4android/TrustCertificateActivity.kt
+++ b/src/main/java/at/bitfire/cert4android/TrustCertificateActivity.kt
@@ -10,7 +10,6 @@ package at.bitfire.cert4android
import android.content.Intent
import android.os.Bundle
-import android.view.View
import androidx.appcompat.app.AppCompatActivity
import androidx.databinding.DataBindingUtil
import androidx.lifecycle.MutableLiveData
@@ -44,6 +43,15 @@ class TrustCertificateActivity: AppCompatActivity() {
val binding = DataBindingUtil.setContentView<ActivityTrustCertificateBinding>(this, R.layout.activity_trust_certificate)
binding.lifecycleOwner = this
binding.model = model
+
+ binding.acceptCertificate.setOnClickListener {
+ sendDecision(true)
+ finish()
+ }
+ binding.rejectCertificate.setOnClickListener {
+ sendDecision(false)
+ finish()
+ }
}
override fun onNewIntent(intent: Intent) {
@@ -51,16 +59,6 @@ class TrustCertificateActivity: AppCompatActivity() {
model.processIntent(intent)
}
- fun acceptCertificate(view: View) {
- sendDecision(true)
- finish()
- }
-
- fun rejectCertificate(view: View) {
- sendDecision(false)
- finish()
- }
-
private fun sendDecision(trusted: Boolean) {
val intent = Intent(this, CustomCertService::class.java)
with(intent) {
diff --git a/src/main/res/layout/activity_trust_certificate.xml b/src/main/res/layout/activity_trust_certificate.xml
index d73eee7..5a2841b 100644
--- a/src/main/res/layout/activity_trust_certificate.xml
+++ b/src/main/res/layout/activity_trust_certificate.xml
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:tools="http://schemas.android.com/tools">
+ xmlns:tools="http://schemas.android.com/tools"
+ tools:context=".TrustCertificateActivity">
<data>
<variable
@@ -118,20 +119,20 @@
android:orientation="horizontal">
<Button
+ android:id="@+id/acceptCertificate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="16dp"
style="@style/Widget.MaterialComponents.Button.TextButton"
android:text="@string/trust_certificate_accept"
- android:onClick="acceptCertificate"
android:enabled="@{model.verifiedByUser}" />
<Button
+ android:id="@+id/rejectCertificate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Widget.MaterialComponents.Button.TextButton"
- android:text="@string/trust_certificate_reject"
- android:onClick="rejectCertificate"/>
+ android:text="@string/trust_certificate_reject" />
</LinearLayout>