From ce9d304043b486361244fb6be90e5ef81e1e932e Mon Sep 17 00:00:00 2001 From: GiuseppeS Date: Mon, 15 Sep 2025 17:36:37 +0200 Subject: [PATCH] Aggiunto invio del file raw del log nel caso in cui vada in eccezione il parsine --- .../gest/settings/MainSettingsFragment.java | 46 ++++++++++++++++--- 1 file changed, 39 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/settings/MainSettingsFragment.java b/app/src/main/java/it/integry/integrywmsnative/gest/settings/MainSettingsFragment.java index 1ca01cb3..40ba35ac 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/settings/MainSettingsFragment.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/settings/MainSettingsFragment.java @@ -280,15 +280,27 @@ public class MainSettingsFragment extends PreferenceFragmentCompat implements IT List attachmentDTOList = new ArrayList<>(); if (fileToShare != null) { - var htmlContent = createAppLogAttachment(fileToShare); + try { + var htmlContent = createAppLogAttachment(fileToShare); - byte[] buffer = htmlContent.getBytes();//specify the size to allow. - String base64 = Base64.encodeToString(buffer, Base64.NO_WRAP); + byte[] buffer = htmlContent.getBytes();//specify the size to allow. + String base64 = Base64.encodeToString(buffer, Base64.NO_WRAP); - var logAttachment = new MailAttachmentDTO() - .setFileName("wms_log.html") - .setFileb64Content(base64); - attachmentDTOList.add(logAttachment); + var logAttachment = new MailAttachmentDTO() + .setFileName("wms_log.html") + .setFileb64Content(base64); + attachmentDTOList.add(logAttachment); + } catch (Exception ex) { + String rawLogFile = getRawLogAttachment(fileToShare); + + byte[] buffer = rawLogFile.getBytes();//specify the size to allow. + String base64 = Base64.encodeToString(buffer, Base64.NO_WRAP); + + var logAttachment = new MailAttachmentDTO() + .setFileName("raw_log.txt") + .setFileb64Content(base64); + attachmentDTOList.add(logAttachment); + } } @@ -461,4 +473,24 @@ public class MainSettingsFragment extends PreferenceFragmentCompat implements IT return htmlContent.toString(); } + + private String getRawLogAttachment(File logFile) { + //Read text from file + StringBuilder text = new StringBuilder(); + + try { + BufferedReader br = new BufferedReader(new FileReader(logFile)); + String line; + + while ((line = br.readLine()) != null) { + text.append(line); + text.append('\n'); + } + br.close(); + } catch (IOException e) { + //You'll need to add proper error handling here + } + + return text.toString(); + } }