2026-10-31 17:36:42 +07:00
|
|
|
package com.gacy.android
|
|
|
|
|
|
|
|
|
|
import android.app.Application
|
|
|
|
|
import android.app.NotificationChannel
|
|
|
|
|
import android.app.NotificationManager
|
|
|
|
|
import android.os.Build
|
2026-11-01 13:58:07 +07:00
|
|
|
import com.chaquo.python.Python
|
|
|
|
|
import com.chaquo.python.android.AndroidPlatform
|
2026-10-31 17:36:42 +07:00
|
|
|
|
|
|
|
|
class GaCyApplication : Application() {
|
|
|
|
|
|
|
|
|
|
companion object {
|
|
|
|
|
const val CHANNEL_ID = "gacy_server_channel"
|
|
|
|
|
const val CHANNEL_NAME = "GaCy Server Service"
|
|
|
|
|
lateinit var instance: GaCyApplication
|
|
|
|
|
private set
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
override fun onCreate() {
|
|
|
|
|
super.onCreate()
|
|
|
|
|
instance = this
|
|
|
|
|
createNotificationChannel()
|
2026-11-01 13:58:07 +07:00
|
|
|
|
|
|
|
|
// Initialize embedded Python runtime
|
|
|
|
|
if (!Python.isStarted()) {
|
|
|
|
|
Python.start(AndroidPlatform(this))
|
|
|
|
|
}
|
2026-10-31 17:36:42 +07:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private fun createNotificationChannel() {
|
|
|
|
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
|
|
|
|
|
val channel = NotificationChannel(
|
|
|
|
|
CHANNEL_ID,
|
|
|
|
|
CHANNEL_NAME,
|
|
|
|
|
NotificationManager.IMPORTANCE_LOW
|
|
|
|
|
).apply {
|
|
|
|
|
description = "Background service for GaCy Game Server & Proxy"
|
|
|
|
|
setShowBadge(false)
|
|
|
|
|
}
|
|
|
|
|
val manager = getSystemService(NotificationManager::class.java)
|
|
|
|
|
manager?.createNotificationChannel(channel)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|