fix: decode base64-encoded file content
This commit is contained in:
@@ -1,46 +1,72 @@
|
|||||||
cGFja2FnZSBhbmRyb2lkLnNlcmlhbHBvcnQudXRpbHM7CgoKaW1wb3J0IGFuZHJvaWQub3MuRW52
|
package android.serialport.utils;
|
||||||
aXJvbm1lbnQ7CmltcG9ydCBhbmRyb2lkLnRleHQuVGV4dFV0aWxzOwppbXBvcnQgYW5kcm9pZC51
|
|
||||||
dGlsLkxvZzsKCmltcG9ydCBqYXZhLmlvLkJ1ZmZlcmVkV3JpdGVyOwppbXBvcnQgamF2YS5pby5G
|
|
||||||
aWxlOwppbXBvcnQgamF2YS5pby5GaWxlV3JpdGVyOwoKcHVibGljIGNsYXNzIFNlcmlhbFBvcnRB
|
import android.os.Environment;
|
||||||
cHBVdGlscyB7CiAgICBwcml2YXRlIGZpbmFsIFN0cmluZyAgU0VSSUFMX1BPUlRfRElSRUNUT1JZ
|
import android.text.TextUtils;
|
||||||
X1BSSU5URVIgPSAiUHJpbnRlciI7CiAgICBwcml2YXRlIGZpbmFsIFN0cmluZyAgU0VSSUFMX1BP
|
import android.util.Log;
|
||||||
UlRfRElSRUNUT1JZX0lNQUdFID0gIkltYWdlIjsKICAgIHByaXZhdGUgZmluYWwgU3RyaW5nICBT
|
|
||||||
RVJJQUxfUE9SVF9GSUxFX0xPR19XSVRIX0VYVEVOU0lPTiA9ICJsb2dzLnR4dCI7CgogICAgcHJp
|
import java.io.BufferedWriter;
|
||||||
dmF0ZSBTdHJpbmcgaW1hZ2VQcmludFBhdGggPSAoRW52aXJvbm1lbnQuZ2V0RXh0ZXJuYWxTdG9y
|
import java.io.File;
|
||||||
YWdlRGlyZWN0b3J5KCkKICAgICAgICAgICAgLnRvU3RyaW5nKCkgKyBGaWxlLnNlcGFyYXRvcgog
|
import java.io.FileWriter;
|
||||||
ICAgICAgICAgICArIEVudmlyb25tZW50LkRJUkVDVE9SWV9EQ0lNCiAgICAgICAgICAgICsgRmls
|
|
||||||
ZS5zZXBhcmF0b3IKICAgICAgICAgICAgKyBTRVJJQUxfUE9SVF9ESVJFQ1RPUllfUFJJTlRFUgog
|
public class SerialPortAppUtils {
|
||||||
ICAgICAgICAgICArIEZpbGUuc2VwYXJhdG9yCiAgICAgICAgICAgICsgU0VSSUFMX1BPUlRfRElS
|
private final String SERIAL_PORT_DIRECTORY_PRINTER = "Printer";
|
||||||
RUNUT1JZX0lNQUdFCiAgICAgICAgICAgICsgRmlsZS5zZXBhcmF0b3IKICAgICAgICAgICAgKTsK
|
private final String SERIAL_PORT_DIRECTORY_IMAGE = "Image";
|
||||||
cHJpdmF0ZSBTdHJpbmcgZmlsZU5hbWUgPSBTRVJJQUxfUE9SVF9GSUxFX0xPR19XSVRIX0VYVEVO
|
private final String SERIAL_PORT_FILE_LOG_WITH_EXTENSION = "logs.txt";
|
||||||
U0lPTjsKICAgIHByaXZhdGUgc3RhdGljIFNlcmlhbFBvcnRBcHBVdGlscyBtU2VyaWFsUG9ydEFw
|
|
||||||
cFV0aWxzOwoKICAgIHB1YmxpYyBzdGF0aWMgU2VyaWFsUG9ydEFwcFV0aWxzIGdldEluc3RhbmNl
|
private String imagePrintPath = (Environment.getExternalStorageDirectory()
|
||||||
KCkgewogICAgICAgIGlmIChtU2VyaWFsUG9ydEFwcFV0aWxzID09IG51bGwpIHsKICAgICAgICAg
|
.toString() + File.separator
|
||||||
ICAgbVNlcmlhbFBvcnRBcHBVdGlscyA9IG5ldyBTZXJpYWxQb3J0QXBwVXRpbHMoKTsKICAgICAg
|
+ Environment.DIRECTORY_DCIM
|
||||||
ICB9CiAgICAgICAgcmV0dXJuIG1TZXJpYWxQb3J0QXBwVXRpbHM7CiAgICB9CiAgICBwdWJsaWMg
|
+ File.separator
|
||||||
dm9pZCBhcHBlbmRMb2coU3RyaW5nIHRleHQpIHsKICAgICAgICB0cnkgewogICAgICAgICAgICBp
|
+ SERIAL_PORT_DIRECTORY_PRINTER
|
||||||
ZiAoaW1hZ2VQcmludFBhdGggIT0gbnVsbCkgewogICAgICAgICAgICAgICAgRmlsZSBsb2dGaWxl
|
+ File.separator
|
||||||
ID0gbmV3IEZpbGUoaW1hZ2VQcmludFBhdGgpOwogICAgICAgICAgICAgICAgU3RyaW5nIGZ1bGxQ
|
+ SERIAL_PORT_DIRECTORY_IMAGE
|
||||||
YXRoID0gRmlsZS5zZXBhcmF0b3IrZmlsZU5hbWU7CiAgICAgICAgICAgICAgICBGaWxlIGxvZ0Zp
|
+ File.separator
|
||||||
bGVUeHQgPSBuZXcgRmlsZShpbWFnZVByaW50UGF0aCwgIGZ1bGxQYXRoKTsKICAgICAgICAgICAg
|
);
|
||||||
ICAgIGlmICghbG9nRmlsZS5leGlzdHMoKSkgewogICAgICAgICAgICAgICAgICAgIGxvZ0ZpbGUu
|
private String fileName = SERIAL_PORT_FILE_LOG_WITH_EXTENSION;
|
||||||
bWtkaXJzKCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBpZiAoIWxvZ0ZpbGVU
|
private static SerialPortAppUtils mSerialPortAppUtils;
|
||||||
eHQuZXhpc3RzKCkpIHsKICAgICAgICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAg
|
|
||||||
ICAgICAgICBsb2dGaWxlVHh0LmNyZWF0ZU5ld0ZpbGUoKTsKICAgICAgICAgICAgICAgICAgICB9
|
public static SerialPortAppUtils getInstance() {
|
||||||
IGNhdGNoIChFeGNlcHRpb24gZSkgewogICAgICAgICAgICAgICAgICAgICAgICAvLyBUT0RPIEF1
|
if (mSerialPortAppUtils == null) {
|
||||||
dG8tZ2VuZXJhdGVkIGNhdGNoIGJsb2NrCiAgICAgICAgICAgICAgICAgICAgICAgIGUucHJpbnRT
|
mSerialPortAppUtils = new SerialPortAppUtils();
|
||||||
dGFja1RyYWNlKCk7CiAgICAgICAgICAgICAgICAgICAgICAgLy8gTG9nLmQoIlRFU1RfTE9HIiwg
|
}
|
||||||
IkxvZyBXcml0bmcgZXJyOiIrZS5nZXRNZXNzYWdlKCkpOwoKICAgICAgICAgICAgICAgICAgICB9
|
return mSerialPortAppUtils;
|
||||||
CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAg
|
}
|
||||||
ICAgIGlmKGxvZ0ZpbGVUeHQhPW51bGwgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIC8vQnVm
|
public void appendLog(String text) {
|
||||||
ZmVyZWRXcml0ZXIgZm9yIHBlcmZvcm1hbmNlLCB0cnVlIHRvIHNldCBhcHBlbmQgdG8gZmlsZSBm
|
try {
|
||||||
bGFnCiAgICAgICAgICAgICAgICAgICAgICAgIEJ1ZmZlcmVkV3JpdGVyIGJ1ZiA9IG5ldyBCdWZm
|
if (imagePrintPath != null) {
|
||||||
ZXJlZFdyaXRlcihuZXcgRmlsZVdyaXRlcihsb2dGaWxlVHh0LCB0cnVlKSk7CiAgICAgICAgICAg
|
File logFile = new File(imagePrintPath);
|
||||||
ICAgICAgICAgICAgIGJ1Zi5hcHBlbmQodGV4dCk7CiAgICAgICAgICAgICAgICAgICAgICAgIGJ1
|
String fullPath = File.separator+fileName;
|
||||||
Zi5uZXdMaW5lKCk7CiAgICAgICAgICAgICAgICAgICAgICAgIGJ1Zi5jbG9zZSgpOwogICAgICAg
|
File logFileTxt = new File(imagePrintPath, fullPath);
|
||||||
ICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0gY2F0Y2ggKEV4Y2VwdGlvbiBlKSB7CiAg
|
if (!logFile.exists()) {
|
||||||
ICAgICAgICAgICAgICAgICAgLy8gVE9ETyBBdXRvLWdlbmVyYXRlZCBjYXRjaCBibG9jawogICAg
|
logFile.mkdirs();
|
||||||
ICAgICAgICAgICAgICAgIGUucHJpbnRTdGFja1RyYWNlKCk7CiAgICAgICAgICAgICAgICAgICAv
|
}
|
||||||
LyBMb2cuZCgiVEVTVF9MT0ciLCAiTG9nIFdyaXRuZyBlcnI6IitlLmdldE1lc3NhZ2UoKSk7CiAg
|
if (!logFileTxt.exists()) {
|
||||||
ICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9IGNhdGNoIChFeGNlcHRpb24g
|
try {
|
||||||
ZSkgewogICAgICAgICAgICBlLnByaW50U3RhY2tUcmFjZSgpOwogICAgICAgIH0KICAgIH0KfQo=
|
logFileTxt.createNewFile();
|
||||||
|
} catch (Exception e) {
|
||||||
|
// TODO Auto-generated catch block
|
||||||
|
e.printStackTrace();
|
||||||
|
// Log.d("TEST_LOG", "Log Writng err:"+e.getMessage());
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
if(logFileTxt!=null ) {
|
||||||
|
//BufferedWriter for performance, true to set append to file flag
|
||||||
|
BufferedWriter buf = new BufferedWriter(new FileWriter(logFileTxt, true));
|
||||||
|
buf.append(text);
|
||||||
|
buf.newLine();
|
||||||
|
buf.close();
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
// TODO Auto-generated catch block
|
||||||
|
e.printStackTrace();
|
||||||
|
// Log.d("TEST_LOG", "Log Writng err:"+e.getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user