From 44ba605a4e850efa757020da5fb4cf02bdf6e3ab Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期一, 08 九月 2025 10:55:18 +0800
Subject: [PATCH] 2025年09月08日10:55:15
---
app/src/main/java/com/hdl/photovoltaic/ui/test/TestLogActivity.java | 118 +++++++++++++++++++++++++++++++++++++++++++---------------
1 files changed, 87 insertions(+), 31 deletions(-)
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/test/TestLogActivity.java b/app/src/main/java/com/hdl/photovoltaic/ui/test/TestLogActivity.java
index 971bfb9..fe74ce6 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/test/TestLogActivity.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/test/TestLogActivity.java
@@ -1,11 +1,16 @@
package com.hdl.photovoltaic.ui.test;
+import android.content.Intent;
+import android.net.Uri;
import android.os.Bundle;
import android.text.Spannable;
import android.text.SpannableStringBuilder;
+import android.text.TextUtils;
import android.text.style.ForegroundColorSpan;
import android.view.View;
+
+import androidx.core.content.FileProvider;
import com.hdl.photovoltaic.R;
import com.hdl.photovoltaic.base.CustomBaseActivity;
@@ -17,6 +22,7 @@
import com.hdl.photovoltaic.widget.ConfirmationCancelDialog;
import com.hdl.photovoltaic.widget.ListStaticDialog;
+import java.io.File;
import java.util.IdentityHashMap;
import java.util.Map;
@@ -43,7 +49,7 @@
* 鐩戝惉鍣ㄥ垵濮嬪寲
*/
private void initEvent() {
- viewBinding.topBackBtn.setOnClickListener(new View.OnClickListener() {
+ viewBinding.topBackLl.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
finish();
@@ -75,12 +81,43 @@
}
});
+
+ viewBinding.clickToBottomTv.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+// int offset = (viewBinding.sv.getChildAt(0).getMeasuredHeight() - viewBinding.sv.getHeight()); // 璁$畻闇�瑕佹粴鍔ㄧ殑璺濈
+// if (offset > 0) {
+// viewBinding.sv.smoothScrollTo(0, offset); // 骞虫粦鍦版粴鍔ㄥ埌搴曢儴浣嶇疆
+// } else {
+// viewBinding.sv.fullScroll(View.FOCUS_DOWN); // 鐩存帴婊氬姩鍒版渶鍚庝竴琛�
+// }
+ viewBinding.sv.fullScroll(View.FOCUS_DOWN); // 鐩存帴婊氬姩鍒版渶鍚庝竴琛�
+ }
+ });
//涓婁紶鏃ュ織鍒颁簯绔笂
viewBinding.uploadingLogTv.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//todo 闇�瑕佽皟浜戠鐨勬帴鍙�
- HdlThreadLogic.toast(_mActivity, "杩樻病鏈夋敮鎸佷笂浼犳棩蹇�.");
+// HdlThreadLogic.toast(_mActivity, "杩樻病鏈夋敮鎸佷笂浼犳棩蹇�.");
+
+// Intent sendIntent = new Intent();
+// sendIntent.setAction(Intent.ACTION_SEND);
+// sendIntent.putExtra(Intent.EXTRA_TEXT, "This is my text to send.");
+// sendIntent.setType("text/plain");
+// startActivity(Intent.createChooser(sendIntent, "Share via"));
+ try {
+ // 鍦ˋctivity涓垱寤哄垎浜獻ntent
+ Intent shareIntent = new Intent(Intent.ACTION_SEND);
+ shareIntent.setType("application/pdf"); // 鏍规嵁瑕佸垎浜殑鏂囦欢绫诲瀷璁剧疆MIME绫诲瀷
+ File file = new File(HdlFileLogic.getInstance().getLogFileNamePath()); // 鎸囧畾鏂囦欢璺緞
+ Uri fileUri = FileProvider.getUriForFile(_mActivity, "com.hdl.photovoltaic.dc.fileprovider", file);
+ shareIntent.putExtra(Intent.EXTRA_STREAM, fileUri);
+ shareIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
+ startActivity(Intent.createChooser(shareIntent, "Share file using"));
+ } catch (Exception ignored) {
+ HdlThreadLogic.toast(_mActivity, "鍒嗕韩澶辫触");
+ }
}
});
@@ -126,39 +163,58 @@
* 鍒濆鍖栫晫闈�
*/
private void initView() {
- HdlThreadLogic.runMainThread(new Runnable() {
+ String homeId = "鏃ュ織浣忓畢ID=" + UserConfigManage.getInstance().getHomeId();
+ String homeName = "鏃ュ織浣忓畢鍚嶇О=" + UserConfigManage.getInstance().getHomeName();
+ viewBinding.homeIdTv.setText(homeId);
+ viewBinding.homeNameTv.setText(homeName);
+ showLoading();
+ HdlThreadLogic.runSubThread(new Runnable() {
@Override
public void run() {
-
- String homeId = "娴嬭瘯浣忓畢ID=" + UserConfigManage.getInstance().getHomeId();
- String homeName = "娴嬭瘯浣忓畢鍚嶇О=" + UserConfigManage.getInstance().getHomeName();
- viewBinding.homeIdTv.setText(homeId);
- viewBinding.homeNameTv.setText(homeName);
-
- HdlFileLogic.getInstance().delFileLien(HdlFileLogic.getInstance().getLogFileNamePath(), 2);
+// HdlFileLogic.getInstance().delFileLien(HdlFileLogic.getInstance().getLogFileNamePath(), 2);
String content = HdlLogLogic.readLog();
- int startIndex = 0;
- int endIndex;
- Map<Integer, Integer> map = new IdentityHashMap<>();
- String[] s = content.split("\r\n");
- for (int i = 0; i < s.length; i++) {
- if (i == 0) {
- endIndex = s[i].indexOf("s%");
- } else {
- startIndex = 2 + startIndex + s[i - 1].length();//2鎹㈣绗﹂暱搴�
- endIndex = 2 + startIndex + s[i].indexOf("s%");//2鎹㈣绗﹂暱搴�
+ HdlThreadLogic.runMainThread(new Runnable() {
+ @Override
+ public void run() {
+ hideLoading();
+ if (TextUtils.isEmpty(content)) {
+ return;
+ }
+ int startIndex = 0;
+ int endIndex;
+ Map<Integer, Integer> map = new IdentityHashMap<>();
+ String[] newArray = content.split("\r\n");
+// String[] newArray = new String[oldArray.length];//鍊掑簭
+// for (int i = oldArray.length - 1, j = 0; i >= 0; i--, j++) {
+// newArray[j] = oldArray[i];
+// }
+// StringBuilder stringBuilder = new StringBuilder();
+// for (String s : newArray) {
+// stringBuilder.append(s).append("\r\n");
+// }
+// content = stringBuilder.toString();
+ for (int i = 0; i < newArray.length; i++) {
+ if (i == 0) {
+ endIndex = newArray[i].indexOf("s%");
+ } else {
+ startIndex = 2 + startIndex + newArray[i - 1].length();//2鎹㈣绗﹂暱搴�
+ endIndex = 2 + startIndex + newArray[i].indexOf("s%");//2鎹㈣绗﹂暱搴�
+ }
+ map.put(startIndex, endIndex);
+ }
+ SpannableStringBuilder spannable = new SpannableStringBuilder(content.replace("s%", " "));//娉ㄦ剰s%鏄袱涓瓧绗�,鎵�浠ュ崰涓や綅
+ for (Map.Entry<Integer, Integer> entry : map.entrySet()) {
+ int start = entry.getKey();
+ int end = entry.getValue();
+ //璁剧疆鏃堕棿浣撻獙鏄彟涓�绉嶉鑹�
+ spannable.setSpan(new ForegroundColorSpan(getColor(R.color.text_245EC3)), start, end, Spannable.SPAN_INCLUSIVE_EXCLUSIVE);
+ }
+ viewBinding.replyContentTv.setText(spannable);
+
}
- map.put(startIndex, endIndex);
- }
- SpannableStringBuilder spannable = new SpannableStringBuilder(content.replace("s%", " "));//娉ㄦ剰s%鏄袱涓瓧绗�,鎵�浠ュ崰涓や綅
- for (Map.Entry<Integer, Integer> entry : map.entrySet()) {
- int start = entry.getKey();
- int end = entry.getValue();
- //璁剧疆鏃堕棿浣撻獙鏄彟涓�绉嶉鑹�
- spannable.setSpan(new ForegroundColorSpan(getColor(R.color.text_245EC3)), start, end, Spannable.SPAN_INCLUSIVE_EXCLUSIVE);
- }
- viewBinding.replyContentTv.setText(spannable);
+ });
}
- }, null, null);
+ });
+
}
}
\ No newline at end of file
--
Gitblit v1.8.0