KNET jest dostępny przez GitHub Packages. Poniżej znajdziesz instrukcje konfiguracji dla różnych systemów buildowania.
settings.gradle.ktsdependencyResolutionManagement {
repositories {
google()
mavenCentral()
maven {
url = uri("https://maven.pkg.github.com/nerdrip/kitsune-net")
credentials {
username = project.findProperty("gpr.user") as String?
?: System.getenv("GITHUB_USERNAME")
password = project.findProperty("gpr.token") as String?
?: System.getenv("GITHUB_TOKEN")
}
}
}
}
build.gradle.kts (app)dependencies {
implementation("rip.nerd.kitsunenet:kitsunenet:1.0.0")
}
W pliku ~/.gradle/gradle.properties:
gpr.user=TwojaGitHubNazwaUżytkownika
gpr.token=ghp_xxxxxxxxxxxxxxxxxxxx
read:packagessettings.gradledependencyResolutionManagement {
repositories {
google()
mavenCentral()
maven {
url = uri("https://maven.pkg.github.com/nerdrip/kitsune-net")
credentials {
username = project.findProperty("gpr.user") ?: System.getenv("GITHUB_USERNAME")
password = project.findProperty("gpr.token") ?: System.getenv("GITHUB_TOKEN")
}
}
}
}
build.gradle (app)dependencies {
implementation 'rip.nerd.kitsunenet:kitsunenet:1.0.0'
}
| Wymaganie | Minimalna wersja |
|---|---|
| Android API | 26 (Android 8.0 Oreo) |
| Kotlin | 1.9.0 |
| Gradle | 8.0 |
| Java | 17 |
Dodaj uprawnienia w AndroidManifest.xml:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<!-- Dla WebSocket w tle -->
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
<!-- Dla Network Security Config -->
<application
android:networkSecurityConfig="@xml/network_security_config"
... >
KNET automatycznie dołącza następujące zależności:
| Biblioteka | Wersja | Opis |
|---|---|---|
| OkHttp | 4.12.0 | HTTP client |
| Kotlin Coroutines | 1.7.3 | Asynchroniczność |
| org.json | Android built-in | JSON parsing |
// W MainActivity lub dowolnej Activity
lifecycleScope.launch {
try {
val response = KNETClient().get("https://httpbin.org/get")
Log.d("KNET", "Status: ${response.statusCode}")
Log.d("KNET", "KNET działa poprawnie! ✅")
} catch (e: Exception) {
Log.e("KNET", "Błąd: ${e.message}")
}
}