mirror of
https://github.com/kiwix/kiwix-android.git
synced 2025-09-16 02:48:08 -04:00
Used Scoped Storage
This commit is contained in:
parent
00e41f39aa
commit
e4506588e3
@ -74,16 +74,15 @@ abstract class CoreApp : Application() {
|
||||
override fun onCreate() {
|
||||
super.onCreate()
|
||||
instance = this
|
||||
fileLogger = FileLogger()
|
||||
coreComponent = DaggerCoreComponent.builder()
|
||||
.context(this)
|
||||
.build()
|
||||
AndroidThreeTen.init(this)
|
||||
fileLogger.writeLogFile(this)
|
||||
coreComponent.inject(this)
|
||||
kiwixDatabase.forceMigration()
|
||||
downloadMonitor.init()
|
||||
nightModeConfig.init()
|
||||
fileLogger.writeLogFile(this)
|
||||
configureStrictMode()
|
||||
}
|
||||
|
||||
|
@ -23,6 +23,7 @@ import android.content.pm.PackageManager;
|
||||
import android.net.Uri;
|
||||
import android.os.Build;
|
||||
import android.os.Bundle;
|
||||
import android.util.Log;
|
||||
import android.widget.Button;
|
||||
import android.widget.CheckBox;
|
||||
import androidx.core.content.ContextCompat;
|
||||
@ -46,6 +47,7 @@ import org.kiwix.kiwixmobile.core.zim_manager.fileselect_view.adapter.BooksOnDis
|
||||
import org.kiwix.kiwixmobile.zim_manager.MountInfo;
|
||||
import org.kiwix.kiwixmobile.zim_manager.MountPointProducer;
|
||||
|
||||
import static androidx.core.content.FileProvider.getUriForFile;
|
||||
import static org.kiwix.kiwixmobile.core.utils.LanguageUtils.getCurrentLocale;
|
||||
|
||||
public class ErrorActivity extends BaseActivity {
|
||||
@ -94,7 +96,6 @@ public class ErrorActivity extends BaseActivity {
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
setContentView(R.layout.activity_kiwix_error);
|
||||
fileLogger = new FileLogger();
|
||||
Intent callingIntent = getIntent();
|
||||
|
||||
Bundle extras = callingIntent.getExtras();
|
||||
@ -114,10 +115,12 @@ public class ErrorActivity extends BaseActivity {
|
||||
|
||||
String body = getBody();
|
||||
|
||||
|
||||
if (allowLogsCheckbox.isChecked()) {
|
||||
File file = fileLogger.writeLogFile(this);
|
||||
Uri path = FileProvider.getUriForFile(this,
|
||||
getApplicationContext().getPackageName() + ".fileProvider", file);
|
||||
Log.d("SEARCHING.....", "onCreate: Searching @ "+ getPackageName()+ " .fileProvider"+ file);
|
||||
Uri path = getUriForFile(this,
|
||||
getPackageName() + ".fileProvider", file);
|
||||
emailIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
|
||||
emailIntent.putExtra(Intent.EXTRA_STREAM, path);
|
||||
}
|
||||
|
@ -38,26 +38,34 @@ class FileLogger @Inject constructor() {
|
||||
Environment.MEDIA_MOUNTED == Environment.getExternalStorageState()
|
||||
|
||||
fun writeLogFile(context: Context): File {
|
||||
val logFile = File(context.filesDir, fileName)
|
||||
Log.d("KIWIX", "Writing all logs into [" + logFile.path + "]")
|
||||
if (logFile.exists() && logFile.isFile) {
|
||||
// this creates a new folder in private storage with name: logs
|
||||
val logDir = File(context.filesDir, "logs")
|
||||
val logFile = File(logDir, fileName)
|
||||
|
||||
Log.d("KIWIX", "Writing all logs into [" + logDir.path + "]")
|
||||
|
||||
if (!logDir.exists()) {
|
||||
logDir.mkdir()
|
||||
}
|
||||
if (logDir.exists() && logFile.isFile) {
|
||||
Log.d(TAG, "writeLogFile: Deleting preExistingFile")
|
||||
logFile.delete()
|
||||
}
|
||||
// clear the previous logcat and then write the new one to the file
|
||||
try {
|
||||
logFile.createNewFile()
|
||||
logDir.createNewFile()
|
||||
Runtime.getRuntime().exec("logcat -c")
|
||||
Runtime.getRuntime().exec("logcat -f $logFile -s kiwix")
|
||||
Log.d(TAG, "writeLogFile: Log report written Successfully!")
|
||||
Log.d(TAG, "writeLogFile: Authored report to $logFile")
|
||||
} catch (e: IOException) {
|
||||
Log.e("KIWIX", "Error while writing logcat.txt", e)
|
||||
Log.e("KIWIX", "Error while writing $fileName! ", e)
|
||||
}
|
||||
return logFile
|
||||
}
|
||||
|
||||
companion object {
|
||||
private const val TAG: String = "FileLogger"
|
||||
private const val TAG = "FileLogger"
|
||||
private val fileName = "logs" + currentTimeMillis() + ".txt"
|
||||
}
|
||||
}
|
||||
|
@ -6,4 +6,7 @@
|
||||
<root-path
|
||||
name="external_files"
|
||||
path="/storage/" />
|
||||
<files-path
|
||||
name="debug"
|
||||
path="logs/" />
|
||||
</paths>
|
||||
|
Loading…
x
Reference in New Issue
Block a user