新增凭证绑定HTTP服务接口
This commit is contained in:
parent
147ac597fa
commit
0a20d978ef
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -225,7 +225,10 @@ dependencies {
|
||||||
|
|
||||||
implementation 'com.shuyu:gsyVideoPlayer-java:8.1.2'
|
implementation 'com.shuyu:gsyVideoPlayer-java:8.1.2'
|
||||||
|
|
||||||
implementation 'org.java-websocket:Java-WebSocket:1.5.7'
|
|
||||||
|
//webserver
|
||||||
|
implementation 'com.koushikdutta.async:androidasync:3.1.0'
|
||||||
|
// implementation 'org.java-websocket:Java-WebSocket:1.5.7'
|
||||||
|
|
||||||
//根据你的需求ijk模式的so
|
//根据你的需求ijk模式的so
|
||||||
implementation 'com.shuyu:gsyVideoPlayer-armv5:8.1.2'
|
implementation 'com.shuyu:gsyVideoPlayer-armv5:8.1.2'
|
||||||
|
|
|
@ -9,6 +9,7 @@ import android.util.Log
|
||||||
import cn.trans88.kurotool.util.LogLevel
|
import cn.trans88.kurotool.util.LogLevel
|
||||||
import cn.trans88.kurotool.util.LogUtil
|
import cn.trans88.kurotool.util.LogUtil
|
||||||
import cn.trans88.taxiappkotlin.ext.logd
|
import cn.trans88.taxiappkotlin.ext.logd
|
||||||
|
import cn.trans88.taxiappkotlin.ledok.HttpServer
|
||||||
import cn.trans88.taxiappkotlin.logic.dao.DaoMaster
|
import cn.trans88.taxiappkotlin.logic.dao.DaoMaster
|
||||||
import cn.trans88.taxiappkotlin.logic.dao.DaoSession
|
import cn.trans88.taxiappkotlin.logic.dao.DaoSession
|
||||||
import cn.trans88.taxiappkotlin.logic.dao.HelperDaoDB
|
import cn.trans88.taxiappkotlin.logic.dao.HelperDaoDB
|
||||||
|
@ -226,6 +227,12 @@ class TaxiApp : Application() {
|
||||||
|
|
||||||
|
|
||||||
registerNetworkChangeReceiver()
|
registerNetworkChangeReceiver()
|
||||||
|
|
||||||
|
Log.d(TAG, "onCreate: httpServer")
|
||||||
|
Thread {
|
||||||
|
HttpServer().listen()
|
||||||
|
}.start()
|
||||||
|
// HttpServer().start()
|
||||||
//配置exoPlayer的player
|
//配置exoPlayer的player
|
||||||
// initPlayer()
|
// initPlayer()
|
||||||
//TODO
|
//TODO
|
||||||
|
|
|
@ -0,0 +1,81 @@
|
||||||
|
package cn.trans88.taxiappkotlin.ledok
|
||||||
|
|
||||||
|
import android.util.Log
|
||||||
|
import cn.trans88.taxiappkotlin.logic.model.BindModel
|
||||||
|
import cn.trans88.taxiappkotlin.logic.network.ConnManger
|
||||||
|
import com.google.gson.Gson
|
||||||
|
import com.koushikdutta.async.http.body.AsyncHttpRequestBody
|
||||||
|
import com.koushikdutta.async.http.body.JSONObjectBody
|
||||||
|
import com.koushikdutta.async.http.body.StringBody
|
||||||
|
import com.koushikdutta.async.http.server.AsyncHttpServerRequest
|
||||||
|
import com.koushikdutta.async.http.server.AsyncHttpServerResponse
|
||||||
|
import com.koushikdutta.async.http.server.HttpServerRequestCallback
|
||||||
|
import org.json.JSONException
|
||||||
|
import org.json.JSONObject
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Created by Administrator on 2017/3/29 0029.
|
||||||
|
*/
|
||||||
|
class ActionRequest : HttpServerRequestCallback {
|
||||||
|
|
||||||
|
private val TAG = this.javaClass.simpleName
|
||||||
|
|
||||||
|
override fun onRequest(request: AsyncHttpServerRequest, response: AsyncHttpServerResponse) {
|
||||||
|
val gson = Gson()
|
||||||
|
try {
|
||||||
|
val hs = response.headers
|
||||||
|
hs.add("Access-Control-Allow-Origin", "*")
|
||||||
|
hs.add("Access-Control-Allow-Methods", "POST") //让ajax跨域
|
||||||
|
val obj = getJSONFromReq(request)
|
||||||
|
val actionName = obj!!.getString("action")
|
||||||
|
val json = obj.toString()
|
||||||
|
Log.i(TAG, "get POST: $json")
|
||||||
|
if ("InvokeTaxiAppFunction" == actionName) {
|
||||||
|
val bindModel =
|
||||||
|
gson.fromJson(obj.get("jsonCommand").toString(), BindModel::class.java)
|
||||||
|
Log.d(TAG, "listen: httpServer ${bindModel}")
|
||||||
|
if (bindModel?.server != null && bindModel?.server != "") {
|
||||||
|
bindModel.server = bindModel?.server + "/"
|
||||||
|
}
|
||||||
|
if (bindModel?.server != null && bindModel.server != "") {
|
||||||
|
bindModel.tlsServer = bindModel?.server+ "/"
|
||||||
|
}
|
||||||
|
val result = ConnManger.mbindAccount(bindModel);
|
||||||
|
if (result) {
|
||||||
|
val map = HashMap<String, Any>()
|
||||||
|
map["code"] = 200
|
||||||
|
map["message"] = "Success"
|
||||||
|
response.code(200).send("application/json", gson.toJson(map));
|
||||||
|
} else {
|
||||||
|
val map = HashMap<String, Any>()
|
||||||
|
map["code"] = 400
|
||||||
|
map["message"] = "Failed"
|
||||||
|
response.code(400).send("application/json", gson.toJson(map));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} catch (e: JSONException) {
|
||||||
|
throw RuntimeException(e)
|
||||||
|
Log.d(TAG, "onRequest: httpServer e")
|
||||||
|
val map = HashMap<String, Any>()
|
||||||
|
map["code"] = 500
|
||||||
|
map["message"] = gson.toJson(e)
|
||||||
|
response.code(500).send("application/json", gson.toJson(map));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private fun getJSONFromReq(req: AsyncHttpServerRequest): JSONObject? {
|
||||||
|
var obj: JSONObject? = null
|
||||||
|
val body = req.getBody<AsyncHttpRequestBody<*>>()
|
||||||
|
if (body is JSONObjectBody) {
|
||||||
|
obj = body.get()
|
||||||
|
} else if (body is StringBody) {
|
||||||
|
try {
|
||||||
|
obj = JSONObject(body.get())
|
||||||
|
} catch (e: JSONException) {
|
||||||
|
e.printStackTrace()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return obj
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,47 @@
|
||||||
|
package cn.trans88.taxiappkotlin.ledok
|
||||||
|
|
||||||
|
import android.util.Log
|
||||||
|
import cn.trans88.taxiappkotlin.logic.model.BindModel
|
||||||
|
import cn.trans88.taxiappkotlin.logic.network.ConnManger
|
||||||
|
import com.google.gson.Gson
|
||||||
|
import com.koushikdutta.async.http.body.AsyncHttpRequestBody
|
||||||
|
import com.koushikdutta.async.http.body.JSONObjectBody
|
||||||
|
import com.koushikdutta.async.http.body.StringBody
|
||||||
|
import com.koushikdutta.async.http.server.AsyncHttpServer
|
||||||
|
import com.koushikdutta.async.http.server.AsyncHttpServerRequest
|
||||||
|
import org.json.JSONException
|
||||||
|
import org.json.JSONObject
|
||||||
|
|
||||||
|
class HttpServer {
|
||||||
|
|
||||||
|
val TAG = this.javaClass::class.simpleName
|
||||||
|
|
||||||
|
lateinit var server: AsyncHttpServer
|
||||||
|
|
||||||
|
fun listen() {
|
||||||
|
server = AsyncHttpServer()
|
||||||
|
server.get("/") { _, resp ->
|
||||||
|
run {
|
||||||
|
resp.send("Hello")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
server.post("/", ActionRequest())
|
||||||
|
server.listen(3389)
|
||||||
|
Log.d(TAG, "run: httpServer start... listen 3389")
|
||||||
|
}
|
||||||
|
|
||||||
|
private fun getJSONFromReq(req: AsyncHttpServerRequest): JSONObject? {
|
||||||
|
var obj: JSONObject? = null
|
||||||
|
val body = req.getBody<AsyncHttpRequestBody<*>>()
|
||||||
|
if (body is JSONObjectBody) {
|
||||||
|
obj = body.get()
|
||||||
|
} else if (body is StringBody) {
|
||||||
|
try {
|
||||||
|
obj = JSONObject(body.get())
|
||||||
|
} catch (e: JSONException) {
|
||||||
|
e.printStackTrace()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return obj
|
||||||
|
}
|
||||||
|
}
|
|
@ -11,14 +11,14 @@ data class LedOkAdvertise(
|
||||||
|
|
||||||
data class LedOkBindModel(
|
data class LedOkBindModel(
|
||||||
val _type: String,
|
val _type: String,
|
||||||
val bindModel: BindModel
|
val bindModel: cn.trans88.taxiappkotlin.ledok.BindModel
|
||||||
)
|
)
|
||||||
|
|
||||||
data class BingModel(
|
data class BindModel(
|
||||||
val action: String,
|
val action: String,
|
||||||
val accountIdToken: String,
|
val accountIdToken: String,
|
||||||
val server: String,
|
var server: String,
|
||||||
val tlsServer: String
|
var tlsServer: String
|
||||||
)
|
)
|
||||||
|
|
||||||
data class Task(
|
data class Task(
|
||||||
|
|
|
@ -2,33 +2,16 @@ package cn.trans88.taxiappkotlin.ledok
|
||||||
|
|
||||||
|
|
||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
import android.os.Build
|
|
||||||
import android.os.Environment
|
|
||||||
import android.os.FileUtils
|
|
||||||
import android.util.Base64
|
|
||||||
import android.util.Log
|
import android.util.Log
|
||||||
import androidx.annotation.RequiresApi
|
|
||||||
import cn.trans88.taxiappkotlin.R
|
import cn.trans88.taxiappkotlin.R
|
||||||
import cn.trans88.taxiappkotlin.TaxiApp
|
import cn.trans88.taxiappkotlin.TaxiApp
|
||||||
import cn.trans88.taxiappkotlin.TaxiApp.Companion.instance
|
import cn.trans88.taxiappkotlin.TaxiApp.Companion.instance
|
||||||
import cn.trans88.taxiappkotlin.logic.network.JoeyDownloadListener
|
|
||||||
import cn.trans88.taxiappkotlin.play.kuroPlay.IKuroPlay
|
|
||||||
import com.google.gson.Gson
|
import com.google.gson.Gson
|
||||||
import com.liulishuo.filedownloader.BaseDownloadTask
|
|
||||||
import com.liulishuo.filedownloader.FileDownloadListener
|
|
||||||
import com.liulishuo.filedownloader.FileDownloader
|
|
||||||
import org.java_websocket.WebSocket
|
|
||||||
import java.io.BufferedReader
|
import java.io.BufferedReader
|
||||||
import java.io.File
|
import java.io.File
|
||||||
import java.io.FileOutputStream
|
|
||||||
import java.io.FileReader
|
import java.io.FileReader
|
||||||
import java.io.IOException
|
import java.io.IOException
|
||||||
import java.io.OutputStream
|
|
||||||
import java.net.NetworkInterface
|
|
||||||
import java.net.SocketException
|
|
||||||
import java.nio.ByteBuffer
|
|
||||||
import java.util.concurrent.CountDownLatch
|
import java.util.concurrent.CountDownLatch
|
||||||
import kotlin.reflect.jvm.internal.impl.load.kotlin.JvmType
|
|
||||||
|
|
||||||
object LedOkCommands {
|
object LedOkCommands {
|
||||||
|
|
||||||
|
@ -112,105 +95,105 @@ object LedOkCommands {
|
||||||
/**
|
/**
|
||||||
* ledok平台的命令
|
* ledok平台的命令
|
||||||
*/
|
*/
|
||||||
fun executeByLedOk(conn: WebSocket, command: String) {
|
// fun executeByLedOk(conn: WebSocket, command: String) {
|
||||||
Log.d(TAG, "executeByLedOk: command: $command")
|
// Log.d(TAG, "executeByLedOk: command: $command")
|
||||||
try {
|
// try {
|
||||||
val ledOkAdvertise = gson.fromJson(command, LedOkAdvertise::class.java)
|
// val ledOkAdvertise = gson.fromJson(command, LedOkAdvertise::class.java)
|
||||||
Log.d(TAG, "executeByLedOk: baskTask: $ledOkAdvertise")
|
// Log.d(TAG, "executeByLedOk: baskTask: $ledOkAdvertise")
|
||||||
if (ledOkAdvertise.type != null) {
|
// if (ledOkAdvertise.type != null) {
|
||||||
when (ledOkAdvertise.type) {
|
// when (ledOkAdvertise.type) {
|
||||||
"consult" -> consult(conn, ledOkAdvertise)
|
// "consult" -> consult(conn, ledOkAdvertise)
|
||||||
"proStart" -> proStart(conn, ledOkAdvertise)
|
// "proStart" -> proStart(conn, ledOkAdvertise)
|
||||||
"fileStart" -> fileStart(conn, ledOkAdvertise)
|
// "fileStart" -> fileStart(conn, ledOkAdvertise)
|
||||||
"fileEnd" -> fileEnd(conn, ledOkAdvertise)
|
// "fileEnd" -> fileEnd(conn, ledOkAdvertise)
|
||||||
"proEnd" -> proEnd(conn, ledOkAdvertise)
|
// "proEnd" -> proEnd(conn, ledOkAdvertise)
|
||||||
else -> Log.w(TAG, "executeByLedOk: 三乐 未知命令")
|
// else -> Log.w(TAG, "executeByLedOk: 三乐 未知命令")
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
} catch (e: Exception) {
|
// } catch (e: Exception) {
|
||||||
Log.e(TAG, "executeByLedOk: 三乐长连接执行命令出现异常: ${e.printStackTrace()}")
|
// Log.e(TAG, "executeByLedOk: 三乐长连接执行命令出现异常: ${e.printStackTrace()}")
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
fun consult(conn: WebSocket, ledOkAdvertise: LedOkAdvertise) {
|
|
||||||
// if ("program".equals(ledOkAdvertise.proName)) {
|
|
||||||
val items = ledOkAdvertise.task.items
|
|
||||||
val idList: MutableList<String> = mutableListOf()
|
|
||||||
playlist.clear()
|
|
||||||
for (item in items) {
|
|
||||||
val file = File("${downloadDir.absolutePath}/${item.itemId}")
|
|
||||||
if (!file.exists()) {
|
|
||||||
idList.add(item.itemId)
|
|
||||||
}
|
|
||||||
item.path = file.absolutePath
|
|
||||||
playlist.add(item)
|
|
||||||
}
|
|
||||||
val resMap = HashMap<String, Any?>()
|
|
||||||
resMap["type"] = "consult"
|
|
||||||
resMap["idList"] = idList
|
|
||||||
conn.send(gson.toJson(resMap))
|
|
||||||
// }
|
// }
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
fun proStart(conn: WebSocket, ledOkAdvertise: LedOkAdvertise) {
|
// fun consult(conn: WebSocket, ledOkAdvertise: LedOkAdvertise) {
|
||||||
Log.d(TAG, "proStart: ")
|
//// if ("program".equals(ledOkAdvertise.proName)) {
|
||||||
}
|
// val items = ledOkAdvertise.task.items
|
||||||
|
// val idList: MutableList<String> = mutableListOf()
|
||||||
|
// playlist.clear()
|
||||||
fun fileStart(conn: WebSocket, ledOkAdvertise: LedOkAdvertise) {
|
// for (item in items) {
|
||||||
Log.d(TAG, "fileStart: ")
|
// val file = File("${downloadDir.absolutePath}/${item.itemId}")
|
||||||
currentFile = ledOkAdvertise.task.items[0].itemId
|
// if (!file.exists()) {
|
||||||
Log.d(TAG, "fileStart: currentFIle: $currentFile")
|
// idList.add(item.itemId)
|
||||||
}
|
// }
|
||||||
|
// item.path = file.absolutePath
|
||||||
fun fileEnd(conn: WebSocket, ledOkAdvertise: LedOkAdvertise) {
|
// playlist.add(item)
|
||||||
Log.d(TAG, "fileEnd: ")
|
// }
|
||||||
val currentFilePath = File("${downloadDir.absolutePath}/$currentFile")
|
// val resMap = HashMap<String, Any?>()
|
||||||
Log.d(TAG, "fileEnd: currentFilePath: $currentFilePath")
|
// resMap["type"] = "consult"
|
||||||
// if (!currentFilePath.exists()) {
|
// resMap["idList"] = idList
|
||||||
|
// conn.send(gson.toJson(resMap))
|
||||||
|
//// }
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// fun proStart(conn: WebSocket, ledOkAdvertise: LedOkAdvertise) {
|
||||||
|
// Log.d(TAG, "proStart: ")
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
//
|
||||||
|
// fun fileStart(conn: WebSocket, ledOkAdvertise: LedOkAdvertise) {
|
||||||
|
// Log.d(TAG, "fileStart: ")
|
||||||
|
// currentFile = ledOkAdvertise.task.items[0].itemId
|
||||||
|
// Log.d(TAG, "fileStart: currentFIle: $currentFile")
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// fun fileEnd(conn: WebSocket, ledOkAdvertise: LedOkAdvertise) {
|
||||||
|
// Log.d(TAG, "fileEnd: ")
|
||||||
|
// val currentFilePath = File("${downloadDir.absolutePath}/$currentFile")
|
||||||
|
// Log.d(TAG, "fileEnd: currentFilePath: $currentFilePath")
|
||||||
|
//// if (!currentFilePath.exists()) {
|
||||||
|
//// val resMap = HashMap<String, Any?>()
|
||||||
|
//// resMap["type"] = "AckFailed"
|
||||||
|
//// conn.send(gson.toJson(resMap))
|
||||||
|
//// } else {
|
||||||
|
//// currentFile = null
|
||||||
|
//// }
|
||||||
|
// currentFile = null
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// fun proEnd(conn: WebSocket, ledOkAdvertise: LedOkAdvertise) {
|
||||||
|
// Log.d(TAG, "proEnd: ")
|
||||||
|
// playAdvertise(ledOkAdvertise)
|
||||||
|
// val resMap = HashMap<String, Any?>()
|
||||||
|
// resMap["type"] = "AckSuccess"
|
||||||
|
// conn.send(gson.toJson(resMap))
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
//
|
||||||
|
// fun receiveFile(conn: WebSocket, message: ByteBuffer) {
|
||||||
|
// Log.d(TAG, "executeByLedOk: command: ")
|
||||||
|
// try {
|
||||||
|
// val data = ByteArray(message.remaining());
|
||||||
|
// message.get(data)
|
||||||
|
// val downloadDir = File(
|
||||||
|
// TaxiApp.instance().filesDir,
|
||||||
|
// TaxiApp.instance().getString(R.string.dir_program)
|
||||||
|
// )
|
||||||
|
// if (!downloadDir.exists()) {
|
||||||
|
// downloadDir.mkdirs()
|
||||||
|
// }
|
||||||
|
// Log.d(TAG, "prepareAdvertise: downloadDir: " + downloadDir.absolutePath)
|
||||||
|
// val downloadFile = File("${downloadDir.absolutePath}/$currentFile")
|
||||||
|
// FileOutputStream(downloadFile).use { outputStream ->
|
||||||
|
// outputStream.write(data)
|
||||||
|
// }
|
||||||
|
// } catch (e: Exception) {
|
||||||
|
// Log.e(TAG, "executeByLedOk: 三乐长连接执行命令出现异常: ${e.printStackTrace()}")
|
||||||
// val resMap = HashMap<String, Any?>()
|
// val resMap = HashMap<String, Any?>()
|
||||||
// resMap["type"] = "AckFailed"
|
// resMap["type"] = "AckFailed"
|
||||||
// conn.send(gson.toJson(resMap))
|
// conn.send(gson.toJson(resMap))
|
||||||
// } else {
|
|
||||||
// currentFile = null
|
|
||||||
// }
|
// }
|
||||||
currentFile = null
|
// }
|
||||||
}
|
//
|
||||||
|
|
||||||
fun proEnd(conn: WebSocket, ledOkAdvertise: LedOkAdvertise) {
|
|
||||||
Log.d(TAG, "proEnd: ")
|
|
||||||
playAdvertise(ledOkAdvertise)
|
|
||||||
val resMap = HashMap<String, Any?>()
|
|
||||||
resMap["type"] = "AckSuccess"
|
|
||||||
conn.send(gson.toJson(resMap))
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
fun receiveFile(conn: WebSocket, message: ByteBuffer) {
|
|
||||||
Log.d(TAG, "executeByLedOk: command: ")
|
|
||||||
try {
|
|
||||||
val data = ByteArray(message.remaining());
|
|
||||||
message.get(data)
|
|
||||||
val downloadDir = File(
|
|
||||||
TaxiApp.instance().filesDir,
|
|
||||||
TaxiApp.instance().getString(R.string.dir_program)
|
|
||||||
)
|
|
||||||
if (!downloadDir.exists()) {
|
|
||||||
downloadDir.mkdirs()
|
|
||||||
}
|
|
||||||
Log.d(TAG, "prepareAdvertise: downloadDir: " + downloadDir.absolutePath)
|
|
||||||
val downloadFile = File("${downloadDir.absolutePath}/$currentFile")
|
|
||||||
FileOutputStream(downloadFile).use { outputStream ->
|
|
||||||
outputStream.write(data)
|
|
||||||
}
|
|
||||||
} catch (e: Exception) {
|
|
||||||
Log.e(TAG, "executeByLedOk: 三乐长连接执行命令出现异常: ${e.printStackTrace()}")
|
|
||||||
val resMap = HashMap<String, Any?>()
|
|
||||||
resMap["type"] = "AckFailed"
|
|
||||||
conn.send(gson.toJson(resMap))
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 播放广告
|
* 播放广告
|
||||||
|
|
|
@ -1,16 +1,10 @@
|
||||||
package cn.trans88.taxiappkotlin.ledok
|
package cn.trans88.taxiappkotlin.ledok
|
||||||
|
|
||||||
import android.content.Context
|
import android.content.Context
|
||||||
import android.content.Intent
|
|
||||||
import android.util.Log
|
import android.util.Log
|
||||||
import cn.trans88.taxiappkotlin.R
|
import cn.trans88.taxiappkotlin.R
|
||||||
import cn.trans88.taxiappkotlin.TaxiApp
|
import cn.trans88.taxiappkotlin.TaxiApp
|
||||||
import cn.trans88.taxiappkotlin.TaxiApp.Companion.instance
|
|
||||||
import cn.trans88.taxiappkotlin.ledok.LedOkCommands.PLAYLIST
|
|
||||||
import cn.trans88.taxiappkotlin.ledok.LedOkCommands.playlist
|
|
||||||
import cn.trans88.taxiappkotlin.logic.model.BindModel
|
|
||||||
import cn.trans88.taxiappkotlin.logic.network.ConnManger
|
import cn.trans88.taxiappkotlin.logic.network.ConnManger
|
||||||
import com.google.gson.Gson
|
|
||||||
import com.google.gson.GsonBuilder
|
import com.google.gson.GsonBuilder
|
||||||
import com.trs88.kurolibrary.log.KuroLog
|
import com.trs88.kurolibrary.log.KuroLog
|
||||||
import java.io.BufferedReader
|
import java.io.BufferedReader
|
||||||
|
@ -79,7 +73,7 @@ class TaskSocketServer(private val context: Context, port: Int) {
|
||||||
try {
|
try {
|
||||||
//只保持一个链接,新的进来就把老的断开
|
//只保持一个链接,新的进来就把老的断开
|
||||||
val socket = soc!!.accept()
|
val socket = soc!!.accept()
|
||||||
socket.soTimeout = 5000
|
socket.soTimeout = 5000 * 5
|
||||||
if (client != null) {
|
if (client != null) {
|
||||||
client!!.close()
|
client!!.close()
|
||||||
}
|
}
|
||||||
|
@ -454,16 +448,20 @@ class TaskSocketServer(private val context: Context, port: Int) {
|
||||||
dos = null
|
dos = null
|
||||||
file = null
|
file = null
|
||||||
//TaskProcessor.getInstance(context).updateSourceFile(new SourceFile(cmd.id, servant.getCanUsedPath(context), FileState.Is_Downloaded));
|
//TaskProcessor.getInstance(context).updateSourceFile(new SourceFile(cmd.id, servant.getCanUsedPath(context), FileState.Is_Downloaded));
|
||||||
} else if (cmd._type == "BindAccount") {
|
}
|
||||||
Log.d(TAG, "processPackage: BindAccount")
|
// else if (cmd._type == "BindAccount") {
|
||||||
// val bindModel = cmd.bindModel
|
// Log.d(TAG, "processPackage: BindAccount")
|
||||||
// if (bindModel?.server != null && bindModel?.server!=""){
|
// val server = cmd.server!!
|
||||||
// bindModel?.server = bindModel?.server+"/"
|
// val tlsServer = cmd.tlsServer!!
|
||||||
|
// val accountIdToken = cmd.accountIdToken!!
|
||||||
|
// val bindModel = BindModel("", accountIdToken, server, tlsServer)!!
|
||||||
|
// if (bindModel?.server != null && bindModel?.server != "") {
|
||||||
|
// bindModel?.server = bindModel?.server + "/"
|
||||||
// }
|
// }
|
||||||
// if (bindModel?.server != null && bindModel.server!=""){
|
// if (bindModel?.server != null && bindModel.server != "") {
|
||||||
// bindModel.tlsServer = bindModel.tlsServer+"/"
|
// bindModel.tlsServer = bindModel.tlsServer + "/"
|
||||||
// }
|
// }
|
||||||
// val mbindAccount = bindModel?.let { ConnManger.mbindAccount(it) }
|
// val mbindAccount = ConnManger.mbindAccount(bindModel)
|
||||||
// if (mbindAccount == true) {
|
// if (mbindAccount == true) {
|
||||||
// val ack = "{\"_type\":\"AckSuccess\"}"
|
// val ack = "{\"_type\":\"AckSuccess\"}"
|
||||||
// sendDataToClient(ack)
|
// sendDataToClient(ack)
|
||||||
|
@ -472,7 +470,7 @@ class TaskSocketServer(private val context: Context, port: Int) {
|
||||||
// sendDataToClient(ack)
|
// sendDataToClient(ack)
|
||||||
// }
|
// }
|
||||||
// client?.close()
|
// client?.close()
|
||||||
}
|
// }
|
||||||
} catch (e: Exception) {
|
} catch (e: Exception) {
|
||||||
Log.i(TAG, "error:" + e.message)
|
Log.i(TAG, "error:" + e.message)
|
||||||
e.printStackTrace()
|
e.printStackTrace()
|
||||||
|
@ -554,7 +552,11 @@ class TaskSocketServer(private val context: Context, port: Int) {
|
||||||
var _id: String? = null
|
var _id: String? = null
|
||||||
var idList: List<String>? = null
|
var idList: List<String>? = null
|
||||||
var task: Task? = null
|
var task: Task? = null
|
||||||
var bindModel: BindModel? = null
|
|
||||||
|
// var bindModel: cn.trans88.taxiappkotlin.ledok.BindModel? = null
|
||||||
|
var accountIdToken: String? = null
|
||||||
|
var server: String? = null
|
||||||
|
var tlsServer: String? = null
|
||||||
}
|
}
|
||||||
|
|
||||||
var idList1: List<String>? = null
|
var idList1: List<String>? = null
|
||||||
|
@ -568,8 +570,8 @@ class TaskSocketServer(private val context: Context, port: Int) {
|
||||||
try {
|
try {
|
||||||
// if (soc == null) {
|
// if (soc == null) {
|
||||||
// destroy()
|
// destroy()
|
||||||
soc = ServerSocket(port)
|
soc = ServerSocket(port)
|
||||||
recreate = false
|
recreate = false
|
||||||
// }
|
// }
|
||||||
Log.i(TAG, "create...... ")
|
Log.i(TAG, "create...... ")
|
||||||
} catch (e: Exception) {
|
} catch (e: Exception) {
|
||||||
|
|
|
@ -15,7 +15,6 @@ import cn.trans88.taxiappkotlin.ext.loge
|
||||||
//import cn.trans88.taxiappkotlin.ledok.WsManagerLedOk
|
//import cn.trans88.taxiappkotlin.ledok.WsManagerLedOk
|
||||||
import cn.trans88.taxiappkotlin.logic.Repository
|
import cn.trans88.taxiappkotlin.logic.Repository
|
||||||
import cn.trans88.taxiappkotlin.logic.Repository.taxiApp
|
import cn.trans88.taxiappkotlin.logic.Repository.taxiApp
|
||||||
import cn.trans88.taxiappkotlin.logic.dao.AdvertiseDao
|
|
||||||
import cn.trans88.taxiappkotlin.logic.dao.DaoUtil
|
import cn.trans88.taxiappkotlin.logic.dao.DaoUtil
|
||||||
import cn.trans88.taxiappkotlin.logic.dao.DaoUtil.getAdvertise
|
import cn.trans88.taxiappkotlin.logic.dao.DaoUtil.getAdvertise
|
||||||
import cn.trans88.taxiappkotlin.logic.dao.DaoUtil.getFirstPlayDao
|
import cn.trans88.taxiappkotlin.logic.dao.DaoUtil.getFirstPlayDao
|
||||||
|
@ -26,7 +25,6 @@ import cn.trans88.taxiappkotlin.net.OkHttpTool
|
||||||
import cn.trans88.taxiappkotlin.play.RefreshPlayer
|
import cn.trans88.taxiappkotlin.play.RefreshPlayer
|
||||||
import cn.trans88.taxiappkotlin.ui.play.PlayActivity
|
import cn.trans88.taxiappkotlin.ui.play.PlayActivity
|
||||||
import cn.trans88.taxiappkotlin.ui.play.PlayViewModel
|
import cn.trans88.taxiappkotlin.ui.play.PlayViewModel
|
||||||
import cn.trans88.taxiappkotlin.util.DateUtil.daysBetweenTimestamps
|
|
||||||
import cn.trans88.taxiappkotlin.util.KuroTimer
|
import cn.trans88.taxiappkotlin.util.KuroTimer
|
||||||
import cn.trans88.taxiappkotlin.util.YoungUtil
|
import cn.trans88.taxiappkotlin.util.YoungUtil
|
||||||
import cn.trans88.taxiappkotlin.util.checkAppToken
|
import cn.trans88.taxiappkotlin.util.checkAppToken
|
||||||
|
@ -46,7 +44,6 @@ import okhttp3.*
|
||||||
import okhttp3.MediaType.Companion.toMediaTypeOrNull
|
import okhttp3.MediaType.Companion.toMediaTypeOrNull
|
||||||
import java.io.File
|
import java.io.File
|
||||||
import java.io.IOException
|
import java.io.IOException
|
||||||
import java.lang.ref.WeakReference
|
|
||||||
import java.util.*
|
import java.util.*
|
||||||
import java.util.concurrent.TimeUnit
|
import java.util.concurrent.TimeUnit
|
||||||
import kotlin.concurrent.thread
|
import kotlin.concurrent.thread
|
||||||
|
|
Loading…
Reference in New Issue
Block a user