Ver código fonte

update MainActivity

master
陈福行 3 anos atrás
pai
commit
8abc287edc

+ 62
- 96
app/src/main/java/aicare/net/cn/sdk/tmpsrepositoryandroid/MainActivity.java Ver arquivo

@@ -28,14 +28,12 @@ import aicare.net.cn.sdk.tmpsrepositoryandroid.utils.Configs;
import aicare.net.cn.sdk.tmpsrepositoryandroid.utils.L;
import aicare.net.cn.sdk.tmpsrepositoryandroid.utils.ParseData;
import aicare.net.cn.sdk.tmpsrepositoryandroid.utils.SPUtils;
import aicare.net.cn.sdk.tmpsrepositoryandroid.utils.T;
import aicare.net.cn.sdk.tmpsrepositoryandroid.views.SetIdDialog;
import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity implements View.OnClickListener,
TpmsScan.TpmsScanListener, OnIdSetListener {
public class MainActivity extends AppCompatActivity implements View.OnClickListener, TpmsScan.TpmsScanListener, OnIdSetListener {

private Button btn_get_info, btn_clear_log, btn_stop_scan;
private Button btn_get_info, btn_clear_log, btn_stop_scan;
private TextView tv_left_front, tv_right_front, tv_left_rear, tv_right_rear;
private ListView lv_show_log;
private LinearLayout ll_set_id;
@@ -80,7 +78,7 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe

mTpmsScan = new TpmsScan(MainActivity.this);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
requestPermissions(LOCATION_PERMISSION,1);
requestPermissions(LOCATION_PERMISSION, 1);
}

}
@@ -118,26 +116,22 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe
if (TextUtils.isEmpty(leftFront)) {
tv_left_front.setText(R.string.please_set_id);
} else {
tv_left_front.setText(String
.format(getResources().getString(R.string.left_front_id), leftFront));
tv_left_front.setText(getString(R.string.left_front_hint) + ":" + leftFront);
}
if (TextUtils.isEmpty(rightFront)) {
tv_right_front.setText(R.string.please_set_id);
} else {
tv_right_front.setText(String
.format(getResources().getString(R.string.right_front_id), rightFront));
tv_right_front.setText(getString(R.string.left_rear_hint) + ":" + rightFront);
}
if (TextUtils.isEmpty(leftRear)) {
tv_left_rear.setText(R.string.please_set_id);
} else {
tv_left_rear.setText(String
.format(getResources().getString(R.string.left_rear_id), leftRear));
tv_left_rear.setText(getString(R.string.right_front_hint) + ":" + leftRear);
}
if (TextUtils.isEmpty(rightRear)) {
tv_right_rear.setText(R.string.please_set_id);
} else {
tv_right_rear.setText(String
.format(getResources().getString(R.string.right_rear_id), rightRear));
tv_right_rear.setText(getString(R.string.right_rear_hint) + ":" + rightRear);
}
}

@@ -165,8 +159,6 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe
}




