Commit 42d06081 by onuma

Task #39006 【@Form】(要望)中心温度計 放射温度計の連続計測対応 onDestroy以外はBluetoothを切断しないに修正

parent f51e9edf
...@@ -5,6 +5,7 @@ import android.app.PendingIntent; ...@@ -5,6 +5,7 @@ import android.app.PendingIntent;
import android.bluetooth.BluetoothAdapter; import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothDevice; import android.bluetooth.BluetoothDevice;
import android.bluetooth.BluetoothSocket; import android.bluetooth.BluetoothSocket;
import android.content.Context;
import android.content.DialogInterface; import android.content.DialogInterface;
import android.content.Intent; import android.content.Intent;
import android.content.IntentFilter; import android.content.IntentFilter;
...@@ -123,6 +124,8 @@ public class ABVCheckContentViewActivity extends ABVContentViewActivity { ...@@ -123,6 +124,8 @@ public class ABVCheckContentViewActivity extends ABVContentViewActivity {
// SPP通信機器のデバイスID(t_spp_device) // SPP通信機器のデバイスID(t_spp_device)
private Integer mSppDeviceId; private Integer mSppDeviceId;
private boolean isConnection;
/** /**
* Beaconスキャン結果受信Receiver. * Beaconスキャン結果受信Receiver.
*/ */
...@@ -186,6 +189,10 @@ public class ABVCheckContentViewActivity extends ABVContentViewActivity { ...@@ -186,6 +189,10 @@ public class ABVCheckContentViewActivity extends ABVContentViewActivity {
@Override @Override
protected void onCreate(Bundle savedInstanceState) { protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
Logger.d(TAG,"-------------------------------------------------");
Logger.d(TAG,"onCreate");
Logger.d(TAG,"-------------------------------------------------");
/** 置くだけセンサーデバイス関連 開始 **/ /** 置くだけセンサーデバイス関連 開始 **/
//ビーコンスキャナー //ビーコンスキャナー
mScanner = new BeaconScanner(this); mScanner = new BeaconScanner(this);
...@@ -206,7 +213,9 @@ public class ABVCheckContentViewActivity extends ABVContentViewActivity { ...@@ -206,7 +213,9 @@ public class ABVCheckContentViewActivity extends ABVContentViewActivity {
bleManagerUtil = new BleManagerUtil(this, new BleManagerUtil.BleManagerUtilListener() { bleManagerUtil = new BleManagerUtil(this, new BleManagerUtil.BleManagerUtilListener() {
@Override @Override
public void onConnectionError(int status) { //bluetooth接続エラー public void onConnectionError(int status) { //bluetooth接続エラー
Logger.d(TAG,"-------------------------------------------------");
Logger.e(TAG, "onConnectionError"); Logger.e(TAG, "onConnectionError");
Logger.d(TAG,"-------------------------------------------------");
// bluetoothのデバイスタイプ(中心温度計・放射温度計) // bluetoothのデバイスタイプ(中心温度計・放射温度計)
int bluetoothDeviceType = bleManagerUtil.getBluetoothDeviceType(); int bluetoothDeviceType = bleManagerUtil.getBluetoothDeviceType();
// タイプによってメッセージ内容をセット // タイプによってメッセージ内容をセット
...@@ -224,12 +233,15 @@ public class ABVCheckContentViewActivity extends ABVContentViewActivity { ...@@ -224,12 +233,15 @@ public class ABVCheckContentViewActivity extends ABVContentViewActivity {
errorAfterAbookCheckAip(String.format(getString(R.string.msg_bluetooth_connect_error), getString(R.string.radiation_thermometer))); errorAfterAbookCheckAip(String.format(getString(R.string.msg_bluetooth_connect_error), getString(R.string.radiation_thermometer)));
} }
} }
bleManagerDisconnect(); // onuma
bleManagerDisconnect(true);
} }
@Override @Override
public void onConnectionState() { // bluetooth接続成功 public void onConnectionState() { // bluetooth接続成功
Logger.d(TAG,"-------------------------------------------------");
Logger.d(TAG, "onConnectionState"); Logger.d(TAG, "onConnectionState");
Logger.d(TAG,"-------------------------------------------------");
//ダイアログが非表示になっても、何回呼ばれることがあるので、ダイアログのnullチェックする。 //ダイアログが非表示になっても、何回呼ばれることがあるので、ダイアログのnullチェックする。
if (mWaitingDialog != null) { if (mWaitingDialog != null) {
String message = null; String message = null;
...@@ -244,8 +256,11 @@ public class ABVCheckContentViewActivity extends ABVContentViewActivity { ...@@ -244,8 +256,11 @@ public class ABVCheckContentViewActivity extends ABVContentViewActivity {
if (StringUtil.isNullOrEmpty(message)) { if (StringUtil.isNullOrEmpty(message)) {
// 接続するデバイスが存在しないと見做し、接続を切る // 接続するデバイスが存在しないと見做し、接続を切る
bleManagerDisconnect(); // onuma
bleManagerDisconnect(false);
} else { } else {
// onuma
isConnection = true;
mWaitingDialog.setMessage(message); mWaitingDialog.setMessage(message);
} }
} }
...@@ -253,21 +268,32 @@ public class ABVCheckContentViewActivity extends ABVContentViewActivity { ...@@ -253,21 +268,32 @@ public class ABVCheckContentViewActivity extends ABVContentViewActivity {
@Override @Override
public void onDisConnectionState() { // bluetooth接続切断 public void onDisConnectionState() { // bluetooth接続切断
Logger.d(TAG,"-------------------------------------------------");
Logger.d(TAG, "onDisConnectionState"); Logger.d(TAG, "onDisConnectionState");
Logger.d(TAG,"-------------------------------------------------");
// setThermometerData(""); // setThermometerData("");
// onuma 何もしない。オリジナルコードもダイアログを消すだけで、何もしていない
isConnection = false;
dismissWaitngDialog(); dismissWaitngDialog();
} }
@Override @Override
public void onGetDeviceInfo(String strTemp) { // bluetooth機器からデータ取得成功 public void onGetDeviceInfo(String strTemp) { // bluetooth機器からデータ取得成功
Logger.d(TAG,"-------------------------------------------------");
Logger.d(TAG, "onGetDeviceInfo temperature [%s]", strTemp); Logger.d(TAG, "onGetDeviceInfo temperature [%s]", strTemp);
Logger.d(TAG,"-------------------------------------------------");
setThermometerData(strTemp); setThermometerData(strTemp);
bleManagerDisconnect(); // 取得できたら、ダイアログ消すだけ。
// onuma
bleManagerDisconnect(false);
dismissWaitngDialog();
} }
@Override @Override
public void onGetDeviceInfoFailed(int status) { // bluetooth機器からデータ取得エラー public void onGetDeviceInfoFailed(int status) { // bluetooth機器からデータ取得エラー
Logger.d(TAG,"-------------------------------------------------");
Logger.e(TAG, "onGetDeviceInfoFailed"); Logger.e(TAG, "onGetDeviceInfoFailed");
Logger.d(TAG,"-------------------------------------------------");
// bluetoothのデバイスタイプ(中心温度計・放射温度計) // bluetoothのデバイスタイプ(中心温度計・放射温度計)
int bluetoothDeviceType = bleManagerUtil.getBluetoothDeviceType(); int bluetoothDeviceType = bleManagerUtil.getBluetoothDeviceType();
String errorMessage = null; String errorMessage = null;
...@@ -282,7 +308,9 @@ public class ABVCheckContentViewActivity extends ABVContentViewActivity { ...@@ -282,7 +308,9 @@ public class ABVCheckContentViewActivity extends ABVContentViewActivity {
errorAfterAbookCheckAip(errorMessage); errorAfterAbookCheckAip(errorMessage);
} }
// bluetooth通信を切断 // bluetooth通信を切断
bleManagerDisconnect(); //onuma
bleManagerDisconnect(true);
// ダイアログを閉じる // ダイアログを閉じる
dismissWaitngDialog(); dismissWaitngDialog();
} }
...@@ -309,11 +337,15 @@ public class ABVCheckContentViewActivity extends ABVContentViewActivity { ...@@ -309,11 +337,15 @@ public class ABVCheckContentViewActivity extends ABVContentViewActivity {
@Override @Override
protected void onDestroy() { protected void onDestroy() {
Logger.d(TAG,"-------------------------------------------------");
Logger.d(TAG,"onDestroy");
Logger.d(TAG,"-------------------------------------------------");
//Beacon受信停止 //Beacon受信停止
unregisterReceiver(mReceiver); unregisterReceiver(mReceiver);
// 接続されている機器と切断する。 // 接続されている機器と切断する。
bleManagerDisconnect(); // onuma
bleManagerDisconnect(true);
super.onDestroy(); super.onDestroy();
} }
...@@ -462,6 +494,9 @@ public class ABVCheckContentViewActivity extends ABVContentViewActivity { ...@@ -462,6 +494,9 @@ public class ABVCheckContentViewActivity extends ABVContentViewActivity {
*/ */
@Override @Override
protected void getDeviceInfo(Map<String, String> abookCheckParam) { protected void getDeviceInfo(Map<String, String> abookCheckParam) {
Logger.d(TAG,"-------------------------------------------------");
Logger.d(TAG,"getDeviceInfo");
Logger.d(TAG,"-------------------------------------------------");
if (abookCheckParam.containsKey(ABookKeys.TASK_DEVICE_TYPE)) { if (abookCheckParam.containsKey(ABookKeys.TASK_DEVICE_TYPE)) {
mDeviceType = Integer.valueOf(abookCheckParam.get(ABookKeys.TASK_DEVICE_TYPE)); // ディバイスのタイプ取得 mDeviceType = Integer.valueOf(abookCheckParam.get(ABookKeys.TASK_DEVICE_TYPE)); // ディバイスのタイプ取得
...@@ -572,6 +607,9 @@ public class ABVCheckContentViewActivity extends ABVContentViewActivity { ...@@ -572,6 +607,9 @@ public class ABVCheckContentViewActivity extends ABVContentViewActivity {
* @param message 内容 * @param message 内容
*/ */
private void showWaitingDialog(String title, String message) { private void showWaitingDialog(String title, String message) {
Logger.d(TAG,"-------------------------------------------------");
Logger.d(TAG,"showWaitingDialog");
Logger.d(TAG,"-------------------------------------------------");
//待機状態のダイヤログ表示 //待機状態のダイヤログ表示
mWaitingDialog = AlertDialogUtil.createAlertDialog(this, title); mWaitingDialog = AlertDialogUtil.createAlertDialog(this, title);
mWaitingDialog.setMessage(message); mWaitingDialog.setMessage(message);
...@@ -582,7 +620,11 @@ public class ABVCheckContentViewActivity extends ABVContentViewActivity { ...@@ -582,7 +620,11 @@ public class ABVCheckContentViewActivity extends ABVContentViewActivity {
switch (mDeviceType) { switch (mDeviceType) {
case DeviceType.centerThermomete: case DeviceType.centerThermomete:
case DeviceType.radiationThermomete: case DeviceType.radiationThermomete:
bleManagerDisconnect(); // 中心温度計接続切断 Logger.d(TAG,"-------------------------------------------------");
Logger.d(TAG,"中止");
Logger.d(TAG,"-------------------------------------------------");
//onuma
bleManagerDisconnect(true); // 中心温度計接続切断
break; break;
case DeviceType.sensor: case DeviceType.sensor:
stopOkudakeBeaconScan(); // 置くだけセンサースキャン中止 stopOkudakeBeaconScan(); // 置くだけセンサースキャン中止
...@@ -643,6 +685,9 @@ public class ABVCheckContentViewActivity extends ABVContentViewActivity { ...@@ -643,6 +685,9 @@ public class ABVCheckContentViewActivity extends ABVContentViewActivity {
* BLEディバイスの放射温度計の情報取得 * BLEディバイスの放射温度計の情報取得
*/ */
private void setRadiationThermometerDeviceInfo() { private void setRadiationThermometerDeviceInfo() {
Logger.d(TAG,"-------------------------------------------------");
Logger.d(TAG, "setRadiationThermometerDeviceInfo");
Logger.d(TAG,"-------------------------------------------------");
if (requestBluetoothFeature(REQUEST_CODE_ENABLEBLUETOOTH_RADIATION_TEMPERATURE)) { //端末のBluetooth設定を確認 if (requestBluetoothFeature(REQUEST_CODE_ENABLEBLUETOOTH_RADIATION_TEMPERATURE)) { //端末のBluetooth設定を確認
String deviceAddress = getABVUIDataCache().getPairingBluetoothDeviceAddress(DeviceType.radiationThermomete); String deviceAddress = getABVUIDataCache().getPairingBluetoothDeviceAddress(DeviceType.radiationThermomete);
if (StringUtil.isNullOrEmpty(deviceAddress)) { if (StringUtil.isNullOrEmpty(deviceAddress)) {
...@@ -652,12 +697,21 @@ public class ABVCheckContentViewActivity extends ABVContentViewActivity { ...@@ -652,12 +697,21 @@ public class ABVCheckContentViewActivity extends ABVContentViewActivity {
return; // 以下の処理にかからないようにreturnする return; // 以下の処理にかからないようにreturnする
} }
if (isConnection) {
Logger.d(TAG,"-------------------------------------------------");
Logger.d(TAG, "isConnection = true");
Logger.d(TAG,"-------------------------------------------------");
String message = String.format(getString(R.string.msg_ble_connect_success), getString(R.string.radiation_thermometer));
showWaitingDialog(getString(R.string.radiation_thermometer),message);
} else {
// 登録されている放射温度計がある // 登録されている放射温度計がある
showWaitingDialog(getString(R.string.radiation_thermometer), getString(R.string.ble_connecting)); showWaitingDialog(getString(R.string.radiation_thermometer), getString(R.string.ble_connecting));
// 接続 // 接続
bleManagerUtil.connect(DeviceType.radiationThermomete, deviceAddress); bleManagerUtil.connect(DeviceType.radiationThermomete, deviceAddress);
} }
} }
}
/** /**
* SPP機器の通信情報をセット * SPP機器の通信情報をセット
...@@ -876,9 +930,23 @@ public class ABVCheckContentViewActivity extends ABVContentViewActivity { ...@@ -876,9 +930,23 @@ public class ABVCheckContentViewActivity extends ABVContentViewActivity {
/** /**
* 中心温度計の接続を切る * 中心温度計の接続を切る
* #39006 【@Form】(要望)中心温度計 放射温度計の連続計測対応
*/ */
protected void bleManagerDisconnect() { protected void bleManagerDisconnect() {
// onuma ここでは切らない
//bleManagerUtil.disconnect(true);
}
private void bleManagerDisconnect(boolean disconnect)
{
Logger.d(TAG,"-------------------------------------------------");
Logger.d(TAG, "bleManagerDisconnect = " + disconnect);
Logger.d(TAG,"-------------------------------------------------");
if (disconnect){
isConnection = false;
bleManagerUtil.disconnect(true); bleManagerUtil.disconnect(true);
} else {
// 何もしない
}
} }
/** /**
...@@ -1005,7 +1073,9 @@ public class ABVCheckContentViewActivity extends ABVContentViewActivity { ...@@ -1005,7 +1073,9 @@ public class ABVCheckContentViewActivity extends ABVContentViewActivity {
@Override @Override
protected void onStop() { protected void onStop() {
super.onStop(); super.onStop();
Logger.d(TAG,"-------------------------------------------------");
Logger.d(TAG, "--onStop"); Logger.d(TAG, "--onStop");
Logger.d(TAG,"-------------------------------------------------");
// SPP通信の接続を切る // SPP通信の接続を切る
disConnectSppBluetooth(); disConnectSppBluetooth();
......
...@@ -32,18 +32,18 @@ keyaliaspassword=micrOSoft_!sa1ko ...@@ -32,18 +32,18 @@ keyaliaspassword=micrOSoft_!sa1ko
android.useDeprecatedNdk=true android.useDeprecatedNdk=true
# Launcher AndroidManifest.xml # Launcher AndroidManifest.xml
app_custompackagename=jp.co.sato.atform app_custompackagename=jp.co.agentec.abookplus.check.dev
app_versioncode=1 app_versioncode=1
# abvEnvironments.xml # abvEnvironments.xml
#cms server #cms server
acms_address=https://check.abookcloud.com/acms acms_address=https://abook188-1.abook.bz/acms
download_server_address=https://check.abookcloud.com/acms download_server_address=https://abook188-1.abook.bz/acms
#syncview server #syncview server
websocket_server_http_url=https://abook188-1.abook.bz/v1 websocket_server_http_url=http://abook188.abook.bz/v1
websocket_server_ws_url=wss://abook188-1.abook.bz/v1 websocket_server_ws_url=ws://abook188.abook.bz/v1
#WebSocket debug出力 #WebSocket debug出力
websocket_debug=false websocket_debug=false
...@@ -127,4 +127,4 @@ BLJAR_NAME=ABVJE_BL.jar ...@@ -127,4 +127,4 @@ BLJAR_NAME=ABVJE_BL.jar
#store用の場合、armv7,x86両方ビルド #store用の場合、armv7,x86両方ビルド
#storeではない場合、armv7のみビルド #storeではない場合、armv7のみビルド
isStoreProduct=false isStoreProduct=true
\ No newline at end of file \ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment