update 日志文件分享
This commit is contained in:
@@ -20,6 +20,7 @@ import org.yameida.worktool.Constant
|
|||||||
import org.yameida.worktool.R
|
import org.yameida.worktool.R
|
||||||
import org.yameida.worktool.service.WeworkController
|
import org.yameida.worktool.service.WeworkController
|
||||||
import org.yameida.worktool.utils.*
|
import org.yameida.worktool.utils.*
|
||||||
|
import java.io.File
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -67,6 +68,7 @@ class SettingsActivity : AppCompatActivity() {
|
|||||||
SPUtils.getInstance().put("autoReply", Constant.autoReply)
|
SPUtils.getInstance().put("autoReply", Constant.autoReply)
|
||||||
})
|
})
|
||||||
rl_reply_strategy.setOnClickListener { showReplyStrategyDialog() }
|
rl_reply_strategy.setOnClickListener { showReplyStrategyDialog() }
|
||||||
|
rl_log.setOnClickListener { showLogDialog() }
|
||||||
rl_donate.setOnClickListener { showDonateDialog() }
|
rl_donate.setOnClickListener { showDonateDialog() }
|
||||||
rl_share.setOnClickListener { showShareDialog() }
|
rl_share.setOnClickListener { showShareDialog() }
|
||||||
rl_advance.setOnClickListener { SettingsAdvanceActivity.enterActivity(this) }
|
rl_advance.setOnClickListener { SettingsAdvanceActivity.enterActivity(this) }
|
||||||
@@ -116,6 +118,26 @@ class SettingsActivity : AppCompatActivity() {
|
|||||||
.show()
|
.show()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private fun showLogDialog() {
|
||||||
|
val logDir = Utils.getApp().getExternalFilesDir("log")
|
||||||
|
if (logDir != null && logDir.exists()) {
|
||||||
|
val listFiles = logDir.listFiles()
|
||||||
|
QMUIDialog.CheckableDialogBuilder(this)
|
||||||
|
.setTitle("日志文件分享")
|
||||||
|
.addItems(listFiles.map { it.name.replace("_" + AppUtils.getAppPackageName(), "") }.toTypedArray()) { dialog, which ->
|
||||||
|
dialog.dismiss()
|
||||||
|
ToastUtils.showLong(listFiles[which].name)
|
||||||
|
val currentLogFilePath = listFiles[which].absolutePath
|
||||||
|
FileUtils.copy(currentLogFilePath, "$currentLogFilePath.snapshot")
|
||||||
|
ShareUtil.share("*", File("$currentLogFilePath.snapshot"), auto = false)
|
||||||
|
}
|
||||||
|
.create(R.style.QMUI_Dialog)
|
||||||
|
.show()
|
||||||
|
} else {
|
||||||
|
ToastUtils.showLong("日志文件夹为空~")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private fun showDonateDialog() {
|
private fun showDonateDialog() {
|
||||||
DonateUtil.zfbDonate(this)
|
DonateUtil.zfbDonate(this)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -49,16 +49,18 @@ object ShareUtil {
|
|||||||
/**
|
/**
|
||||||
* 文件分享 需要先授权显示悬浮窗
|
* 文件分享 需要先授权显示悬浮窗
|
||||||
*/
|
*/
|
||||||
fun share(type: String, file: File): Boolean {
|
fun share(type: String, file: File, auto: Boolean = true): Boolean {
|
||||||
val root = WeworkController.weworkService.rootInActiveWindow
|
|
||||||
if (root.packageName != Constant.PACKAGE_NAMES) {
|
|
||||||
LogUtils.e("文件分享失败 当前应用不在前台")
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
val app = Utils.getApp()
|
val app = Utils.getApp()
|
||||||
if (!Settings.canDrawOverlays(app)) {
|
if (auto) {
|
||||||
LogUtils.e("文件分享失败 没有悬浮窗权限~")
|
val root = WeworkController.weworkService.rootInActiveWindow
|
||||||
return false
|
if (root.packageName != Constant.PACKAGE_NAMES) {
|
||||||
|
LogUtils.e("文件分享失败 当前应用不在前台")
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
if (!Settings.canDrawOverlays(app)) {
|
||||||
|
LogUtils.e("文件分享失败 没有悬浮窗权限~")
|
||||||
|
return false
|
||||||
|
}
|
||||||
}
|
}
|
||||||
val intent = Intent().apply {
|
val intent = Intent().apply {
|
||||||
action = Intent.ACTION_SEND
|
action = Intent.ACTION_SEND
|
||||||
|
|||||||
@@ -420,24 +420,23 @@
|
|||||||
android:textStyle="bold" />
|
android:textStyle="bold" />
|
||||||
|
|
||||||
<RelativeLayout
|
<RelativeLayout
|
||||||
android:id="@+id/rl_language"
|
android:id="@+id/rl_log"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:visibility="gone"
|
|
||||||
android:paddingStart="@dimen/setting_start_padding"
|
android:paddingStart="@dimen/setting_start_padding"
|
||||||
android:paddingTop="@dimen/setting_vertical_padding"
|
android:paddingTop="@dimen/setting_vertical_padding"
|
||||||
android:paddingEnd="@dimen/setting_end_padding"
|
android:paddingEnd="@dimen/setting_end_padding"
|
||||||
android:paddingBottom="@dimen/setting_vertical_padding">
|
android:paddingBottom="@dimen/setting_vertical_padding">
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/iv_rec_language_"
|
android:id="@+id/iv_rec_log_"
|
||||||
android:layout_width="@dimen/setting_start_image_width"
|
android:layout_width="@dimen/setting_start_image_width"
|
||||||
android:layout_height="@dimen/setting_start_image_width"
|
android:layout_height="@dimen/setting_start_image_width"
|
||||||
android:layout_centerVertical="true"
|
android:layout_centerVertical="true"
|
||||||
android:src="@drawable/settings_language" />
|
android:src="@drawable/settings_fps" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/tv_select_language"
|
android:id="@+id/tv_select_log"
|
||||||
android:layout_width="@dimen/setting_end_font_width"
|
android:layout_width="@dimen/setting_end_font_width"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_alignParentEnd="true"
|
android:layout_alignParentEnd="true"
|
||||||
@@ -452,24 +451,23 @@
|
|||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_centerVertical="true"
|
android:layout_centerVertical="true"
|
||||||
android:layout_marginStart="@dimen/setting_start_padding"
|
android:layout_marginStart="@dimen/setting_start_padding"
|
||||||
android:layout_toStartOf="@id/tv_select_language"
|
android:layout_toStartOf="@id/tv_select_log"
|
||||||
android:layout_toEndOf="@id/iv_rec_language_"
|
android:layout_toEndOf="@id/iv_rec_log_"
|
||||||
android:orientation="vertical">
|
android:orientation="vertical">
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="language"
|
android:text="客户端日志上传"
|
||||||
android:textColor="@color/color_333333"
|
android:textColor="@color/color_333333"
|
||||||
android:textSize="@dimen/setting_start_font_size" />
|
android:textSize="@dimen/setting_start_font_size" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="reply_strategy_tips"
|
android:text="提供客户端日志给开发者"
|
||||||
android:textColor="@color/color_999999"
|
android:textColor="@color/color_999999"
|
||||||
android:textSize="@dimen/setting_end_font_size"
|
android:textSize="@dimen/setting_end_font_size" />
|
||||||
android:visibility="gone" />
|
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user