33 lines
760 B
Kotlin
33 lines
760 B
Kotlin
package tech.platypush.app
|
|
|
|
import android.content.Context
|
|
import android.webkit.JavascriptInterface
|
|
import org.json.JSONArray
|
|
import java.util.*
|
|
|
|
|
|
class WebAppInterface(context: Context) {
|
|
private val serviceScanner = Scanner(context)
|
|
|
|
@Suppress("unused")
|
|
@JavascriptInterface
|
|
fun startServicesPoll() {
|
|
serviceScanner.startScan()
|
|
}
|
|
|
|
@Suppress("unused")
|
|
@JavascriptInterface
|
|
fun stopServicesPoll() {
|
|
serviceScanner.stopScan()
|
|
}
|
|
|
|
@Suppress("unused")
|
|
@JavascriptInterface
|
|
fun pollServices(): String {
|
|
val services = LinkedList<Map<String, Any?>>()
|
|
for (srv in serviceScanner.getServices())
|
|
services.add(srv.toMap())
|
|
return JSONArray(services).toString()
|
|
}
|
|
}
|