droidwithme / nsd

simple communication with NSD services

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

nsd

simple communication with NSD services

Sample Activity

class MainActivity : AppCompatActivity(), NsdListener {

val TAG = "MainActivity"

var nsdHelper: NsdHelper? = null

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)
    nsdHelper = NsdHelper(this, this)
    nsdHelper?.isAutoResolveEnabled = true
    nsdHelper?.isLogEnabled = true
    nsdHelper?.startDiscovery(NsdType.HTTP)

}


override fun onMessageReceived(message: String?) {
    logMsg("onMessageReceived$message")
    logMsg(message)
}

override fun onNsdServiceResolved(resolvedService: NsdService?) {
    logMsg("onNsdServiceResolved")
    nsdHelper?.connectToService(resolvedService!!.host.hostAddress)
}

override fun onNsdServiceLost(lostService: NsdService?) {
    logMsg("onNsdServiceLost $lostService")
}

override fun onNsdError(errorMessage: String?, errorCode: Int, errorSource: String?) {
    logMsg(errorMessage)
}

override fun onNsdDiscoveryFinished() {
    logMsg("onNsdDiscoveryFinished()")
}

override fun onNsdServiceFound(foundService: NsdService?) {
    nsdHelper?.resolveService(foundService)
    logMsg("onNsdServiceFound$foundService")
}

override fun onServiceConnected() {
    logMsg("onServiceConnected")
    nsdHelper?.sendMessage("getInfo")
}

fun logMsg(msg: String?) {
    Log.e(TAG, msg)
}

}

About

simple communication with NSD services

License:Apache License 2.0


Languages

Language:Java 87.4%Language:Kotlin 12.6%