在引入socket的outputStream报错:TypeError: Cannot read property 'TYPE' of null
var Socket = plus.android.importClass("java.net.Socket")
var InetSocketAddress = plus.android.importClass("java.net.InetSocketAddress")
//解决高低版本兼容
var StrictMode = plus.android.importClass("android.os.StrictMode")
var Build = plus.android.importClass("android.os.Build")
if (Build.VERSION.SDK_INT > 9) {
var policy = new StrictMode.ThreadPolicy.Builder().permitAll().build()
StrictMode.setThreadPolicy(policy)
}
try {
// socket = new Socket(ip, 9100);
var socket = new Socket()
socket.connect(new InetSocketAddress(ip, 9100), 1500) //设置连接请求超时时间1.5秒
socket.setSoTimeout(5000)
socket.setKeepAlive(true)
var outputStream = socket.getOutputStream()
console.log("outputStream: ", outputStream)
plus.android.importClass(outputStream)
var bytes = plus.android.invoke(str, "getBytes", "gbk")
//var bytes = plus.android.invoke(str, 'getBytes', 'UTF-8');
outputStream.write(bytes)
outputStream.flush()
socket.shutdownOutput()
return true
} catch (e) {
console.log(e)
uni.showToast({
title: "WIFI打印机连接超时,请确定是否有正确设置打印机的IP地址或者确认打印机是否有开机!",
icon: 'none'
})
return false
//TODO handle the exception
} finally {
uni.hideLoading()
}
0 个回复