diff --git a/.idea/compiler.xml b/.idea/compiler.xml
new file mode 100644
index 0000000..b589d56
--- /dev/null
+++ b/.idea/compiler.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/deploymentTargetSelector.xml b/.idea/deploymentTargetSelector.xml
new file mode 100644
index 0000000..b268ef3
--- /dev/null
+++ b/.idea/deploymentTargetSelector.xml
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/encodings.xml b/.idea/encodings.xml
deleted file mode 100644
index f13fa33..0000000
--- a/.idea/encodings.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
-
-
\ No newline at end of file
diff --git a/.idea/gradle.xml b/.idea/gradle.xml
index 15dda04..0b0534c 100644
--- a/.idea/gradle.xml
+++ b/.idea/gradle.xml
@@ -1,17 +1,18 @@
+
diff --git a/.idea/kotlinc.xml b/.idea/kotlinc.xml
new file mode 100644
index 0000000..fe63bb6
--- /dev/null
+++ b/.idea/kotlinc.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/migrations.xml b/.idea/migrations.xml
new file mode 100644
index 0000000..f8051a6
--- /dev/null
+++ b/.idea/migrations.xml
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 8cb4894..34517fa 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -1,14 +1,59 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/runConfigurations.xml b/.idea/runConfigurations.xml
deleted file mode 100644
index 9b770a6..0000000
--- a/.idea/runConfigurations.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/build.gradle b/app/build.gradle
index 7830adc..0f902c3 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,19 +1,19 @@
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
-apply plugin: 'kotlin-android-extensions'
android {
- compileSdkVersion 28
+ namespace "com.github.roarappstudio.btkontroller"
+ compileSdkVersion 34
defaultConfig {
applicationId "com.github.roarappstudio.btkontroller"
minSdkVersion 28
- targetSdkVersion 28
+ targetSdkVersion 34
versionCode 2
versionName "0.0.2"
}
compileOptions {
- targetCompatibility 1.8
- sourceCompatibility 1.8
+ targetCompatibility 17
+ sourceCompatibility 17
}
buildTypes {
release {
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 3d9233f..55e864e 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -4,6 +4,8 @@
+
+
@@ -22,7 +24,8 @@
+ android:exported="true"
+ android:theme="@style/SplashStyle">
@@ -30,6 +33,7 @@
diff --git a/app/src/main/java/com/github/roarappstudio/btkontroller/BluetoothController.kt b/app/src/main/java/com/github/roarappstudio/btkontroller/BluetoothController.kt
index 72710be..f7ce94b 100644
--- a/app/src/main/java/com/github/roarappstudio/btkontroller/BluetoothController.kt
+++ b/app/src/main/java/com/github/roarappstudio/btkontroller/BluetoothController.kt
@@ -1,22 +1,28 @@
package com.github.roarappstudio.btkontroller
-import android.bluetooth.*
+import android.bluetooth.BluetoothAdapter
+import android.bluetooth.BluetoothDevice
+import android.bluetooth.BluetoothHidDevice
+import android.bluetooth.BluetoothHidDeviceAppQosSettings
+import android.bluetooth.BluetoothHidDeviceAppSdpSettings
+import android.bluetooth.BluetoothProfile
import android.content.Context
+import android.content.Intent
+import android.content.Intent.FLAG_ACTIVITY_NEW_TASK
import android.util.Log
import com.github.roarappstudio.btkontroller.reports.FeatureReport
@Suppress("MemberVisibilityCanBePrivate")
-object BluetoothController: BluetoothHidDevice.Callback(), BluetoothProfile.ServiceListener {
+object BluetoothController : BluetoothHidDevice.Callback(), BluetoothProfile.ServiceListener {
val featureReport = FeatureReport()
-
override fun onSetReport(device: BluetoothDevice?, type: Byte, id: Byte, data: ByteArray?) {
- Log.i("setfirst","setfirst")
+ Log.i("setfirst", "setfirst")
super.onSetReport(device, type, id, data)
- Log.i("setreport","this $device and $type and $id and $data")
+ Log.i("setreport", "this $device and $type and $id and $data")
}
@@ -27,14 +33,14 @@ object BluetoothController: BluetoothHidDevice.Callback(), BluetoothProfile.Serv
super.onGetReport(device, type, id, bufferSize)
Log.i("get", "second")
- if (type == BluetoothHidDevice.REPORT_TYPE_FEATURE) {
- featureReport.wheelResolutionMultiplier = true
- featureReport.acPanResolutionMultiplier = true
- Log.i("getbthid","$btHid")
+ if (type == BluetoothHidDevice.REPORT_TYPE_FEATURE) {
+ featureReport.wheelResolutionMultiplier = true
+ featureReport.acPanResolutionMultiplier = true
+ Log.i("getbthid", "$btHid")
- var wasrs=btHid?.replyReport(device, type, FeatureReport.ID, featureReport.bytes)
- Log.i("replysuccess flag ",wasrs.toString())
- }
+ var wasrs = btHid?.replyReport(device, type, FeatureReport.ID, featureReport.bytes)
+ Log.i("replysuccess flag ", wasrs.toString())
+ }
}
@@ -45,12 +51,11 @@ object BluetoothController: BluetoothHidDevice.Callback(), BluetoothProfile.Serv
var hostDevice: BluetoothDevice? = null
var autoPairFlag = false
- var mpluggedDevice :BluetoothDevice? = null
+ var mpluggedDevice: BluetoothDevice? = null
-
- private var deviceListener: ((BluetoothHidDevice, BluetoothDevice)->Unit)? = null
- private var disconnectListener: (()->Unit)? = null
+ private var deviceListener: ((BluetoothHidDevice, BluetoothDevice) -> Unit)? = null
+ private var disconnectListener: (() -> Unit)? = null
fun init(ctx: Context) {
if (btHid != null)
@@ -58,7 +63,7 @@ object BluetoothController: BluetoothHidDevice.Callback(), BluetoothProfile.Serv
btAdapter.getProfileProxy(ctx, this, BluetoothProfile.HID_DEVICE)
}
- fun getSender(callback: (BluetoothHidDevice, BluetoothDevice)->Unit) {
+ fun getSender(callback: (BluetoothHidDevice, BluetoothDevice) -> Unit) {
btHid?.let { hidd ->
hostDevice?.let { host ->
callback(hidd, host)
@@ -69,7 +74,7 @@ object BluetoothController: BluetoothHidDevice.Callback(), BluetoothProfile.Serv
}
- fun getDisconnector(callback: ()->Unit) {
+ fun getDisconnector(callback: () -> Unit) {
disconnectListener = callback
}
@@ -98,32 +103,37 @@ object BluetoothController: BluetoothHidDevice.Callback(), BluetoothProfile.Serv
return
}
this.btHid = btHid
- btHid.registerApp(sdpRecord, null, qosOut, {it.run()}, this)//--
- btAdapter.setScanMode(BluetoothAdapter.SCAN_MODE_CONNECTABLE_DISCOVERABLE, 300000)
-
-
+ btHid.registerApp(sdpRecord, null, qosOut, { it.run() }, this)
+ if (btAdapter.getScanMode() != BluetoothAdapter.SCAN_MODE_CONNECTABLE_DISCOVERABLE) {
+ val intent = Intent(BluetoothAdapter.ACTION_REQUEST_DISCOVERABLE)
+ intent.flags = FLAG_ACTIVITY_NEW_TASK
+ intent.putExtra(BluetoothAdapter.EXTRA_DISCOVERABLE_DURATION, 300)
+ Kontroller.INSTANCE?.startActivity(intent)
+ }
}
-
/************************************************/
/** BluetoothHidDevice.Callback implementation **/
/************************************************/
-
override fun onConnectionStateChanged(device: BluetoothDevice?, state: Int) {
super.onConnectionStateChanged(device, state)
- Log.i(TAG, "Connection state ${when(state) {
- BluetoothProfile.STATE_CONNECTING -> "CONNECTING"
- BluetoothProfile.STATE_CONNECTED -> "CONNECTED"
- BluetoothProfile.STATE_DISCONNECTING -> "DISCONNECTING"
- BluetoothProfile.STATE_DISCONNECTED -> "DISCONNECTED"
-
- else -> state.toString()
- }}")
+ Log.i(
+ TAG, "Connection state ${
+ when (state) {
+ BluetoothProfile.STATE_CONNECTING -> "CONNECTING"
+ BluetoothProfile.STATE_CONNECTED -> "CONNECTED"
+ BluetoothProfile.STATE_DISCONNECTING -> "DISCONNECTING"
+ BluetoothProfile.STATE_DISCONNECTED -> "DISCONNECTED"
+
+ else -> state.toString()
+ }
+ }"
+ )
if (state == BluetoothProfile.STATE_CONNECTED) {
if (device != null) {
hostDevice = device
@@ -136,8 +146,7 @@ object BluetoothController: BluetoothHidDevice.Callback(), BluetoothProfile.Serv
}
} else {
hostDevice = null
- if(state == BluetoothProfile.STATE_DISCONNECTED)
- {
+ if (state == BluetoothProfile.STATE_DISCONNECTED) {
disconnectListener?.invoke()
}
@@ -146,24 +155,31 @@ object BluetoothController: BluetoothHidDevice.Callback(), BluetoothProfile.Serv
override fun onAppStatusChanged(pluggedDevice: BluetoothDevice?, registered: Boolean) {
super.onAppStatusChanged(pluggedDevice, registered)
- if(registered)
- {
- var pairedDevices = btHid?.getDevicesMatchingConnectionStates(intArrayOf(BluetoothProfile.STATE_CONNECTING,BluetoothProfile.STATE_CONNECTED,BluetoothProfile.STATE_DISCONNECTED,BluetoothProfile.STATE_DISCONNECTING))
- Log.d("paired d", "paired devices are : $pairedDevices")
- Log.d("paired d","${btHid?.getConnectionState(pairedDevices?.get(0))}")
- mpluggedDevice = pluggedDevice
- if(btHid?.getConnectionState(pluggedDevice)==0 && pluggedDevice!= null && autoPairFlag ==true)
- {
- btHid?.connect(pluggedDevice)
- //hostDevice.toString()
-
+ if (registered) {
+ var pairedDevices = btHid?.getDevicesMatchingConnectionStates(
+ intArrayOf(
+ BluetoothProfile.STATE_CONNECTING,
+ BluetoothProfile.STATE_CONNECTED,
+ BluetoothProfile.STATE_DISCONNECTED,
+ BluetoothProfile.STATE_DISCONNECTING
+ )
+ )
+ Log.d("paired d", "paired devices are : $pairedDevices")
+ if (pairedDevices?.size != 0) {
+ Log.d("paired d", "${btHid?.getConnectionState(pairedDevices?.get(0))}")
+ }else{
+ return
+ }
- }
+ mpluggedDevice = pluggedDevice
+ if (btHid?.getConnectionState(pluggedDevice) == 0 && pluggedDevice != null && autoPairFlag == true) {
+ btHid?.connect(pluggedDevice)
+ //hostDevice.toString()
- else if(btHid?.getConnectionState(pairedDevices?.get(0))==0 && autoPairFlag==true)
- {
- Log.i("ddaaqq","sssS"
+ } else if (btHid?.getConnectionState(pairedDevices?.get(0)) == 0 && autoPairFlag == true) {
+ Log.i(
+ "ddaaqq", "sssS"
)
btHid?.connect(pairedDevices?.get(0))
}
@@ -176,18 +192,12 @@ object BluetoothController: BluetoothHidDevice.Callback(), BluetoothProfile.Serv
// LocalBroadcastManager.getInstance(this).sendBroadcast(intent)
-
-
-
}
}
-
-
-
/*************/
/** Garbage **/
/*************/
@@ -205,7 +215,6 @@ object BluetoothController: BluetoothHidDevice.Callback(), BluetoothProfile.Serv
}
-
private val qosOut by lazy {
BluetoothHidDeviceAppQosSettings(
BluetoothHidDeviceAppQosSettings.SERVICE_BEST_EFFORT,
diff --git a/app/src/main/java/com/github/roarappstudio/btkontroller/Kontroller.kt b/app/src/main/java/com/github/roarappstudio/btkontroller/Kontroller.kt
index 3281d2a..5af253b 100644
--- a/app/src/main/java/com/github/roarappstudio/btkontroller/Kontroller.kt
+++ b/app/src/main/java/com/github/roarappstudio/btkontroller/Kontroller.kt
@@ -5,8 +5,14 @@ import android.app.Application
@Suppress("unused") // It's in fucking manifest -_-
class Kontroller: Application() {
+
override fun onCreate() {
super.onCreate()
+ INSTANCE = this
+ }
+
+ companion object{
+ var INSTANCE: Application?=null
}
}
\ No newline at end of file
diff --git a/app/src/main/java/com/github/roarappstudio/btkontroller/SelectDeviceActivity.kt b/app/src/main/java/com/github/roarappstudio/btkontroller/SelectDeviceActivity.kt
index 87fc77f..ce62512 100644
--- a/app/src/main/java/com/github/roarappstudio/btkontroller/SelectDeviceActivity.kt
+++ b/app/src/main/java/com/github/roarappstudio/btkontroller/SelectDeviceActivity.kt
@@ -166,7 +166,7 @@ class SelectDeviceActivity: Activity(),KeyEvent.Callback {
val gTouchListener = object : View.OnTouchListener {
- override fun onTouch(v: View?, event: MotionEvent?): Boolean {
+ override fun onTouch(v: View?, event: MotionEvent): Boolean {
return mDetector.onTouchEvent(event)
@@ -417,10 +417,10 @@ class SelectDeviceActivity: Activity(),KeyEvent.Callback {
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)
- with(sharedPref.edit())
+ with(sharedPref?.edit())
{
- putBoolean(getString(R.string.screen_on_flag), false)
- commit()
+ this?.putBoolean(getString(R.string.screen_on_flag), false)
+ this?.commit() ?: false
}
}
@@ -429,10 +429,10 @@ class SelectDeviceActivity: Activity(),KeyEvent.Callback {
item.isChecked=true
window.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)
- with(sharedPref.edit())
+ with(sharedPref?.edit())
{
- putBoolean(getString(R.string.screen_on_flag), true)
- commit()
+ this?.putBoolean(getString(R.string.screen_on_flag), true)
+ this?.commit()
}
}
@@ -446,10 +446,10 @@ class SelectDeviceActivity: Activity(),KeyEvent.Callback {
item.isChecked = false
BluetoothController.autoPairFlag=false
- with(sharedPref.edit())
+ with(sharedPref?.edit())
{
- putBoolean(getString(R.string.auto_pair_flag), BluetoothController.autoPairFlag)
- commit()
+ this?.putBoolean(getString(R.string.auto_pair_flag), BluetoothController.autoPairFlag)
+ this?.commit()
}
}
@@ -462,10 +462,10 @@ class SelectDeviceActivity: Activity(),KeyEvent.Callback {
BluetoothController.btHid?.connect(BluetoothController.mpluggedDevice)
//hostDevice.toString()
}
- with(sharedPref.edit())
+ with(sharedPref?.edit())
{
- putBoolean(getString(R.string.auto_pair_flag), BluetoothController.autoPairFlag)
- commit()
+ this?.putBoolean(getString(R.string.auto_pair_flag), BluetoothController.autoPairFlag)
+ this?.commit()
}
}
diff --git a/app/src/main/java/com/github/roarappstudio/btkontroller/Unhide.kt b/app/src/main/java/com/github/roarappstudio/btkontroller/Unhide.kt
index 6824e22..c332356 100644
--- a/app/src/main/java/com/github/roarappstudio/btkontroller/Unhide.kt
+++ b/app/src/main/java/com/github/roarappstudio/btkontroller/Unhide.kt
@@ -5,8 +5,8 @@ import android.bluetooth.BluetoothDevice
/** Extensions which expose hidden API **/
-fun BluetoothAdapter.setScanMode(mode: Int, duration: Int): Boolean =
- this::class.java.getMethod("setScanMode", Int::class.java, Int::class.java).invoke(this, mode, duration) as Boolean
+//fun BluetoothAdapter.setScanMode(mode: Int, duration: Int): Boolean =
+// this::class.java.getMethod("setScanMode", Int::class.java, Int::class.java).invoke(this, mode, duration) as Boolean
fun BluetoothDevice.cancelBondProcess(): Boolean =
this::class.java.getMethod("cancelBondProcess").invoke(this) as Boolean
diff --git a/app/src/main/java/com/github/roarappstudio/btkontroller/extraLibraries/CustomGestureDetector.kt b/app/src/main/java/com/github/roarappstudio/btkontroller/extraLibraries/CustomGestureDetector.kt
index dc6525c..8afca57 100644
--- a/app/src/main/java/com/github/roarappstudio/btkontroller/extraLibraries/CustomGestureDetector.kt
+++ b/app/src/main/java/com/github/roarappstudio/btkontroller/extraLibraries/CustomGestureDetector.kt
@@ -8,7 +8,7 @@ import com.github.roarappstudio.btkontroller.listeners.GestureDetectListener
class CustomGestureDetector(context: Context, internal var mListener: GestureDetectListener) :
GestureDetector(context, mListener) {
- override fun onTouchEvent(ev: MotionEvent?): Boolean {
+ override fun onTouchEvent(ev: MotionEvent): Boolean {
val consume = if (mListener != null) mListener!!.onTouchEvent(ev) else false
return consume || super.onTouchEvent(ev)
}
diff --git a/app/src/main/java/com/github/roarappstudio/btkontroller/listeners/GestureDetectListener.kt b/app/src/main/java/com/github/roarappstudio/btkontroller/listeners/GestureDetectListener.kt
index 8e6b759..d13444f 100644
--- a/app/src/main/java/com/github/roarappstudio/btkontroller/listeners/GestureDetectListener.kt
+++ b/app/src/main/java/com/github/roarappstudio/btkontroller/listeners/GestureDetectListener.kt
@@ -41,7 +41,7 @@ class GestureDetectListener(val rMouseSender : RelativeMouseSender) : GestureDet
private var stopScrollFlag=0
internal var downTimestamp = System.currentTimeMillis()
- fun onTouchEvent(ev: MotionEvent?): Boolean {
+ fun onTouchEvent(ev: MotionEvent): Boolean {
if(ev !=null) {
val action = ev.action and MotionEvent.ACTION_MASK
if(ev.pointerCount==1)
@@ -128,13 +128,13 @@ class GestureDetectListener(val rMouseSender : RelativeMouseSender) : GestureDet
}
return false
}
- override fun onDoubleTap(e: MotionEvent?): Boolean {
+ override fun onDoubleTap(e: MotionEvent): Boolean {
Log.i("doubleddht","this is on double tap $e")
return false
}
- override fun onDoubleTapEvent(e: MotionEvent?): Boolean {
+ override fun onDoubleTapEvent(e: MotionEvent): Boolean {
Log.i("doubleddhe","this is on double tap event $e")
if(mPtrCount==1)
{
@@ -175,7 +175,7 @@ class GestureDetectListener(val rMouseSender : RelativeMouseSender) : GestureDet
return false
}
- override fun onSingleTapConfirmed(e: MotionEvent?): Boolean {
+ override fun onSingleTapConfirmed(e: MotionEvent): Boolean {
Log.i("doubleddhs","this is on single tap confirmed $e")
if(disableSingleTapFlag==1)
{
@@ -187,19 +187,19 @@ class GestureDetectListener(val rMouseSender : RelativeMouseSender) : GestureDet
return false
}
- override fun onSingleTapUp(e: MotionEvent?): Boolean {
+ override fun onSingleTapUp(e: MotionEvent): Boolean {
Log.i("doubleddhu","this is on single tap up $e")
//
return true
}
- override fun onDown(e: MotionEvent?): Boolean {
+ override fun onDown(e: MotionEvent): Boolean {
Log.d("ggkjh", "onDown: $e")
return false
}
- override fun onFling(e1: MotionEvent?, e2: MotionEvent?, velocityX: Float, velocityY: Float): Boolean {
+ override fun onFling(e1: MotionEvent?, e2: MotionEvent, velocityX: Float, velocityY: Float): Boolean {
Log.i("this is a fling e1 ","$e1")
Log.i("this is a fling e2 ","$e2")
Log.i("this is a fling vx ","$velocityX")
@@ -209,7 +209,7 @@ class GestureDetectListener(val rMouseSender : RelativeMouseSender) : GestureDet
return false
}
- override fun onScroll(e1: MotionEvent?, e2: MotionEvent?, distanceX: Float, distanceY: Float): Boolean {
+ override fun onScroll(e1: MotionEvent?, e2: MotionEvent, distanceX: Float, distanceY: Float): Boolean {
if(mPtrCount==2) {
@@ -275,11 +275,11 @@ class GestureDetectListener(val rMouseSender : RelativeMouseSender) : GestureDet
return false
}
- override fun onLongPress(e: MotionEvent?) {
+ override fun onLongPress(e: MotionEvent) {
}
- override fun onShowPress(e: MotionEvent?) {
+ override fun onShowPress(e: MotionEvent) {
}
diff --git a/app/src/main/java/com/github/roarappstudio/btkontroller/reports/FeatureReport.kt b/app/src/main/java/com/github/roarappstudio/btkontroller/reports/FeatureReport.kt
index 616fec1..9f0dd68 100644
--- a/app/src/main/java/com/github/roarappstudio/btkontroller/reports/FeatureReport.kt
+++ b/app/src/main/java/com/github/roarappstudio/btkontroller/reports/FeatureReport.kt
@@ -3,8 +3,7 @@ package com.github.roarappstudio.btkontroller.reports
import kotlin.experimental.and
import kotlin.experimental.or
-@Suppress("EXPERIMENTAL_FEATURE_WARNING")
-inline class FeatureReport (
+class FeatureReport (
val bytes: ByteArray = ByteArray(1) {0}
) {
diff --git a/build.gradle b/build.gradle
index 9fc0963..92d9306 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,7 +1,7 @@
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
- ext.kotlin_version = '1.3.21'
+ ext.kotlin_version = '1.9.23'
ext.anko_version='0.10.8'
repositories {
@@ -9,7 +9,7 @@ buildscript {
jcenter()
}
dependencies {
- classpath 'com.android.tools.build:gradle:3.4.1'
+ classpath 'com.android.tools.build:gradle:8.3.1'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
// NOTE: Do not place your application dependencies here; they belong
diff --git a/gradle.properties b/gradle.properties
index 514fe6e..60cbb27 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -13,5 +13,6 @@ org.gradle.jvmargs=-Xmx1536m
# org.gradle.parallel=true
# Kotlin code style for this project: "official" or "obsolete":
kotlin.code.style=official
+android.useAndroidX=true
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index 1fcbe8e..0b20331 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-5.1.1-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.6-bin.zip