ProxyService.kt 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. /******************************************************************************
  2. * *
  3. * Copyright (C) 2021 by nekohasekai <[email protected]> *
  4. * Copyright (C) 2021 by Max Lv <[email protected]> *
  5. * Copyright (C) 2021 by Mygod Studio <[email protected]> *
  6. * *
  7. * This program is free software: you can redistribute it and/or modify *
  8. * it under the terms of the GNU General Public License as published by *
  9. * the Free Software Foundation, either version 3 of the License, or *
  10. * (at your option) any later version. *
  11. * *
  12. * This program is distributed in the hope that it will be useful, *
  13. * but WITHOUT ANY WARRANTY; without even the implied warranty of *
  14. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
  15. * GNU General Public License for more details. *
  16. * *
  17. * You should have received a copy of the GNU General Public License *
  18. * along with this program. If not, see <http://www.gnu.org/licenses/>. *
  19. * *
  20. ******************************************************************************/
  21. package io.nekohasekai.sagernet.bg
  22. import android.app.Service
  23. import android.content.Intent
  24. class ProxyService : Service(), BaseService.Interface {
  25. override val data = BaseService.Data(this)
  26. override val tag: String get() = "SagerNetProxyService"
  27. override fun createNotification(profileName: String): ServiceNotification =
  28. ServiceNotification(this, profileName, "service-proxy", true)
  29. override fun onBind(intent: Intent) = super.onBind(intent)
  30. override fun onStartCommand(intent: Intent?, flags: Int, startId: Int): Int =
  31. super<BaseService.Interface>.onStartCommand(intent, flags, startId)
  32. override fun onDestroy() {
  33. super.onDestroy()
  34. data.binder.close()
  35. }
  36. }