正在查看: xDrip+ v04633772025.07.16 应用的 SaveLogs.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: xDrip+ v04633772025.07.16 应用的 SaveLogs.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.eveningoutpost.dexdrip.utilitymodels;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Environment;
import android.view.View;
import android.widget.TextView;
import androidx.core.app.ActivityCompat;
import androidx.core.content.ContextCompat;
import com.eveningoutpost.dexdrip.BaseAppCompatActivity;
import com.eveningoutpost.dexdrip.models.JoH;
import com.eveningoutpost.dexdrip.models.UserError;
import com.eveningoutpost.dexdrip.utils.FileUtils;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
public class SaveLogs extends BaseAppCompatActivity {
private String LOG_FILE_PATH = "/Download/xDrip-export";
private String LOG_FILE_NAME = "xDrip-log.txt";
private String log_data = "";
@Override
protected void onCreate(Bundle bundle) {
Bundle extras;
String string;
String str;
super.onCreate(bundle);
setContentView(2131492936);
Intent intent = getIntent();
if (intent == null || (extras = intent.getExtras()) == null || (string = extras.getString("generic_text")) == null) {
return;
}
this.log_data = string;
TextView textView = (TextView) findViewById(2131297210);
if (this.log_data.length() > 300) {
str = "\n\nAttached " + this.log_data.length() + " characters of log data. (hidden)\n\n";
} else {
str = this.log_data;
}
textView.setText(str);
}
public void closeActivity(View view) {
finish();
}
public void saveLogs(View view) {
if (saveLogsToStorage(this.log_data)) {
UserError.Log.e("save logs", "Saved log file to /Download/xDrip-export/xDrip-log.txt");
} else {
UserError.Log.e("save logs", "Could not write log file");
}
this.log_data = "";
closeActivity(null);
}
public boolean saveLogsToStorage(String str) {
if (isStorageWritable(this, 104)) {
try {
String str2 = Environment.getExternalStorageDirectory().getAbsolutePath() + this.LOG_FILE_PATH;
FileUtils.makeSureDirectoryExists(str2);
FileOutputStream fileOutputStream = new FileOutputStream(new File(str2 + "/" + this.LOG_FILE_NAME));
fileOutputStream.write(str.getBytes());
fileOutputStream.close();
return true;
} catch (IOException e) {
e.printStackTrace();
return true;
}
}
JoH.static_toast_long("getString(R.string.sdcard_not_writable_cannot_save)");
return false;
}
public static boolean isStorageWritable(Activity activity, int i) {
if (ContextCompat.checkSelfPermission(activity, "android.permission.WRITE_EXTERNAL_STORAGE") != 0) {
ActivityCompat.requestPermissions(activity, new String[]{"android.permission.WRITE_EXTERNAL_STORAGE"}, i);
UserError.Log.e("save logs", "Did not have write permission, but should have it now");
return false;
}
return "mounted".equals(Environment.getExternalStorageState());
}
}