diff --git a/app/build.gradle b/app/build.gradle
index 4300306..9b21756 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,10 +1,10 @@
apply plugin: 'com.android.application'
android {
- compileSdkVersion 30
+ compileSdk 34
defaultConfig {
applicationId "com.xendit.example"
- targetSdkVersion 30
+ targetSdkVersion 34
versionCode 1
@@ -14,11 +14,12 @@ android {
flavorDimensions "api"
android {
compileOptions {
- sourceCompatibility 1.8
- targetCompatibility 1.8
+ sourceCompatibility JavaVersion.VERSION_1_8
+ targetCompatibility JavaVersion.VERSION_1_8
}
}
+
productFlavors {
product{
dimension "api"
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 999fc3a..1466b10 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -6,6 +6,7 @@
+
-
+
diff --git a/build.gradle b/build.gradle
index 0a0454a..a189ea0 100644
--- a/build.gradle
+++ b/build.gradle
@@ -7,7 +7,7 @@ buildscript {
maven { url "https://plugins.gradle.org/m2/" }
}
dependencies {
- classpath 'com.android.tools.build:gradle:4.2.2'
+ classpath 'com.android.tools.build:gradle:7.4.2'
classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.8.5'
classpath 'com.github.dcendents:android-maven-gradle-plugin:1.4.1'
classpath 'io.codearte.gradle.nexus:gradle-nexus-staging-plugin:0.30.0'
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index d355f4c..15de902 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-6.9.3-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.2-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
diff --git a/xendit-android/build.gradle b/xendit-android/build.gradle
index 6449f95..7169afb 100644
--- a/xendit-android/build.gradle
+++ b/xendit-android/build.gradle
@@ -1,6 +1,6 @@
apply plugin: 'com.android.library'
apply plugin: 'maven-publish'
-apply plugin: 'com.jfrog.bintray'
+apply plugin: 'signing'
group 'com.xendit'
version '3.8.5'
@@ -31,10 +31,10 @@ ext {
}
android {
- compileSdkVersion 30
+ compileSdk 34
defaultConfig {
minSdkVersion 21
- targetSdkVersion 30
+ targetSdkVersion 34
versionCode 1
versionName '3.8.5'
testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner'
@@ -55,6 +55,10 @@ android {
}
productFlavors {
}
+ compileOptions {
+ sourceCompatibility JavaVersion.VERSION_1_8
+ targetCompatibility JavaVersion.VERSION_1_8
+ }
testOptions {
unitTests.returnDefaultValues = true
unitTests.includeAndroidResources = true
@@ -102,7 +106,7 @@ dependencies {
publishing {
publications {
- Production(MavenPublication) {
+ mavenJava(MavenPublication) {
artifact("$buildDir/outputs/aar/xendit-android-release.aar") // replace with your library name
groupId this.group
artifactId 'xendit-android' // replace with your library artifact id
@@ -129,12 +133,9 @@ publishing {
tasks.withType(Javadoc).all { enabled = false }
-apply plugin: 'maven'
-apply plugin: 'signing'
-
if (project.hasProperty("android")) { // Android libraries
task sourcesJar(type: Jar) {
- classifier = 'sources'
+ archiveClassifier.set('sources')
from android.sourceSets.main.java.srcDirs
}
@@ -144,7 +145,7 @@ if (project.hasProperty("android")) { // Android libraries
}
} else { // Java libraries
task sourcesJar(type: Jar, dependsOn: classes) {
- classifier = 'sources'
+ archiveClassifier.set('sources')
from sourceSets.main.allSource
}
}
@@ -159,55 +160,59 @@ String ossrhUser = properties.getProperty('ossrh.username')
String ossrhPassword = properties.getProperty('ossrh.password')
signing {
- sign configurations.archives
+ sign publishing.publications.mavenJava
}
-uploadArchives {
- repositories {
- mavenDeployer {
-
- beforeDeployment { MavenDeployment deployment -> signing.signPom(deployment) }
-
- repository(url: "https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/") {
- authentication(userName: ossrhUser, password: ossrhPassword)
- }
-
- snapshotRepository(url: "https://s01.oss.sonatype.org/content/repositories/snapshots/") {
- authentication(userName: ossrhUser, password: ossrhPassword)
- }
+publishing {
+ publications {
+ mavenJava(MavenPublication) {
+ from components.findByName("release")
- pom.project {
- name bintrayName
- packaging 'aar'
- // optionally artifactId can be defined here
- description libraryDescription
- url siteUrl
+ groupId publishedGroupId
+ artifactId artifact
+ version libraryVersion
- scm {
- connection gitUrl
- developerConnection gitUrl
- url gitUrl
- }
+ pom {
+ name = libraryName
+ description = libraryDescription
+ url = siteUrl
licenses {
license {
- name licenseName
- url licenseUrl
+ name = licenseName
+ url = licenseUrl
}
}
developers {
developer {
- id developerId
- name developerName
- email developerEmail
+ id = developerId
+ name = developerName
+ email = developerEmail
}
}
+
+ scm {
+ connection = gitUrl
+ developerConnection = gitUrl
+ url = siteUrl
+ }
}
}
}
}
+repositories {
+ maven {
+ name = "Sonatype"
+ url = version.endsWith('SNAPSHOT') ? "https://s01.oss.sonatype.org/content/repositories/snapshots/" : "https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/"
+ credentials {
+ username ossrhUser
+ password ossrhPassword
+ }
+ }
+}
+
nexusStaging {
serverUrl = 'https://s01.oss.sonatype.org/service/local/'
username = ossrhUser
diff --git a/xendit-android/src/main/java/com/xendit/Xendit.java b/xendit-android/src/main/java/com/xendit/Xendit.java
index 9a092b7..b70f438 100644
--- a/xendit-android/src/main/java/com/xendit/Xendit.java
+++ b/xendit-android/src/main/java/com/xendit/Xendit.java
@@ -802,7 +802,12 @@ public void run() {
}
authenticationBroadcastReceiver = new AuthenticationBroadcastReceiver(authenticationCallback);
- context.registerReceiver(authenticationBroadcastReceiver, new IntentFilter(ACTION_KEY));
+ // if version is over 33
+ if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.TIRAMISU) {
+ context.registerReceiver(authenticationBroadcastReceiver, new IntentFilter(ACTION_KEY), Context.RECEIVER_EXPORTED);
+ } else {
+ context.registerReceiver(authenticationBroadcastReceiver, new IntentFilter(ACTION_KEY));
+ }
}
});
}
@@ -816,7 +821,11 @@ public void run() {
}
tokenBroadcastReceiver = new TokenBroadcastReceiver(tokenCallback);
- context.registerReceiver(tokenBroadcastReceiver, new IntentFilter(ACTION_KEY));
+ if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.TIRAMISU) {
+ context.registerReceiver(tokenBroadcastReceiver, new IntentFilter(ACTION_KEY), Context.RECEIVER_EXPORTED);
+ } else {
+ context.registerReceiver(tokenBroadcastReceiver, new IntentFilter(ACTION_KEY));
+ }
}
});
}
@@ -830,7 +839,11 @@ public void run() {
}
authenticatedTokenBroadcastReceiver = new AuthenticatedTokenBroadcastReceiver(tokenCallback);
- context.registerReceiver(authenticatedTokenBroadcastReceiver, new IntentFilter(ACTION_KEY));
+ if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.TIRAMISU) {
+ context.registerReceiver(authenticatedTokenBroadcastReceiver, new IntentFilter(ACTION_KEY), Context.RECEIVER_EXPORTED);
+ } else {
+ context.registerReceiver(authenticatedTokenBroadcastReceiver, new IntentFilter(ACTION_KEY));
+ }
}
});
}