@Override
public void onClick(View v) {
switch (v.getId()) {
@@ -177,7 +169,7 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe
break;
case R.id.btn_get_info:
if (deviceIdMap.isEmpty() || noId()) {
T.showLong(this, R.string.please_set_id);
mTpmsScan.startScan();
} else {
if (mTpmsScan != null && deviceIdMap != null) {
mDeviceIdS = null;
@@ -200,86 +192,62 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe


@Override
public void onGetData(byte[] bytes,String mac, String deviceId, int rssi, float pressure,int pressureUnit, float battery,
int temp,int tempUnit, int status, float mcuVersion, int year, int month, int day,
float bleVersion) {

if (deviceIdMap != null) {
for (Config.DevicePosition devicePosition : deviceIdMap.keySet()) {
if (TextUtils.equals(deviceId, deviceIdMap.get(devicePosition))) {
Config.DeviceState deviceState = Config.DeviceState.NORMAL;
switch (status) {
case 1:
deviceState = Config.DeviceState.LEAK;
break;
case 2:
deviceState = Config.DeviceState.INFLATE;
break;
case 3:
deviceState = Config.DeviceState.START;
break;
case 4:
deviceState = Config.DeviceState.POWER_ON;
break;
case 5:
deviceState = Config.DeviceState.WEAK_UP;
break;
}

StringBuffer buffer = new StringBuffer();
buffer.append("设备位置:");
buffer.append(getPosition(devicePosition));
buffer.append(", 设备id:");
buffer.append(deviceId);
buffer.append(", 电压:");
buffer.append(battery);
buffer.append(", 气压:");
buffer.append(pressure);
buffer.append(", 温度:");
buffer.append(temp);
buffer.append(", 状态:");
buffer.append(getState(deviceState));
buffer.append(", 时间:");
buffer.append(ParseData.getTime());
sendMsg(buffer.toString());
return;
}
public void onGetData(byte[] bytes, String mac, String deviceId, int rssi, float pressure, int pressureUnit, float battery, int temp, int tempUnit, int status, float mcuVersion, int year,
int month, int day, float bleVersion) {
StringBuffer buffer = new StringBuffer();
for (Config.DevicePosition devicePosition : deviceIdMap.keySet()) {
if (TextUtils.equals(deviceId, deviceIdMap.get(devicePosition))) {
buffer.append("Location:");
buffer.append(getPosition(devicePosition));
buffer.append(", ");
}
}

}


public void onStopScan() {
sendMsg("停止扫描");
}

public void onBluetoothStateOn() {
T.showLong(this, "蓝牙已开启!");
}

public void onBluetoothStateOff() {
T.showLong(this, "蓝牙已关闭!");
}
Config.DeviceState deviceState = Config.DeviceState.NORMAL;
switch (status) {
case 1:
deviceState = Config.DeviceState.LEAK;
break;
case 2:
deviceState = Config.DeviceState.INFLATE;
break;
case 3:
deviceState = Config.DeviceState.START;
break;
case 4:
deviceState = Config.DeviceState.POWER_ON;
break;
case 5:
deviceState = Config.DeviceState.WEAK_UP;
break;
}
buffer.append("deviceId:");
buffer.append(deviceId);
buffer.append(", battery:");
buffer.append(battery);
buffer.append(", pressure:");
buffer.append(pressure);
buffer.append(", Temp:");
buffer.append(temp);
buffer.append(", status:");
buffer.append(getState(deviceState));
buffer.append(", time:");
buffer.append(ParseData.getTime());
sendMsg(buffer.toString());

public void onBluetoothTurningOn() {
T.showLong(this, "蓝牙开启中!");
}

public void onBluetoothTurningOff() {
T.showLong(this, "蓝牙关闭中!");
}

private String getPosition(Config.DevicePosition devicePosition) {
switch (devicePosition) {
case LEFT_FRONT:
return "左前";
return getString(R.string.left_front_hint);
case RIGHT_FRONT:
return "右前";
return getString(R.string.left_rear_hint);
case LEFT_REAR:
return "左后";
return getString(R.string.right_front_hint);
case RIGHT_REAR:
return "右后";
return getString(R.string.right_rear_hint);
default:
return "";
}
@@ -289,23 +257,23 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe
private String getState(Config.DeviceState deviceState) {
switch (deviceState) {
case NORMAL:
return "正常";
return getString(R.string.normal);
case LEAK:
return "漏气";
return getString(R.string.leak);
case INFLATE:
return "充气";
return getString(R.string.inflatable);
case START:
return "启动";
return getString(R.string.start);
case POWER_ON:
return "上电";
return getString(R.string.power_on);
case WEAK_UP:
return "唤醒";
return getString(R.string.wake);
case TEMP_ERROR:
return "温度异常";
return getString(R.string.temp_err);
case BATTERY_ERROR:
return "电量异常";
return getString(R.string.battery_err);
case UNKNOWN:
return "未知";
return getString(R.string.unknown);
default:
return "";
}
@@ -334,10 +302,8 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe
*/
private boolean noId() {
if (deviceIdMap != null && !deviceIdMap.isEmpty()) {
if (TextUtils.isEmpty(deviceIdMap.get(Config.DevicePosition.LEFT_FRONT)) && TextUtils
.isEmpty(deviceIdMap.get(Config.DevicePosition.LEFT_REAR)) && TextUtils
.isEmpty(deviceIdMap.get(Config.DevicePosition.RIGHT_FRONT)) && TextUtils
.isEmpty(deviceIdMap.get(Config.DevicePosition.RIGHT_REAR))) {//当所有ID都为空时,停止扫描
if (TextUtils.isEmpty(deviceIdMap.get(Config.DevicePosition.LEFT_FRONT)) && TextUtils.isEmpty(deviceIdMap.get(Config.DevicePosition.LEFT_REAR)) && TextUtils
.isEmpty(deviceIdMap.get(Config.DevicePosition.RIGHT_FRONT)) && TextUtils.isEmpty(deviceIdMap.get(Config.DevicePosition.RIGHT_REAR))) {
return true;
}
}

+ 11
- 16
app/src/main/res/layout/activity_main.xml Ver arquivo

@@ -1,14 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin">
android:paddingBottom="@dimen/activity_vertical_margin">

<LinearLayout
android:layout_width="match_parent"
@@ -21,7 +20,7 @@
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="扫描(获取胎压信息)"/>
android:text="扫描(获取胎压信息)" />


<Button
@@ -29,14 +28,14 @@
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="清空Log"/>
android:text="清空Log" />

<Button
android:id="@+id/btn_stop_scan"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="停止扫描"/>
android:text="停止扫描" />
</LinearLayout>

<LinearLayout
@@ -54,13 +53,11 @@

<TextView
android:id="@+id/tv_left_front"
style="@style/TVTyreId"
android:text="@string/left_front_id"/>
style="@style/TVTyreId" />

<TextView
android:id="@+id/tv_right_front"
style="@style/TVTyreId"
android:text="@string/right_front_id"/>
style="@style/TVTyreId" />
</LinearLayout>

<LinearLayout
@@ -70,18 +67,16 @@

<TextView
android:id="@+id/tv_left_rear"
style="@style/TVTyreId"
android:text="@string/left_rear_id"/>
style="@style/TVTyreId" />

<TextView
android:id="@+id/tv_right_rear"
style="@style/TVTyreId"
android:text="@string/right_rear_id"/>
style="@style/TVTyreId" />
</LinearLayout>
</LinearLayout>

<ListView
android:id="@+id/lv_show_log"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
android:layout_height="match_parent" />
</LinearLayout>

+ 29
- 0
app/src/main/res/values-zh/strings.xml Ver arquivo

@@ -0,0 +1,29 @@
<resources>
<string name="app_name">TmpsDemoAndroid</string>


<string name="please_set_id">请设置ID</string>
<string name="left_front_hint">左前</string>
<string name="left_rear_hint">左后</string>
<string name="right_front_hint">右前</string>
<string name="right_rear_hint">右后</string>

<string name="left_front_error">左前ID错误</string>
<string name="left_rear_error">左后ID错误</string>
<string name="right_front_error">右前ID错误</string>
<string name="right_rear_error">右后ID错误</string>
<string name="set_id_success">设置成功</string>
<string name="query">确定</string>
<string name="cancel">退出</string>


<string name="normal">正常</string>
<string name="leak">漏气</string>
<string name="inflatable">充气</string>
<string name="start">启动</string>
<string name="power_on">上电</string>
<string name="wake">唤醒</string>
<string name="temp_err">温度异常</string>
<string name="battery_err">电量异常</string>
<string name="unknown">未知</string>
</resources>

+ 22
- 16
app/src/main/res/values/strings.xml Ver arquivo

@@ -1,23 +1,29 @@
<resources>
<string name="app_name">TmpsDemoAndroid</string>

<string name="left_front_id">左前:%1$s</string>
<string name="right_front_id">右前:%1$s</string>
<string name="left_rear_id">左后:%1$s</string>
<string name="right_rear_id">右后:%1$s</string>
<string name="please_set_id">请设置ID</string>

<string name="left_front_hint">左前:</string>
<string name="left_rear_hint">左后:</string>
<string name="right_front_hint">右前:</string>
<string name="right_rear_hint">右后:</string>
<string name="please_set_id">Please set ID</string>
<string name="left_front_hint">left Front</string>
<string name="left_rear_hint">left Rear</string>
<string name="right_front_hint">right Front</string>
<string name="right_rear_hint">right Rear</string>

<string name="left_front_error">左前ID错误</string>
<string name="left_rear_error">左后ID错误</string>
<string name="right_front_error">右前ID错误</string>
<string name="right_rear_error">右后ID错误</string>
<string name="set_id_success">设置成功</string>
<string name="query">确定</string>
<string name="cancel">退出</string>
<string name="left_front_error">left Front ID error</string>
<string name="left_rear_error">left Rear ID error</string>
<string name="right_front_error">right Front ID error</string>
<string name="right_rear_error">right Rear ID error</string>
<string name="set_id_success">set successfully</string>
<string name="query">OK</string>
<string name="cancel">quit</string>

<string name="normal">Normal</string>
<string name="leak">Leak</string>
<string name="inflatable">Inflatable</string>
<string name="start">Start</string>
<string name="power_on">Power-on</string>
<string name="wake">Wake</string>
<string name="temp_err">Abnormal temperature</string>
<string name="battery_err">Abnormal battery</string>
<string name="unknown">unknown</string>

</resources>

Carregando…
Cancelar
Salvar