@@ -64,6 +64,13 @@ public class Preferences { |
||
64 | 64 |
return mPrefs.getString("mac",NullStr); |
65 | 65 |
} |
66 | 66 |
|
67 |
+ public boolean isPrinterConnected(){ |
|
68 |
+ return mPrefs.getBoolean("isPrinterConnected",false); |
|
69 |
+ } |
|
70 |
+ |
|
71 |
+ public void setPrinterConnected(boolean isPrinterConnect){ |
|
72 |
+ mPrefs.edit().putBoolean("isPrinterConnected",isPrinterConnect).commit(); |
|
73 |
+ } |
|
67 | 74 |
public String getCurrentSession(){ |
68 | 75 |
return mPrefs.getString("currentSession", NullStr); |
69 | 76 |
} |
@@ -80,7 +80,11 @@ public class BluetoothDeviceListAdapter extends BaseAdapter { |
||
80 | 80 |
holder.deviceName.setText(device.getName()); |
81 | 81 |
holder.deviceMac.setText(device.getAddress()); |
82 | 82 |
if(device.getAddress().equals(Preferences.getInstance().getPrinterMac())){ |
83 |
- holder.deviceStatus.setText(R.string.click_to_connect); |
|
83 |
+ if(Preferences.getInstance().isPrinterConnected()){ |
|
84 |
+ holder.deviceStatus.setText(R.string.bt_connected); |
|
85 |
+ }else{ |
|
86 |
+ holder.deviceStatus.setText(R.string.click_to_connect); |
|
87 |
+ } |
|
84 | 88 |
}else{ |
85 | 89 |
holder.deviceStatus.setText(""); |
86 | 90 |
} |
@@ -23,6 +23,7 @@ import org.apache.commons.lang.ArrayUtils; |
||
23 | 23 |
import java.util.Vector; |
24 | 24 |
|
25 | 25 |
import ai.pai.lensman.R; |
26 |
+import ai.pai.lensman.db.Preferences; |
|
26 | 27 |
|
27 | 28 |
|
28 | 29 |
public class PrinterService extends Service { |
@@ -90,7 +91,9 @@ public class PrinterService extends Service { |
||
90 | 91 |
int status = mGpService.queryPrinterStatus(0, 10000); |
91 | 92 |
if (status == GpCom.STATE_NO_ERR) { |
92 | 93 |
str = "打印机正常"; |
94 |
+ Preferences.getInstance().setPrinterConnected(true); |
|
93 | 95 |
} else { |
96 |
+ Preferences.getInstance().setPrinterConnected(false); |
|
94 | 97 |
str = "打印机 "; |
95 | 98 |
if ((byte) (status & GpCom.STATE_OFFLINE) > 0) { |
96 | 99 |
str += "脱机"; |
@@ -106,6 +106,7 @@ public class PrinterSettingActivity extends BaseActivity implements PrinterSetti |
||
106 | 106 |
@Override |
107 | 107 |
public void onPrinterStatusFetched(String msg) { |
108 | 108 |
printerStatusText.setText(msg); |
109 |
+ deviceAdapter.notifyDataSetChanged(); |
|
109 | 110 |
} |
110 | 111 |
|
111 | 112 |
|
@@ -85,7 +85,6 @@ public class PrinterSettingPresenter implements PrinterSettingContract.Presenter |
||
85 | 85 |
view.showToast(context.getString(R.string.printer_status_query_fail)); |
86 | 86 |
return; |
87 | 87 |
} |
88 |
- view.onPrinterStatusFetched(context.getString(R.string.query_printer_processing)); |
|
89 | 88 |
view.onPrinterStatusFetched(printerService.queryPrinterStatus()); |
90 | 89 |
} |
91 | 90 |
|
@@ -149,8 +148,10 @@ public class PrinterSettingPresenter implements PrinterSettingContract.Presenter |
||
149 | 148 |
int code = printerService.connectPrinter(device); |
150 | 149 |
if(code==0){ |
151 | 150 |
Preferences.getInstance().setPrinterMac(device.getAddress()); |
151 |
+ Preferences.getInstance().setPrinterConnected(true); |
|
152 | 152 |
}else{ |
153 | 153 |
view.showToast(context.getString(R.string.printer_port_open_fail)); |
154 |
+ Preferences.getInstance().setPrinterConnected(false); |
|
154 | 155 |
} |
155 | 156 |
|
156 | 157 |
} |