Skip to content

Commit 0e820d3

Browse files
vishalbluepixelMathJud
authored andcommitted
Change Req and Res format and proto file
1 parent 38b28bb commit 0e820d3

File tree

6 files changed

+291
-260
lines changed

6 files changed

+291
-260
lines changed

android/app/src/main/java/net/qaul/qaul/MainActivity.kt

Lines changed: 36 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ import android.content.Intent
77
import android.content.pm.PackageManager
88
import android.os.Build
99
import android.os.Bundle
10-
import android.os.Message
1110
import android.view.Menu
1211
import android.view.MenuItem
1312
import android.widget.Toast
@@ -44,7 +43,7 @@ class MainActivity : AppCompatActivity(), BleRequestCallback {
4443
setContentView(binding.root)
4544
qaulId = getDeviceName()
4645
if (qaulId.length > 18) {
47-
qaulId = "HelloThisIsAQaulId"
46+
qaulId = qaulId.substring(0,17)
4847
}
4948
setSupportActionBar(binding.toolbar)
5049
bleWrapperClass = BleWrapperClass(context = this)
@@ -72,7 +71,7 @@ class MainActivity : AppCompatActivity(), BleRequestCallback {
7271
private fun sendInfoRequest() {
7372
val bleReq: BleOuterClass.Ble.Builder = BleOuterClass.Ble.newBuilder()
7473
bleReq.infoRequest = BleOuterClass.BleInfoRequest.getDefaultInstance()
75-
bleWrapperClass.receiveRequest(bleReq = bleReq.build(), callback = this)
74+
bleWrapperClass.receiveRequest(data = bleReq.build().toByteString(), callback = this)
7675
}
7776

7877
/**
@@ -82,15 +81,15 @@ class MainActivity : AppCompatActivity(), BleRequestCallback {
8281
private fun sendStartRequest() {
8382
val bleReq: BleOuterClass.Ble.Builder = BleOuterClass.Ble.newBuilder()
8483
val startRequest = BleOuterClass.BleStartRequest.newBuilder()
85-
val qaulid = qaulId.toByteArray(Charset.defaultCharset())
84+
val qaulid = qaulId.toByteArray(Charset.forName("UTF-8"))
8685
// val qaulid = byteArrayOf(
8786
// 0x48,0x65,0x6c,0x6c,0x6f,0x41,0x6a,0x61,0x79,0x48,0x6f,0x77,0x41,0x72,0x65,0x59,0x6f,0x75,0x48,0x65
8887
// )
8988
AppLog.e(TAG, "qaulid : " + qaulid.size)
9089
startRequest.qaulId = ByteString.copyFrom(qaulid)
91-
startRequest.mode = BleOuterClass.BleMode.low_latency
90+
startRequest.powerSetting = BleOuterClass.BlePowerSetting.low_latency
9291
bleReq.startRequest = startRequest.build()
93-
bleWrapperClass.receiveRequest(bleReq = bleReq.build(), callback = this)
92+
bleWrapperClass.receiveRequest(data = bleReq.build().toByteString(), callback = this)
9493
}
9594

9695
/**
@@ -99,7 +98,7 @@ class MainActivity : AppCompatActivity(), BleRequestCallback {
9998
private fun sendStopRequest() {
10099
val bleReq: BleOuterClass.Ble.Builder = BleOuterClass.Ble.newBuilder()
101100
bleReq.stopRequest = BleOuterClass.BleStopRequest.getDefaultInstance()
102-
bleWrapperClass.receiveRequest(bleReq = bleReq.build(), callback = this)
101+
bleWrapperClass.receiveRequest(data = bleReq.build().toByteString(), callback = this)
103102
}
104103

105104
private fun validateData() {
@@ -132,12 +131,14 @@ class MainActivity : AppCompatActivity(), BleRequestCallback {
132131
private fun sendData(qaulId: String, message: String) {
133132
val bleReq: BleOuterClass.Ble.Builder = BleOuterClass.Ble.newBuilder()
134133
val directSend = BleOuterClass.BleDirectSend.newBuilder()
135-
directSend.data = ByteString.copyFrom(message.toByteArray(Charset.defaultCharset()))
136-
directSend.to = ByteString.copyFrom(qaulId.toByteArray(Charset.defaultCharset()))
137-
directSend.qaulId = ByteString.copyFrom(this.qaulId, Charset.defaultCharset())
138-
directSend.id = System.currentTimeMillis().toString()
134+
directSend.data = ByteString.copyFrom(message.toByteArray(Charset.forName("UTF-8")))
135+
directSend.receiverId = ByteString.copyFrom(qaulId.toByteArray(Charset.forName("UTF-8")))
136+
directSend.senderId = ByteString.copyFrom(this.qaulId, Charset.defaultCharset())
137+
directSend.messageId = ByteString.copyFrom(
138+
System.currentTimeMillis().toString().toByteArray(Charset.forName("UTF-8"))
139+
)
139140
bleReq.directSend = directSend.build()
140-
bleWrapperClass.receiveRequest(bleReq = bleReq.build(), callback = this)
141+
bleWrapperClass.receiveRequest(data = bleReq.build().toByteString(), callback = this)
141142
runOnUiThread {
142143
Toast.makeText(this, "Connecting...", Toast.LENGTH_SHORT).show()
143144
}
@@ -220,7 +221,8 @@ class MainActivity : AppCompatActivity(), BleRequestCallback {
220221
/**
221222
* This Method Will Be Called When BLEModule Send Response To BLERequests Sent
222223
*/
223-
override fun bleResponse(ble: BleOuterClass.Ble) {
224+
override fun bleResponse(data: ByteString) {
225+
val ble: BleOuterClass.Ble = BleOuterClass.Ble.parseFrom(data)
224226
if (ble.isInitialized) {
225227
when (ble.messageCase) {
226228
BleOuterClass.Ble.MessageCase.INFO_RESPONSE -> {
@@ -250,35 +252,32 @@ class MainActivity : AppCompatActivity(), BleRequestCallback {
250252
Toast.LENGTH_SHORT
251253
).show()
252254
}
253-
BleOuterClass.Ble.MessageCase.SCAN_RESULT -> {
254-
val scanResult: BleOuterClass.BleScanResult = ble.scanResult
255-
AppLog.e("scanResult: ", Gson().toJson(scanResult) + " " + String(scanResult.qaulId.toByteArray()))
256-
if (scanResult.isInTheRange) {
257-
runOnUiThread {
258-
// Toast.makeText(
259-
// this,
260-
// "Device found: ${scanResult.name} : ${scanResult.mac}",
261-
// Toast.LENGTH_SHORT
262-
// ).show()
263-
if (!scanResult.qaulId.isEmpty) {
264-
binding.etQaulId.setText(String(scanResult.qaulId.toByteArray()))
265-
}
266-
}
267-
} else {
268-
runOnUiThread {
269-
// Toast.makeText(
270-
// this,
271-
// "Device is out of range: ${scanResult.name} : ${scanResult.mac}",
272-
// Toast.LENGTH_SHORT
273-
// ).show()
255+
BleOuterClass.Ble.MessageCase.DEVICE_DISCOVERED -> {
256+
val scanResult: BleOuterClass.BleDeviceDiscovered = ble.deviceDiscovered
257+
AppLog.e(
258+
"deviceDiscovered: ",
259+
Gson().toJson(scanResult) + " " + String(scanResult.qaulId.toByteArray())
260+
)
261+
262+
runOnUiThread {
263+
if (!scanResult.qaulId.isEmpty) {
264+
binding.etQaulId.setText(String(scanResult.qaulId.toByteArray()))
274265
}
275266
}
267+
268+
}
269+
BleOuterClass.Ble.MessageCase.DEVICE_UNAVAILABLE -> {
270+
val scanResult: BleOuterClass.BleDeviceUnavailable = ble.deviceUnavailable
271+
AppLog.e(
272+
"deviceUnavailable: ",
273+
Gson().toJson(scanResult) + " " + String(scanResult.qaulId.toByteArray())
274+
)
276275
}
277276
BleOuterClass.Ble.MessageCase.DIRECT_RECEIVED -> {
278277
val directReceived: BleOuterClass.BleDirectReceived = ble.directReceived
279278
AppLog.e("directReceived: ", Gson().toJson(directReceived))
280279
val message: String = directReceived.data.toString(Charset.defaultCharset())
281-
val qaulId: String = directReceived.qaulId.toString(Charset.defaultCharset())
280+
val qaulId: String = directReceived.from.toString(Charset.defaultCharset())
282281
runOnUiThread {
283282
binding.tvMessage.text = message
284283
binding.etQaulId.setText(qaulId)
@@ -288,7 +287,8 @@ class MainActivity : AppCompatActivity(), BleRequestCallback {
288287
val directSendResult: BleOuterClass.BleDirectSendResult = ble.directSendResult
289288
AppLog.e("directSendResult: ", Gson().toJson(directSendResult))
290289
runOnUiThread {
291-
Toast.makeText(this, directSendResult.errorMessage, Toast.LENGTH_SHORT).show()
290+
Toast.makeText(this, directSendResult.errorMessage, Toast.LENGTH_SHORT)
291+
.show()
292292
}
293293
}
294294
else -> {

android/blemodule/src/main/AndroidManifest.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
<uses-permission android:name="android.permission.INTERNET" />
1010
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
1111
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
12+
1213
<application
1314
android:allowBackup="true"
1415
android:icon="@mipmap/ic_launcher"

android/blemodule/src/main/java/net/qaul/ble/callback/BleRequestCallback.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@
33

44
package net.qaul.ble.callback
55

6-
import qaul.sys.ble.BleOuterClass
6+
import com.google.protobuf.ByteString
77

88
interface BleRequestCallback {
9-
fun bleResponse(ble: BleOuterClass.Ble)
9+
fun bleResponse(data: ByteString)
1010
}

0 commit comments

Comments
 (0)