Skip to content

Commit 2029e62

Browse files
committed
[Android] update ci.
1 parent 6970c03 commit 2029e62

19 files changed

Lines changed: 87 additions & 54 deletions

File tree

Android/APIExample-Audio/app/build.gradle

Lines changed: 19 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
apply plugin: 'com.android.application'
2-
2+
apply plugin: 'org.jetbrains.kotlin.android'
33

44
def sdkVersionFile = file("../gradle.properties")
55
def properties = new Properties()
@@ -11,13 +11,13 @@ println("${rootProject.project.name} agoraSdkVersion: ${agoraSdkVersion}")
1111
def localSdkPath= "${rootProject.projectDir.absolutePath}/../../sdk"
1212

1313
android {
14-
compileSdkVersion 32
15-
buildToolsVersion "32.0.0"
14+
namespace "io.agora.api.example"
15+
compileSdk 35
1616

1717
defaultConfig {
1818
applicationId "io.agora.api.example.audio"
19-
minSdkVersion 21
20-
targetSdkVersion 32
19+
minSdkVersion 24
20+
targetSdkVersion 35
2121
versionCode 1
2222
versionName "1.0"
2323

@@ -50,11 +50,12 @@ android {
5050
}
5151

5252
compileOptions {
53-
sourceCompatibility JavaVersion.VERSION_1_8
54-
targetCompatibility JavaVersion.VERSION_1_8
53+
sourceCompatibility = JavaVersion.VERSION_1_8
54+
targetCompatibility = JavaVersion.VERSION_1_8
55+
}
56+
kotlinOptions {
57+
jvmTarget = "1.8"
5558
}
56-
57-
5859

5960
sourceSets {
6061
main {
@@ -67,6 +68,7 @@ android {
6768

6869
buildFeatures{
6970
viewBinding true
71+
buildConfig true
7072
}
7173

7274
applicationVariants.all {
@@ -96,18 +98,19 @@ dependencies {
9698
// implementation "io.agora.rtc:drm:${agoraSdkVersion}"
9799
}
98100

99-
implementation 'androidx.appcompat:appcompat:1.5.0'
101+
implementation 'androidx.appcompat:appcompat:1.7.0'
100102
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
103+
implementation "org.jetbrains.kotlin:kotlin-stdlib:1.8.22"
101104

102105
// Java language implementation
103-
implementation "androidx.navigation:navigation-fragment:2.5.0"
104-
implementation "androidx.navigation:navigation-ui:2.5.0"
106+
implementation "androidx.navigation:navigation-fragment:2.7.0"
107+
implementation "androidx.navigation:navigation-ui:2.7.0"
105108

106109
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
107-
implementation 'androidx.recyclerview:recyclerview:1.2.1'
108-
testImplementation 'junit:junit:4.12'
109-
androidTestImplementation 'androidx.test.ext:junit:1.1.1'
110-
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
110+
implementation 'androidx.recyclerview:recyclerview:1.3.2'
111+
testImplementation 'junit:junit:4.13.2'
112+
androidTestImplementation 'androidx.test.ext:junit:1.2.1'
113+
androidTestImplementation 'androidx.test.espresso:espresso-core:3.6.1'
111114

112115
implementation 'io.github.luizgrp.sectionedrecyclerviewadapter:sectionedrecyclerviewadapter:1.2.0'
113116
implementation 'de.javagl:obj:0.2.1'

Android/APIExample-Audio/app/proguard-rules.pro

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,4 +22,11 @@
2222

2323
-keep class io.agora.**{*;}
2424
-dontwarn javax.**
25-
-dontwarn com.google.devtools.build.android.**
25+
-dontwarn com.google.devtools.build.android.**
26+
27+
# OkHttp
28+
-dontwarn org.bouncycastle.jsse.**
29+
-dontwarn org.conscrypt.**
30+
-dontwarn org.openjsse.**
31+
-dontwarn okhttp3.internal.platform.**
32+
-dontwarn org.codehaus.mojo.animal_sniffer.**

Android/APIExample-Audio/app/src/main/AndroidManifest.xml

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,15 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
3-
package="io.agora.api.example">
3+
xmlns:tools="http://schemas.android.com/tools">
44

55
<uses-permission android:name="android.permission.INTERNET" />
66
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
7-
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
87
<uses-permission android:name="android.permission.RECORD_AUDIO" />
98
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
109
<uses-permission android:name="android.permission.BLUETOOTH"/>
1110
<uses-permission android:name="android.permission.BLUETOOTH_CONNECT"/>
1211
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
1312

14-
<permission-group android:name="io.agora.api.example.audio.andpermission"/>
15-
1613
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
1714
<!-- <uses-permission android:name="android.permission.POST_NOTIFICATIONS" />-->
1815

Android/APIExample-Audio/app/src/main/java/io/agora/api/example/examples/basic/JoinChannelAudio.java

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -716,11 +716,7 @@ private Notification getDefaultNotification() {
716716
PendingIntent activityPendingIntent;
717717
Intent intent = new Intent();
718718
intent.setClass(this, MainActivity.class);
719-
if (Build.VERSION.SDK_INT >= 23) {
720-
activityPendingIntent = PendingIntent.getActivity(this, 0, intent, PendingIntent.FLAG_ONE_SHOT | PendingIntent.FLAG_IMMUTABLE);
721-
} else {
722-
activityPendingIntent = PendingIntent.getActivity(this, 0, intent, PendingIntent.FLAG_ONE_SHOT);
723-
}
719+
activityPendingIntent = PendingIntent.getActivity(this, 0, intent, PendingIntent.FLAG_ONE_SHOT | PendingIntent.FLAG_IMMUTABLE);
724720

725721
Notification.Builder builder = new Notification.Builder(this)
726722
.addAction(icon, "Back to app", activityPendingIntent)

Android/APIExample-Audio/app/src/main/java/io/agora/api/example/utils/ClassUtils.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@
2121
import java.util.regex.Pattern;
2222

2323
import dalvik.system.DexFile;
24-
import io.agora.api.example.BuildConfig;
2524

2625
public class ClassUtils
2726
{
@@ -160,7 +159,7 @@ public static List<String> getSourcePaths(Context context) throws PackageManager
160159
}
161160
}
162161

163-
if (BuildConfig.DEBUG)
162+
if (io.agora.api.example.BuildConfig.DEBUG)
164163
{ // Search instant run support only debuggable
165164
sourcePaths.addAll(tryLoadInstantRunDexFile(applicationInfo));
166165
}

Android/APIExample-Audio/app/src/main/java/io/agora/api/example/utils/PermissonUtils.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,6 @@ public class PermissonUtils {
1515

1616
public static String[] getCommonPermission() {
1717
List<String> permissionList = new ArrayList<>();
18-
permissionList.add(Manifest.permission.READ_EXTERNAL_STORAGE);
19-
permissionList.add(Manifest.permission.WRITE_EXTERNAL_STORAGE);
2018
permissionList.add(Manifest.permission.RECORD_AUDIO);
2119
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
2220
permissionList.add(Manifest.permission.READ_PHONE_STATE);
Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,5 @@
11
// Top-level build file where you can add configuration options common to all sub-projects/modules.
22
plugins {
3-
id 'com.android.application' version '7.2.0' apply false
4-
id 'com.android.library' version '7.2.0' apply false
5-
}
6-
7-
task clean(type: Delete) {
8-
delete rootProject.buildDir
3+
id 'com.android.application' version '8.5.0' apply false
4+
id 'org.jetbrains.kotlin.android' version '1.9.24' apply false
95
}

Android/APIExample-Audio/cloud_build.sh

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,19 @@
33
# cache gradle to /tmp/.gradle
44
ls ~/.gradle || (mkdir -p /tmp/.gradle && ln -s /tmp/.gradle ~/.gradle && touch ~/.gradle/ln_$(date "+%y%m%d%H") && ls ~/.gradle)
55

6+
## use open jdk 17
7+
SYSTEM=$(uname -s)
8+
if [ "$SYSTEM" = "Linux" ];then
9+
if [ ! -d "/tmp/jdk-17.0.2" ];then
10+
curl -O https://download.java.net/java/GA/jdk17.0.2/dfd4a8d0985749f896bed50d7138ee7f/8/GPL/openjdk-17.0.2_linux-x64_bin.tar.gz
11+
tar zxf openjdk-17.0.2_linux-x64_bin.tar.gz
12+
mv jdk-17.0.2 /tmp/
13+
fi
14+
export JAVA_HOME=/tmp/jdk-17.0.2
15+
export PATH=$JAVA_HOME/bin:$PATH
16+
java --version
17+
fi
18+
619
#change android maven to china repos
720
sed -ie "s#google()#maven { url \"https\://maven.aliyun.com/repository/public\" }\n google()#g" settings.gradle
821
sed -ie "s#https://services.gradle.org/distributions#https://mirrors.cloud.tencent.com/gradle#g" gradle/wrapper/gradle-wrapper.properties

Android/APIExample-Audio/gradle.properties

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@ org.gradle.jvmargs=-Xmx1536m
1717
android.useAndroidX=true
1818
# Automatically convert third-party libraries to use AndroidX
1919
android.enableJetifier=true
20+
android.nonTransitiveRClass=false
21+
android.nonFinalResIds=false
2022

2123
# read enable simple filter section on README first before set this flag to TRUE
2224
simpleFilter = false

Android/APIExample-Audio/gradle/wrapper/gradle-wrapper.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME
33
distributionPath=wrapper/dists
44
zipStoreBase=GRADLE_USER_HOME
55
zipStorePath=wrapper/dists
6-
distributionUrl=https://mirrors.cloud.tencent.com/gradle/gradle-7.3.3-bin.zip
6+
distributionUrl=https://mirrors.cloud.tencent.com/gradle/gradle-8.7-bin.zip

0 commit comments

Comments
 (0)