diff --git a/app/src/main/java/com/all/pdfreader/pdf/reader/ui/act/MainActivity.kt b/app/src/main/java/com/all/pdfreader/pdf/reader/ui/act/MainActivity.kt index 8464007..2399d19 100644 --- a/app/src/main/java/com/all/pdfreader/pdf/reader/ui/act/MainActivity.kt +++ b/app/src/main/java/com/all/pdfreader/pdf/reader/ui/act/MainActivity.kt @@ -60,6 +60,7 @@ class MainActivity : BaseActivity(), PermissionDialogFragment.PermissionCallback super.onCreate(savedInstanceState) binding = ActivityMainBinding.inflate(layoutInflater) setContentView(binding.root) + AnalyticsUtils.logEvent(AnalyticsUtils.Event.HOME_SHOW) setupDoubleBackExit() initObserve() setupImmersionBar { @@ -108,6 +109,7 @@ class MainActivity : BaseActivity(), PermissionDialogFragment.PermissionCallback viewModel.fileActionEvent.observeEvent(this) { event -> if (event.file != null) { showToast(getString(R.string.duplicate_created_successfully)) + AnalyticsUtils.logEvent(AnalyticsUtils.Event.FILE_COPY_SUCCESS) } else { showToast(getString(R.string.duplicate_created_failed)) } @@ -124,6 +126,7 @@ class MainActivity : BaseActivity(), PermissionDialogFragment.PermissionCallback progressDialog = null if (event.success == true) { showToast(getString(R.string.set_password_successfully)) + AnalyticsUtils.logEvent(AnalyticsUtils.Event.LOCK_SUCCESS) } else { showToast(getString(R.string.set_password_failed)) } @@ -142,6 +145,7 @@ class MainActivity : BaseActivity(), PermissionDialogFragment.PermissionCallback progressDialog = null if (event.success == true) { showToast(getString(R.string.remove_password_successfully)) + AnalyticsUtils.logEvent(AnalyticsUtils.Event.UNLOCK_SUCCESS) } else { showToast(getString(R.string.remove_password_failed)) } @@ -207,6 +211,7 @@ class MainActivity : BaseActivity(), PermissionDialogFragment.PermissionCallback exitAllMultiSelect() } binding.multiSelectBtn.setOnClickListener { + AnalyticsUtils.logEvent(AnalyticsUtils.Event.SELECT_CK) when (activeFragment) { is HomeFrag -> { (activeFragment as HomeFrag).setupMultiSelect() @@ -300,6 +305,11 @@ class MainActivity : BaseActivity(), PermissionDialogFragment.PermissionCallback } binding.switchScreenOn.setOnCheckedChangeListener(object : OnCheckedChangeListener { override fun onCheckedChanged(view: CustomSwitchButton?, isChecked: Boolean) { + if(isChecked){ + AnalyticsUtils.logEvent(AnalyticsUtils.Event.KEEP_SCREEN_OPEN) + }else{ + AnalyticsUtils.logEvent(AnalyticsUtils.Event.KEEP_SCREEN_CLOSE) + } view?.setChecked(isChecked) appStore.keepScreenOn = isChecked setKeepScreenOn(isChecked) diff --git a/app/src/main/java/com/all/pdfreader/pdf/reader/ui/act/MergePdfActivity.kt b/app/src/main/java/com/all/pdfreader/pdf/reader/ui/act/MergePdfActivity.kt index 7eb5a89..2ba860d 100644 --- a/app/src/main/java/com/all/pdfreader/pdf/reader/ui/act/MergePdfActivity.kt +++ b/app/src/main/java/com/all/pdfreader/pdf/reader/ui/act/MergePdfActivity.kt @@ -40,6 +40,7 @@ class MergePdfActivity : BaseActivity() { super.onCreate(savedInstanceState) binding = ActivityPdfMergeBinding.inflate(layoutInflater) setContentView(binding.root) + AnalyticsUtils.logEvent(AnalyticsUtils.Event.MERGE_SHOW) setupImmersionBar { statusBarView(binding.view) statusBarDarkFont(true) @@ -175,6 +176,7 @@ class MergePdfActivity : BaseActivity() { onOkClick = { backPressedCallback?.isEnabled = false onBackPressedDispatcher.onBackPressed() + AnalyticsUtils.logEvent(AnalyticsUtils.Event.MERGE_BACK_CONFIRM) }, onCancelClick = { }).show(supportFragmentManager, getString(R.string.exit_merge)) } diff --git a/app/src/main/java/com/all/pdfreader/pdf/reader/ui/act/PdfResultActivity.kt b/app/src/main/java/com/all/pdfreader/pdf/reader/ui/act/PdfResultActivity.kt index 4032e38..517f3d6 100644 --- a/app/src/main/java/com/all/pdfreader/pdf/reader/ui/act/PdfResultActivity.kt +++ b/app/src/main/java/com/all/pdfreader/pdf/reader/ui/act/PdfResultActivity.kt @@ -23,6 +23,7 @@ import com.all.pdfreader.pdf.reader.model.PdfSplitResultItem import com.all.pdfreader.pdf.reader.room.entity.PdfDocumentEntity import com.all.pdfreader.pdf.reader.ui.adapter.PdfResultAdapter import com.all.pdfreader.pdf.reader.ui.dialog.PromptDialogFragment +import com.all.pdfreader.pdf.reader.util.AnalyticsUtils import com.all.pdfreader.pdf.reader.util.AppUtils import com.all.pdfreader.pdf.reader.util.AppUtils.dpToPx import com.all.pdfreader.pdf.reader.util.AppUtils.generateFastThumbnail @@ -45,6 +46,7 @@ class PdfResultActivity : BaseActivity() { override val TAG: String = "PdfResultActivity" override val rootBottomView: View? get() = binding.rootBottomLayout + companion object { private const val EXTRA_SELECTED_LIST = "extra_selected_list" private const val EXTRA_FILE_LIST = "extra_file_list" @@ -202,6 +204,9 @@ class PdfResultActivity : BaseActivity() { pdfScanner.addNewPdfToDatabase(result.filePath, result.thumbnailPath) { resultList.add(result) } + if (resultList.isNotEmpty()) { + AnalyticsUtils.logEvent(AnalyticsUtils.Event.SPLIT_SUCCESS) + } } } } else if (source == PdfPickerSource.MERGE) { @@ -244,6 +249,9 @@ class PdfResultActivity : BaseActivity() { pdfScanner.addNewPdfToDatabase(result.filePath, result.thumbnailPath) { resultList.add(result) } + if (resultList.isNotEmpty()) { + AnalyticsUtils.logEvent(AnalyticsUtils.Event.MERGE_SUCCESS) + } } } else if (source == PdfPickerSource.LOCK) { val filepath = intent.getStringExtra(EXTRA_FILE_PATH) ?: "" @@ -267,6 +275,10 @@ class PdfResultActivity : BaseActivity() { } val result = PdfSplitResultItem(filePath = filepath, isPassword = true) resultList.add(result) + + if(resultList.isNotEmpty()){ + AnalyticsUtils.logEvent(AnalyticsUtils.Event.LOCK_SUCCESS) + } } } else if (source == PdfPickerSource.UNLOCK) { val filepath = intent.getStringExtra(EXTRA_FILE_PATH) ?: "" @@ -290,6 +302,9 @@ class PdfResultActivity : BaseActivity() { filePath = filepath, thumbnailPath = it, isPassword = false ) resultList.add(result) + if(resultList.isNotEmpty()){ + AnalyticsUtils.logEvent(AnalyticsUtils.Event.UNLOCK_SUCCESS) + } } } else if (source == PdfPickerSource.IMAGES_TO_PDF) { val files = requireStringArrayList(EXTRA_FILE_LIST) @@ -324,6 +339,9 @@ class PdfResultActivity : BaseActivity() { pdfScanner.addNewPdfToDatabase(result.filePath, result.thumbnailPath) { resultList.add(result) } + if(resultList.isNotEmpty()){ + AnalyticsUtils.logEvent(AnalyticsUtils.Event.TUTO_PDF_SUCCESS) + } } } else if (source == PdfPickerSource.PDF_TO_IMAGES) { val filepath = intent.getStringExtra(EXTRA_FILE_PATH) ?: "" @@ -362,6 +380,9 @@ class PdfResultActivity : BaseActivity() { resultList.add(result) } } + if(resultList.isNotEmpty()){ + AnalyticsUtils.logEvent(AnalyticsUtils.Event.PDFTO_TU_SUCCESS) + } } } else if (source == PdfPickerSource.TO_LONG_IMAGE) { val filepath = intent.getStringExtra(EXTRA_FILE_PATH) ?: "" @@ -397,6 +418,9 @@ class PdfResultActivity : BaseActivity() { )?.let { file -> val result = PdfSplitResultItem(file.absolutePath, file.absolutePath, false) resultList.add(result) + if(resultList.isNotEmpty()){ + AnalyticsUtils.logEvent(AnalyticsUtils.Event.PDFTO_CTU_SUCCESS) + } } } withContext(Dispatchers.Main) { @@ -438,13 +462,17 @@ class PdfResultActivity : BaseActivity() { .into(binding.multipleImage) } binding.multipleNumberTv.text = "${resultList.size}" - binding.multipleImageTv.text = getString(R.string.number_image_converted,resultList.size) + binding.multipleImageTv.text = + getString(R.string.number_image_converted, resultList.size) } else { binding.multipleImageLayout.visibility = View.GONE binding.oneResultView.visibility = View.GONE binding.recyclerView.visibility = View.VISIBLE } } + } else { + showToast(getString(R.string.processing_failed)) + finish() } // 默认选中第一个,只有一个也是第一个,所以点击的地方就不做修改了。就展示这里做修改 if (resultList.isNotEmpty() && resultList.none { it.isSelected }) { diff --git a/app/src/main/java/com/all/pdfreader/pdf/reader/ui/act/PdfToImageActivity.kt b/app/src/main/java/com/all/pdfreader/pdf/reader/ui/act/PdfToImageActivity.kt index 311e286..028bed6 100644 --- a/app/src/main/java/com/all/pdfreader/pdf/reader/ui/act/PdfToImageActivity.kt +++ b/app/src/main/java/com/all/pdfreader/pdf/reader/ui/act/PdfToImageActivity.kt @@ -13,6 +13,7 @@ import com.all.pdfreader.pdf.reader.model.PdfPageItem import com.all.pdfreader.pdf.reader.model.PdfPickerSource import com.all.pdfreader.pdf.reader.ui.adapter.SplitPdfAdapter import com.all.pdfreader.pdf.reader.ui.dialog.PdfPasswordProtectionDialogFragment +import com.all.pdfreader.pdf.reader.util.AnalyticsUtils import com.all.pdfreader.pdf.reader.util.AppUtils.setOnSingleClickListener import com.all.pdfreader.pdf.reader.util.FileUtils.isPdfEncrypted import com.all.pdfreader.pdf.reader.util.PdfUtils @@ -63,6 +64,11 @@ class PdfToImageActivity : BaseActivity() { showToast(getString(R.string.file_not)) finish() } + if (source == PdfPickerSource.PDF_TO_IMAGES) { + AnalyticsUtils.logEvent(AnalyticsUtils.Event.PDFTO_TU_SHOW) + } else if (source == PdfPickerSource.TO_LONG_IMAGE) { + AnalyticsUtils.logEvent(AnalyticsUtils.Event.PDFTO_CTU_SHOW) + } initView() setupClick() initSplitData(File(filePath)) diff --git a/app/src/main/java/com/all/pdfreader/pdf/reader/ui/act/PdfViewActivity.kt b/app/src/main/java/com/all/pdfreader/pdf/reader/ui/act/PdfViewActivity.kt index 97db171..dbfee17 100644 --- a/app/src/main/java/com/all/pdfreader/pdf/reader/ui/act/PdfViewActivity.kt +++ b/app/src/main/java/com/all/pdfreader/pdf/reader/ui/act/PdfViewActivity.kt @@ -20,6 +20,7 @@ import com.all.pdfreader.pdf.reader.ui.dialog.ListMoreDialogFragment import com.all.pdfreader.pdf.reader.ui.dialog.PdfPasswordProtectionDialogFragment import com.all.pdfreader.pdf.reader.ui.dialog.ViewModelDialogFragment import com.all.pdfreader.pdf.reader.ui.view.CustomScrollHandle +import com.all.pdfreader.pdf.reader.util.AnalyticsUtils import com.all.pdfreader.pdf.reader.util.AppUtils import com.all.pdfreader.pdf.reader.util.AppUtils.hideKeyboard import com.all.pdfreader.pdf.reader.util.AppUtils.showKeyboard @@ -75,6 +76,7 @@ class PdfViewActivity : BaseActivity(), OnLoadCompleteListener, OnPageChangeList super.onCreate(savedInstanceState) binding = ActivityPdfViewBinding.inflate(layoutInflater) setContentView(binding.root) + AnalyticsUtils.logEvent(AnalyticsUtils.Event.PDF_SHOW) setupImmersionBar { statusBarView(binding.view) statusBarDarkFont(true) @@ -127,6 +129,7 @@ class PdfViewActivity : BaseActivity(), OnLoadCompleteListener, OnPageChangeList viewModel.fileActionEvent.observeEvent(this) { if (it.success) { showToast(getString(R.string.bookmark_add_success)) + AnalyticsUtils.logEvent(AnalyticsUtils.Event.BOOKMARK_ADD_SUCCESS) } else { showToast(getString(R.string.bookmark_add_fail)) } @@ -145,6 +148,7 @@ class PdfViewActivity : BaseActivity(), OnLoadCompleteListener, OnPageChangeList viewModel.fileActionEvent.observeEvent(this) { event -> if (event.file != null) { showToast(getString(R.string.duplicate_created_successfully)) + AnalyticsUtils.logEvent(AnalyticsUtils.Event.FILE_COPY_SUCCESS) } else { showToast(getString(R.string.duplicate_created_failed)) } @@ -181,6 +185,7 @@ class PdfViewActivity : BaseActivity(), OnLoadCompleteListener, OnPageChangeList binding.pdfview.apply { jumpTo(event.number - 1) } + AnalyticsUtils.logEvent(AnalyticsUtils.Event.PAGE_JUMP_SUCCESS) } } @@ -194,10 +199,12 @@ class PdfViewActivity : BaseActivity(), OnLoadCompleteListener, OnPageChangeList onBackPressedDispatcher.onBackPressed() } binding.eyeCareOverlayBtn.setOnClickListener { + AnalyticsUtils.logEvent(AnalyticsUtils.Event.EYE_PROTECT_CK) appStore.isEyeCareMode = !appStore.isEyeCareMode toggleEyeCareMode(appStore.isEyeCareMode) } binding.viewModelBtn.setOnClickListener { + AnalyticsUtils.logEvent(AnalyticsUtils.Event.VIEW_MODE_CK) ViewModelDialogFragment().show(supportFragmentManager, "ViewModelDialogFragment") } binding.bookmarksBtn.setOnClickListener { diff --git a/app/src/main/java/com/all/pdfreader/pdf/reader/ui/act/PictureSelectorActivity.kt b/app/src/main/java/com/all/pdfreader/pdf/reader/ui/act/PictureSelectorActivity.kt index e60da0b..fbdf85b 100644 --- a/app/src/main/java/com/all/pdfreader/pdf/reader/ui/act/PictureSelectorActivity.kt +++ b/app/src/main/java/com/all/pdfreader/pdf/reader/ui/act/PictureSelectorActivity.kt @@ -10,6 +10,7 @@ import com.all.pdfreader.pdf.reader.PRApp import com.all.pdfreader.pdf.reader.R import com.all.pdfreader.pdf.reader.databinding.ActPictureSelectorBinding import com.all.pdfreader.pdf.reader.model.PdfPickerSource +import com.all.pdfreader.pdf.reader.util.AnalyticsUtils import com.all.pdfreader.pdf.reader.util.GlideEngine import com.luck.picture.lib.basic.PictureSelector import com.luck.picture.lib.config.PictureMimeType @@ -37,6 +38,7 @@ class PictureSelectorActivity : BaseActivity() { super.onCreate(savedInstanceState) binding = ActPictureSelectorBinding.inflate(layoutInflater) setContentView(binding.root) + AnalyticsUtils.logEvent(AnalyticsUtils.Event.TUTO_PDF_SHOW) setupImmersionBar { statusBarView(binding.view) statusBarDarkFont(false) diff --git a/app/src/main/java/com/all/pdfreader/pdf/reader/ui/act/SearchActivity.kt b/app/src/main/java/com/all/pdfreader/pdf/reader/ui/act/SearchActivity.kt index c1e3d2f..6fff845 100644 --- a/app/src/main/java/com/all/pdfreader/pdf/reader/ui/act/SearchActivity.kt +++ b/app/src/main/java/com/all/pdfreader/pdf/reader/ui/act/SearchActivity.kt @@ -23,6 +23,7 @@ import com.all.pdfreader.pdf.reader.ui.dialog.ListMoreDialogFragment import com.all.pdfreader.pdf.reader.ui.dialog.PdfRemovePasswordDialog import com.all.pdfreader.pdf.reader.ui.dialog.PdfSetPasswordDialog import com.all.pdfreader.pdf.reader.ui.dialog.PromptDialogFragment +import com.all.pdfreader.pdf.reader.util.AnalyticsUtils import com.all.pdfreader.pdf.reader.util.AppUtils.printPdfFile import com.all.pdfreader.pdf.reader.util.AppUtils.showKeyboard import com.all.pdfreader.pdf.reader.util.ToastUtils @@ -65,6 +66,7 @@ class SearchActivity : BaseActivity() { super.onCreate(savedInstanceState) binding = ActivitySearchPdfBinding.inflate(layoutInflater) setContentView(binding.root) + AnalyticsUtils.logEvent(AnalyticsUtils.Event.SEARCH_SHOW) setupImmersionBar { statusBarView(binding.view) statusBarDarkFont(true) @@ -147,6 +149,7 @@ class SearchActivity : BaseActivity() { private fun initView() { binding.searchEdit.showKeyboard() adapter = SearchPdfAdapter(onItemClick = { pdf -> + AnalyticsUtils.logEvent(AnalyticsUtils.Event.SEARCH_SUCCESS) when (source) { PdfPickerSource.NONE -> { val intent = PdfViewActivity.createIntent(this, pdf.filePath) diff --git a/app/src/main/java/com/all/pdfreader/pdf/reader/ui/act/SplitPdfActivity.kt b/app/src/main/java/com/all/pdfreader/pdf/reader/ui/act/SplitPdfActivity.kt index 3b66bed..539cfc7 100644 --- a/app/src/main/java/com/all/pdfreader/pdf/reader/ui/act/SplitPdfActivity.kt +++ b/app/src/main/java/com/all/pdfreader/pdf/reader/ui/act/SplitPdfActivity.kt @@ -19,6 +19,7 @@ import com.all.pdfreader.pdf.reader.ui.adapter.SplitSelectedPdfAdapter import com.all.pdfreader.pdf.reader.ui.dialog.PdfPasswordProtectionDialogFragment import com.all.pdfreader.pdf.reader.ui.dialog.PromptDialogFragment import com.all.pdfreader.pdf.reader.ui.dialog.RenameDialogFragment +import com.all.pdfreader.pdf.reader.util.AnalyticsUtils import com.all.pdfreader.pdf.reader.util.AppUtils.setOnSingleClickListener import com.all.pdfreader.pdf.reader.util.FileUtils.isPdfEncrypted import com.all.pdfreader.pdf.reader.util.FileUtils.toUnderscoreDateTime @@ -75,6 +76,7 @@ class SplitPdfActivity : BaseActivity() { showToast(getString(R.string.file_not)) finish() } + AnalyticsUtils.logEvent(AnalyticsUtils.Event.SPLIT_SHOW) initView() setupClick() initSplitData(File(filePath)) @@ -302,6 +304,8 @@ class SplitPdfActivity : BaseActivity() { onOkClick = { backPressedCallback?.isEnabled = false onBackPressedDispatcher.onBackPressed() + + AnalyticsUtils.logEvent(AnalyticsUtils.Event.SPLIT_LEAVE_CONFIRM) }).show(supportFragmentManager, getString(R.string.exit_split)) } diff --git a/app/src/main/java/com/all/pdfreader/pdf/reader/ui/dialog/BookmarksDialogFragment.kt b/app/src/main/java/com/all/pdfreader/pdf/reader/ui/dialog/BookmarksDialogFragment.kt index 9af46e3..f696273 100644 --- a/app/src/main/java/com/all/pdfreader/pdf/reader/ui/dialog/BookmarksDialogFragment.kt +++ b/app/src/main/java/com/all/pdfreader/pdf/reader/ui/dialog/BookmarksDialogFragment.kt @@ -12,6 +12,7 @@ import com.all.pdfreader.pdf.reader.model.RenameType import com.all.pdfreader.pdf.reader.room.entity.BookmarkEntity import com.all.pdfreader.pdf.reader.room.entity.PdfDocumentEntity import com.all.pdfreader.pdf.reader.ui.adapter.BookmarkAdapter +import com.all.pdfreader.pdf.reader.util.AnalyticsUtils import com.all.pdfreader.pdf.reader.util.ToastUtils import com.all.pdfreader.pdf.reader.viewmodel.PdfViewModel import com.google.android.material.bottomsheet.BottomSheetDialogFragment @@ -52,6 +53,7 @@ class BookmarksDialogFragment( override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) + AnalyticsUtils.logEvent(AnalyticsUtils.Event.BOOKMARK_TK_SHOW) if (pdfDocument.filePath.isEmpty()) { showToast(getString(R.string.file_not)) dismiss() diff --git a/app/src/main/java/com/all/pdfreader/pdf/reader/ui/dialog/FileDetailsDialogFragment.kt b/app/src/main/java/com/all/pdfreader/pdf/reader/ui/dialog/FileDetailsDialogFragment.kt index d672f57..d503583 100644 --- a/app/src/main/java/com/all/pdfreader/pdf/reader/ui/dialog/FileDetailsDialogFragment.kt +++ b/app/src/main/java/com/all/pdfreader/pdf/reader/ui/dialog/FileDetailsDialogFragment.kt @@ -9,6 +9,7 @@ import androidx.fragment.app.activityViewModels import com.all.pdfreader.pdf.reader.R import com.all.pdfreader.pdf.reader.databinding.DialogFileDetailsBinding import com.all.pdfreader.pdf.reader.room.entity.PdfDocumentEntity +import com.all.pdfreader.pdf.reader.util.AnalyticsUtils import com.all.pdfreader.pdf.reader.util.FileUtils.toFormatFileSize import com.all.pdfreader.pdf.reader.util.FileUtils.toSlashDateTime import com.all.pdfreader.pdf.reader.util.ToastUtils @@ -42,6 +43,7 @@ class FileDetailsDialogFragment() : BottomSheetDialogFragment() { override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) + AnalyticsUtils.logEvent(AnalyticsUtils.Event.DETAILS_EXPAND_CK) viewModel.pdfDocument.value?.let { pdfDocument = it initView() diff --git a/app/src/main/java/com/all/pdfreader/pdf/reader/ui/dialog/ListMoreDialogFragment.kt b/app/src/main/java/com/all/pdfreader/pdf/reader/ui/dialog/ListMoreDialogFragment.kt index 802b534..392aa34 100644 --- a/app/src/main/java/com/all/pdfreader/pdf/reader/ui/dialog/ListMoreDialogFragment.kt +++ b/app/src/main/java/com/all/pdfreader/pdf/reader/ui/dialog/ListMoreDialogFragment.kt @@ -21,6 +21,7 @@ import com.all.pdfreader.pdf.reader.ui.act.SplitPdfActivity import com.all.pdfreader.pdf.reader.ui.fragment.FavoriteFrag import com.all.pdfreader.pdf.reader.ui.fragment.HomeFrag import com.all.pdfreader.pdf.reader.ui.fragment.RecentlyFrag +import com.all.pdfreader.pdf.reader.util.AnalyticsUtils import com.all.pdfreader.pdf.reader.util.AppUtils.dpToPx import com.all.pdfreader.pdf.reader.util.AppUtils.printPdfFile import com.all.pdfreader.pdf.reader.util.AppUtils.setClickWithAnimation @@ -187,6 +188,7 @@ class ListMoreDialogFragment(val filePath: String) : BottomSheetDialogFragment() dismiss() } binding.duplicateFileBtn.setOnClickListener { + AnalyticsUtils.logEvent(AnalyticsUtils.Event.FILE_COPY_CK) viewModel.duplicateFile(requireActivity(), pdfDocument.filePath) dismiss() } @@ -203,12 +205,14 @@ class ListMoreDialogFragment(val filePath: String) : BottomSheetDialogFragment() dismiss() } binding.removeRecentBtn.setOnClickListener { + AnalyticsUtils.logEvent(AnalyticsUtils.Event.REMOVE_CK) PromptDialogFragment( getString(R.string.remove_dialog_title), getString(R.string.remove_dialog_desc), getString(R.string.remove), onOkClick = { viewModel.removeRecent(pdfDocument.filePath) + AnalyticsUtils.logEvent(AnalyticsUtils.Event.REMOVE_SUCCESS) }).show(parentFragmentManager, "removeRecent") dismiss() } @@ -218,6 +222,7 @@ class ListMoreDialogFragment(val filePath: String) : BottomSheetDialogFragment() dismiss() } binding.gotoPageBtn.setOnClickListener { + AnalyticsUtils.logEvent(AnalyticsUtils.Event.PAGE_JUMP_CK) GotoPageDialogFragment().show(parentFragmentManager, "GotoPage") dismiss() } diff --git a/app/src/main/java/com/all/pdfreader/pdf/reader/ui/dialog/PdfRemovePasswordDialog.kt b/app/src/main/java/com/all/pdfreader/pdf/reader/ui/dialog/PdfRemovePasswordDialog.kt index f17caed..215f974 100644 --- a/app/src/main/java/com/all/pdfreader/pdf/reader/ui/dialog/PdfRemovePasswordDialog.kt +++ b/app/src/main/java/com/all/pdfreader/pdf/reader/ui/dialog/PdfRemovePasswordDialog.kt @@ -9,6 +9,7 @@ import androidx.core.graphics.drawable.toDrawable import androidx.fragment.app.DialogFragment import com.all.pdfreader.pdf.reader.R import com.all.pdfreader.pdf.reader.databinding.DialogPdfRemovePasswordBinding +import com.all.pdfreader.pdf.reader.util.AnalyticsUtils import com.all.pdfreader.pdf.reader.util.AppUtils.showKeyboard import com.all.pdfreader.pdf.reader.util.FileUtils.isPdfPasswordCorrect import com.all.pdfreader.pdf.reader.util.ToastUtils @@ -45,6 +46,7 @@ class PdfRemovePasswordDialog( super.onViewCreated(view, savedInstanceState) binding.etPassword.showKeyboard() setupListeners() + AnalyticsUtils.logEvent(AnalyticsUtils.Event.UNLOCK_TK_SHOW) } private fun setupListeners() { diff --git a/app/src/main/java/com/all/pdfreader/pdf/reader/ui/dialog/PdfSetPasswordDialog.kt b/app/src/main/java/com/all/pdfreader/pdf/reader/ui/dialog/PdfSetPasswordDialog.kt index 49859a8..8334ca4 100644 --- a/app/src/main/java/com/all/pdfreader/pdf/reader/ui/dialog/PdfSetPasswordDialog.kt +++ b/app/src/main/java/com/all/pdfreader/pdf/reader/ui/dialog/PdfSetPasswordDialog.kt @@ -11,6 +11,7 @@ import androidx.core.graphics.drawable.toDrawable import androidx.fragment.app.DialogFragment import com.all.pdfreader.pdf.reader.R import com.all.pdfreader.pdf.reader.databinding.DialogPdfSetPasswordBinding +import com.all.pdfreader.pdf.reader.util.AnalyticsUtils import com.all.pdfreader.pdf.reader.util.AppUtils.showKeyboard import com.all.pdfreader.pdf.reader.util.ToastUtils @@ -44,6 +45,7 @@ class PdfSetPasswordDialog( binding.etPassword.showKeyboard() setupListeners() setupTextWatchers() + AnalyticsUtils.logEvent(AnalyticsUtils.Event.LOCK_TK_SHOW) } private fun setupListeners() { diff --git a/app/src/main/java/com/all/pdfreader/pdf/reader/ui/dialog/RenameDialogFragment.kt b/app/src/main/java/com/all/pdfreader/pdf/reader/ui/dialog/RenameDialogFragment.kt index 6c4be26..b86ff81 100644 --- a/app/src/main/java/com/all/pdfreader/pdf/reader/ui/dialog/RenameDialogFragment.kt +++ b/app/src/main/java/com/all/pdfreader/pdf/reader/ui/dialog/RenameDialogFragment.kt @@ -15,6 +15,7 @@ import com.all.pdfreader.pdf.reader.R import com.all.pdfreader.pdf.reader.databinding.DialogRenameFileBinding import com.all.pdfreader.pdf.reader.model.RenameType import com.all.pdfreader.pdf.reader.room.entity.BookmarkEntity +import com.all.pdfreader.pdf.reader.util.AnalyticsUtils import com.all.pdfreader.pdf.reader.util.AppUtils.showKeyboard import com.all.pdfreader.pdf.reader.util.FileUtils import com.all.pdfreader.pdf.reader.util.ToastUtils @@ -56,6 +57,7 @@ class RenameDialogFragment( super.onViewCreated(view, savedInstanceState) when (type) { RenameType.FILE -> { + AnalyticsUtils.logEvent(AnalyticsUtils.Event.RENAME_TK_SHOW) viewModel.pdfDocument.value?.let { initView(it.fileName) setupOnClick(it.fileName, it.filePath, null) diff --git a/app/src/main/java/com/all/pdfreader/pdf/reader/ui/dialog/SortDialogFragment.kt b/app/src/main/java/com/all/pdfreader/pdf/reader/ui/dialog/SortDialogFragment.kt index 792e467..892a745 100644 --- a/app/src/main/java/com/all/pdfreader/pdf/reader/ui/dialog/SortDialogFragment.kt +++ b/app/src/main/java/com/all/pdfreader/pdf/reader/ui/dialog/SortDialogFragment.kt @@ -13,6 +13,7 @@ import com.all.pdfreader.pdf.reader.model.SortField import com.all.pdfreader.pdf.reader.sp.AppStore import com.all.pdfreader.pdf.reader.ui.fragment.FavoriteFrag import com.all.pdfreader.pdf.reader.ui.fragment.HomeFrag +import com.all.pdfreader.pdf.reader.util.AnalyticsUtils import com.google.android.material.bottomsheet.BottomSheetDialogFragment class SortDialogFragment( @@ -45,6 +46,7 @@ class SortDialogFragment( override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) + AnalyticsUtils.logEvent(AnalyticsUtils.Event.SORT_SHOW) val appStore = AppStore(requireActivity()) isCancelable = false when(fragment){ diff --git a/app/src/main/java/com/all/pdfreader/pdf/reader/ui/dialog/ViewModelDialogFragment.kt b/app/src/main/java/com/all/pdfreader/pdf/reader/ui/dialog/ViewModelDialogFragment.kt index 69b0d7b..a3ec9d5 100644 --- a/app/src/main/java/com/all/pdfreader/pdf/reader/ui/dialog/ViewModelDialogFragment.kt +++ b/app/src/main/java/com/all/pdfreader/pdf/reader/ui/dialog/ViewModelDialogFragment.kt @@ -17,6 +17,7 @@ import com.all.pdfreader.pdf.reader.room.entity.PdfDocumentEntity import com.all.pdfreader.pdf.reader.sp.AppStore import com.all.pdfreader.pdf.reader.ui.view.CustomSwitchButton import com.all.pdfreader.pdf.reader.ui.view.CustomSwitchButton.OnCheckedChangeListener +import com.all.pdfreader.pdf.reader.util.AnalyticsUtils import com.all.pdfreader.pdf.reader.util.ToastUtils import com.all.pdfreader.pdf.reader.viewmodel.PdfViewModel import com.google.android.material.bottomsheet.BottomSheetDialogFragment @@ -94,6 +95,7 @@ class ViewModelDialogFragment() : BottomSheetDialogFragment() { view?.setChecked(isChecked) appstore.isPageFling = isChecked viewModel.setPageFling(appstore.isPageFling) + AnalyticsUtils.logEvent(AnalyticsUtils.Event.VIEWPAGE_MODE_CK) } }) binding.switchColorInversion.setOnCheckedChangeListener(object : OnCheckedChangeListener { @@ -104,6 +106,7 @@ class ViewModelDialogFragment() : BottomSheetDialogFragment() { view?.setChecked(isChecked) appstore.isColorInversion = isChecked viewModel.setColorInversion(appstore.isColorInversion) + AnalyticsUtils.logEvent(AnalyticsUtils.Event.VIEWPAGE_COLOR_CK) } }) } diff --git a/app/src/main/java/com/all/pdfreader/pdf/reader/util/AnalyticsUtils.kt b/app/src/main/java/com/all/pdfreader/pdf/reader/util/AnalyticsUtils.kt index a99ef69..cafd4fa 100644 --- a/app/src/main/java/com/all/pdfreader/pdf/reader/util/AnalyticsUtils.kt +++ b/app/src/main/java/com/all/pdfreader/pdf/reader/util/AnalyticsUtils.kt @@ -52,573 +52,49 @@ object AnalyticsUtils { object Event { const val APP_LAUNCH_CK = "app_launch_ck" // 应用启动(app_launch_ck) const val SPLASH_VISIBLE = "splash_visible" // 启动页(splash_visible) - const val HOME_ACTIVITY_VISIBLE = "home_activity_visible" // 首页完全加载并可见(home_activity_visible) - const val HOME_CK = "home_ck" // 点击首页图标(home_ck) - const val HOME_SEL = "home_sel" // 进入文件选择状态(home_sel) - const val HOME_SELL_CK = "home_sell_ck" // 发起删除请求(home_sell_ck) - const val HOME_SEL_DEL_CANC = "home_sel_del_canc" // 取消删除(home_sel_del_canc) - const val HOME_SEL_DEL_CONF = "home_sel_del_conf" // 确认删除(home_sel_del_conf) - const val HOME_SEL_DEL_SUC = "home_sel_del_suc" // 删除成功(home_sel_del_suc) - const val HOME_SEL_MER_CK = "home_sel_mer_ck" // 发起合并请求(home_sel_mer_ck) - const val HOME_SEL_MER_EDIT_BACK_CK = "home_sel_mer_edit_back_ck" // 合并编辑页-点击返回(home_sel_mer_edit_back_ck) - const val HOME_SEL_MER_EDIT_LEA_CANC = "home_sel_mer_edit_lea_canc" // 合并编辑页-取消离开(home_sel_mer_edit_lea_canc) - const val HOME_SEL_MER_EDIT_LEA_CONF = "home_sel_mer_edit_lea_conf" // 合并编辑页-确认离开(home_sel_mer_edit_lea_conf) - const val HOME_SEL_MER_EDIT_ADD_CK = "home_sel_mer_edit_add_ck" // 合并编辑页-点击添加文件(home_sel_mer_edit_add_ck) - const val HOME_SEL_MER_ADD_SEA_CK = "home_sel_mer_add_sea_ck" // 合并编辑页-添加文件页-点击搜索(home_sel_mer_add_sea_ck) - const val HOME_SEL_MER_SEA_CONF = "home_sel_mer_sea_conf" // 合并编辑页-添加文件页-搜索页-确认添加文件(home_sel_mer_sea_conf) - const val HOME_SEL_MER_EDIT_ADD_FINI = "home_sel_mer_edit_add_fini" // 合并编辑页-添加文件页-添加完成(home_sel_mer_edit_add_fini) - const val HOME_SEL_MER_EDIT_DEL = "home_sel_mer_edit_del" // 合并编辑页-删除已选文件(home_sel_mer_edit_del) - const val HOME_SEL_MER_EDIT_MER_CK = "home_sel_mer_edit_mer_ck" // 合并编辑页-点击合并(home_sel_mer_edit_mer_ck) - const val HOME_SEL_MER_NAM_CONF_CK = "home_sel_mer_nam_conf_ck" // 合并编辑页-确认合并命名(home_sel_mer_nam_conf_ck) - const val HOME_SEL_MER_SUC = "home_sel_mer_suc" // 合并成功(home_sel_mer_suc) - const val HOME_SEL_MER_SHA_CK = "home_sel_mer_sha_ck" // 合并成功页-点击分享按钮(home_sel_mer_sha_ck) - const val HOME_SEL_MER_OPEN_CK = "home_sel_mer_open_ck" // 合并成功页-点击打开文件按钮(home_sel_mer_open_ck) - const val HOME_SEL_SHA_CK = "home_sel_sha_ck" // 点击分享按钮(home_sel_sha_ck) - const val HOME_SEA_CK = "home_sea_ck" // 点击搜索(home_sea_ck) - const val HOME_SEA_SUC = "home_sea_suc" // 提交搜索请求(home_sea_suc) - const val HOME_SORT_CK = "home_sort_ck" // 点击排序按钮(home_sort_ck) - const val HOME_SORT_CONF = "home_sort_conf" // 确认排序规则(home_sort_conf) - const val HOME_PDF_OPEN = "home_pdf_open" // 进入PDF内容页(home_pdf_open) - const val HOME_PDF_BACK = "home_pdf_back" // 退出PDF内容页(home_pdf_back) - const val HOME_PDF_VIEW_MODE_CK = "home_pdf_view_mode_ck" // 点击浏览模式按钮(home_pdf_view_mode_ck) - const val HOME_PDF_VIEW_DIRE_SEL = "home_pdf_view_dire_sel" // 选择浏览方向(home_pdf_view_dire_sel) - const val HOME_PDF_VIEW_PAGE_MODE = "home_pdf_view_page_mode" // 选择页面浏览模式(home_pdf_view_page_mode) - const val HOME_PDF_VIEW_PAGE_COLOR = "home_pdf_view_page_color" // 选择页面颜色(home_pdf_view_page_color) - const val HOME_PDF_MARK_CK = "home_pdf_mark_ck" // 点击标签按钮(home_pdf_mark_ck) - const val HOME_PDF_MARK_ADD_CK = "home_pdf_mark_add_ck" // 进入书签编辑页(home_pdf_mark_add_ck) - const val HOME_PDF_MARK_ADD_PAGE_CK = "home_pdf_mark_add_page_ck" // 添加更多页面(home_pdf_mark_add_page_ck) - const val HOME_PDF_MARK_RENA_CK = "home_pdf_mark_rena_ck" // 发起重命名书签(home_pdf_mark_rena_ck) - const val HOME_PDF_MARK_RENA_CONF = "home_pdf_mark_rena_conf" // 确认重命名书签(home_pdf_mark_rena_conf) - const val HOME_PDF_MARK_PAGE_DEL = "home_pdf_mark_page_del" // 删除单个书签页(home_pdf_mark_page_del) - const val HOME_PDF_MARK_DEL_ALL_CK = "home_pdf_mark_del_all_ck" // 发起删除全部书签(home_pdf_mark_del_all_ck) - const val HOME_PDF_MARK_DEL_ALL_CANC = "home_pdf_mark_del_all_canc" // 取消删除全部书签(home_pdf_mark_del_all_canc) - const val HOME_PDF_MARK_DEL_ALL_CONF = "home_pdf_mark_del_all_conf" // 确认删除全部书签(home_pdf_mark_del_all_conf) - const val HOME_PDF_EYE_PRO_CK = "home_pdf_eye_pro_ck" // 点击护眼模式(home_pdf_eye_pro_ck) - const val HOME_PDF_SHA_CK = "home_pdf_sha_ck" // 点击分享(home_pdf_sha_ck) - const val HOME_PDF_MORE_CK = "home_pdf_more_ck" // 点击更多按钮(home_pdf_more_ck) - const val HOME_PDF_MORE_EXPA_CK = "home_pdf_more_expa_ck" // 展开详情信息介绍页(home_pdf_more_expa_ck) - const val HOME_PDF_MORE_COLSE_CK = "home_pdf_more_colse_ck" // 关闭详细信息介绍页(home_pdf_more_colse_ck) - const val HOME_PDF_MORE_RENA_CK = "home_pdf_more_rena_ck" // 点击重命名(home_pdf_more_rena_ck) - const val HOME_PDF_MORE_RENA_CANC = "home_pdf_more_rena_canc" // 取消重命名(home_pdf_more_rena_canc) - const val HOME_PDF_MORE_RENA_CONF = "home_pdf_more_rena_conf" // 确认重命名(home_pdf_more_rena_conf) - const val HOME_PDF_MORE_RENA_SUC = "home_pdf_more_rena_suc" // 重命名成功(home_pdf_more_rena_suc) - const val HOME_PDF_MORE_SHA_CK = "home_pdf_more_sha_ck" // 点击分享按钮(home_pdf_more_sha_ck) - const val HOME_PDF_MORE_PRINT_CK = "home_pdf_more_print_ck" // 点击打印按钮(home_pdf_more_print_ck) - const val HOME_PDF_MORE_FAV_ADD = "home_pdf_more_fav_add" // 添加喜欢(home_pdf_more_fav_add) - const val HOME_PDF_MORE_FAV_REMO = "home_pdf_more_fav_remo" // 取消喜欢(home_pdf_more_fav_remo) - const val HOME_PDF_MORE_PAGE_JUM_CK = "home_pdf_more_page_jum_ck" // 点击跳转页数按钮(home_pdf_more_page_jum_ck) - const val HOME_PDF_MORE_PAGE_JUM_CANC = "home_pdf_more_page_jum_canc" // 取消跳转(home_pdf_more_page_jum_canc) - const val HOME_PDF_MORE_PAGE_JUM_CONF = "home_pdf_more_page_jum_conf" // 确认跳转(home_pdf_more_page_jum_conf) - const val HOME_PDF_MORE_PAGE_JUM_SUC = "home_pdf_more_page_jum_suc" // 跳转成功(home_pdf_more_page_jum_suc) - const val HOME_PDF_MORE_COPY = "home_pdf_more_copy" // 点击复制文件(home_pdf_more_copy) - const val HOME_PDF_MORE_COPY_SUC = "home_pdf_more_copy_suc" // 复制文件成功(home_pdf_more_copy_suc) - const val HOME_PDF_MORE_MER_CK = "home_pdf_more_mer_ck" // 点击合并文件(home_pdf_more_mer_ck) - const val HOME_PDF_MORE_MER_SEL_SEA_CK = "home_pdf_more_mer_sel_sea_ck" // 选择页-点击搜索(home_pdf_more_mer_sel_sea_ck) - const val HOME_PDF_MORE_MER_SEL_SEA_CONF = "home_pdf_more_mer_sel_sea_conf" // 选择页-搜索页-确认添加文件(home_pdf_more_mer_sel_sea_conf) - const val HOME_PDF_MORE_MER_SEL_CONT_CK = "home_pdf_more_mer_sel_cont_ck" // 选择页-点击持续按钮(home_pdf_more_mer_sel_cont_ck) - const val HOME_PDF_MORE_MER_EDIT_BACK_CK = "home_pdf_more_mer_edit_back_ck" // 合并编辑页-点击返回(home_pdf_more_mer_edit_back_ck) - const val HOME_PDF_MORE_MER_EDIT_LEA_CANC = "home_pdf_more_mer_edit_lea_canc" // 合并编辑页-取消放弃合并(home_pdf_more_mer_edit_lea_canc) - const val HOME_PDF_MORE_MER_EDIT_LEA_CONF = "home_pdf_more_mer_edit_lea_conf" // 合并编辑页-确认放弃合并(home_pdf_more_mer_edit_lea_conf) - const val HOME_PDF_MORE_MER_EDIT_ADD_CK = "home_pdf_more_mer_edit_add_ck" // 合并编辑页-点击添加文件(home_pdf_more_mer_edit_add_ck) - const val HOME_PDF_MORE_MER_ADD_SEA_CK = "home_pdf_more_mer_add_sea_ck" // 合并编辑页-添加文件页-点击搜索(home_pdf_more_mer_add_sea_ck) - const val HOME_PDF_MORE_MER_ADD_SEA_CONF = "home_pdf_more_mer_add_sea_conf" // 合并编辑页-添加文件页-搜索页-确认添加文件(home_pdf_more_mer_add_sea_conf) - const val HOME_PDF_MORE_MER_ADD_FINI_CK = "home_pdf_more_mer_add_fini_ck" // 合并编辑页-添加文件页-添加完成(home_pdf_more_mer_add_fini_ck) - const val HOME_PDF_MORE_MER_EDIT_DEL = "home_pdf_more_mer_edit_del" // 合并编辑页-删除已选文件(home_pdf_more_mer_edit_del) - const val HOME_PDF_MORE_MER_EDIT_CONF_CK = "home_pdf_more_mer_edit_conf_ck" // 合并编辑页-点击合并(home_pdf_more_mer_edit_conf_ck) - const val HOME_PDF_MORE_MER_NAM_CONF_CK = "home_pdf_more_mer_nam_conf_ck" // 合并编辑页-确认合并命名(home_pdf_more_mer_nam_conf_ck) - const val HOME_PDF_MORE_MER_SUC = "home_pdf_more_mer_suc" // 合并成功(home_pdf_more_mer_suc) - const val HOME_PDF_MORE_MER_SHA_CK = "home_pdf_more_mer_sha_ck" // 合并成功页-点击分享按钮(home_pdf_more_mer_sha_ck) - const val HOME_PDF_MORE_MER_OPEN_CK = "home_pdf_more_mer_open_ck" // 合并成功页-点击打开文件按钮(home_pdf_more_mer_open_ck) - const val HOME_PDF_MORE_SPLIT_CK = "home_pdf_more_split_ck" // 点击拆分文件(home_pdf_more_split_ck) - const val HOME_PDF_MORE_SPLIT_SEL_ALL_CK = "home_pdf_more_split_sel_all_ck" // 选择页-全选按钮(home_pdf_more_split_sel_all_ck) - const val HOME_PDF_MORE_SPLIT_SEL_CONT_CK = "home_pdf_more_split_sel_cont_ck" // 选择页-确认选择PDF页(home_pdf_more_split_sel_cont_ck) - const val HOME_PDF_MORE_SPLIT_EDIT_ADD_CK = "home_pdf_more_split_edit_add_ck" // 拆分编辑页-点击右上角的添加按钮(home_pdf_more_split_edit_add_ck) - const val HOME_PDF_MORE_SPLIT_EDIT_ADD_FINI = "home_pdf_more_split_edit_add_fini" // 拆分编辑页-添加页-添加完成(home_pdf_more_split_edit_add_fini) - const val HOME_PDF_MORE_SPLIT_EDIT_RENA_CK = "home_pdf_more_split_edit_rena_ck" // 拆分编辑页-重命名文件(home_pdf_more_split_edit_rena_ck) - const val HOME_PDF_MORE_SPLIT_EDIT_RENA_CONF = "home_pdf_more_split_edit_rena_conf" // 拆分编辑页-确认重命名(home_pdf_more_split_edit_rena_conf) - const val HOME_PDF_MORE_SPLIT_EDIT_PAGE_DEL = "home_pdf_more_split_edit_page_del" // 拆分编辑页-删除已选PDF页(home_pdf_more_split_edit_page_del) - const val HOME_PDF_MORE_SPLIT_BACK_CK = "home_pdf_more_split_back_ck" // 拆分编辑页-点击返回(home_pdf_more_split_back_ck) - const val HOME_PDF_MORE_SPLIT_LEA_CANC = "home_pdf_more_split_lea_canc" // 拆分编辑页-取消放弃拆分(home_pdf_more_split_lea_canc) - const val HOME_PDF_MORE_SPLIT_LEA_CONF = "home_pdf_more_split_lea_conf" // 拆分编辑页-确认放弃拆分(home_pdf_more_split_lea_conf) - const val HOME_PDF_MORE_SPLIT_EDIT_CONF_CK = "home_pdf_more_split_edit_conf_ck" // 拆分编辑页-点击确认拆分(home_pdf_more_split_edit_conf_ck) - const val HOME_PDF_MORE_SPLIT_SUC = "home_pdf_more_split_suc" // 拆分-拆分成功(home_pdf_more_split_suc) - const val HOME_PDF_MORE_SPLIT_SHA_CK = "home_pdf_more_split_sha_ck" // 拆分成功页-点击分享按钮(home_pdf_more_split_sha_ck) - const val HOME_PDF_MORE_SPLIT_OPEN_CK = "home_pdf_more_split_open_ck" // 拆分成功页-点击打开文件按钮(home_pdf_more_split_open_ck) - const val HOME_PDF_MORE_PD_FTO_TU_CK = "home_pdf_more_pdfto_tu_ck" // 点击PDF转图片(home_pdf_more_pdfto_tu_ck) - const val HOME_PDF_MORE_PD_FTO_TU_SHA_CK = "home_pdf_more_pdfto_tu_sha_ck" // 点击分享(home_pdf_more_pdfto_tu_sha_ck) - const val HOME_PDF_MORE_PD_FTO_TU_CONF_CK = "home_pdf_more_pdfto_tu_conf_ck" // 确认转换(home_pdf_more_pdfto_tu_conf_ck) - const val HOME_PDF_MORE_PD_FTO_TU_SUC = "home_pdf_more_pdfto_tu_suc" // 转换成功(home_pdf_more_pdfto_tu_suc) - const val HOME_PDF_MORE_PD_FTO_CTU_CK = "home_pdf_more_pdfto_ctu_ck" // 点击PDF转长图(home_pdf_more_pdfto_ctu_ck) - const val HOME_PDF_MORE_PD_FTO_CTU_PREV_CK = "home_pdf_more_pdfto_ctu_prev_ck" // 进入预览页面(home_pdf_more_pdfto_ctu_prev_ck) - const val HOME_PDF_MORE_PD_FTO_CTU_SHA_CK = "home_pdf_more_pdfto_ctu_sha_ck" // 点击分享按钮(home_pdf_more_pdfto_ctu_sha_ck) - const val HOME_PDF_MORE_PD_FTO_CTU_CONF_CK = "home_pdf_more_pdfto_ctu_conf_ck" // 确认保存长图(home_pdf_more_pdfto_ctu_conf_ck) - const val HOME_PDF_MORE_PD_FTO_CTU_SUC = "home_pdf_more_pdfto_ctu_suc" // 转化成功(home_pdf_more_pdfto_ctu_suc) - const val HOME_DETA_CK = "home_deta_ck" // 点击文件详情按钮 - const val HOME_DETA_EXPA_CK = "home_deta_expa_ck" // 展开详情信息页 - const val HOME_DETA_COLSE_CK = "home_deta_colse_ck" // 关闭详细信息页 - const val HOME_DETA_RENA_CK = "home_deta_rena_ck" // 点击重命名 - const val HOME_DETA_RENA_CANC = "home_deta_rena_canc" // 取消重命名 - const val HOME_DETA_RENA_CONF = "home_deta_rena_conf" // 确认重命名 - const val HOME_DETA_RENA_SUC = "home_deta_rena_suc" // 重命名成功 - const val HOME_DETA_SHA_CK = "home_deta_sha_ck" // 点击分享按钮 - const val HOME_DETA_PRINT_CK = "home_deta_print_ck" // 点击打印按钮 - const val HOME_DETA_FAV_ADD = "home_deta_fav_add" // 添加喜欢 - const val HOME_DETA_FAV_REMO = "home_deta_fav_remo" // 取消喜欢 - const val HOME_DETA_COPY_CK = "home_deta_copy" // 点击复制文件按钮 - const val HOME_DETA_COPY_SUC = "home_deta_copy_suc" // 复制文件成功 - const val HOME_DETA_MER_CK = "home_deta_mer_ck" // 点击合并文件 - const val HOME_DETA_MER_SEL_SEA_CK = "home_deta_mer_sel_sea_ck" // 选择页-点击搜索 - const val HOME_DETA_MER_SEL_SEA_CONF = "home_deta_mer_sel_sea_conf" // 选择页-搜索页-确认添加文件 - const val HOME_DETA_MER_SEL_CONT_CK = "home_deta_mer_sel_cont_ck" // 选择页-点击持续按钮 - const val HOME_DETA_MER_EDIT_BACK_CK = "home_deta_mer_edit_back_ck" // 合并编辑页-点击返回 - const val HOME_DETA_MER_EDIT_LEA_CANC = "home_deta_mer_edit_lea_canc" // 合并编辑页-取消放弃合并 - const val HOME_DETA_MER_EDIT_LEA_CONF = "home_deta_mer_edit_lea_conf" // 合并编辑页-确认放弃合并 - const val HOME_DETA_MER_EDIT_ADD_CK = "home_deta_mer_edit_add_ck" // 合并编辑页-点击添加文件 - const val HOME_DETA_MER_ADD_SEA_CK = "home_deta_mer_add_sea_ck" // 合并编辑页-添加文件页-点击搜索 - const val HOME_DETA_MER_ADD_SEA_CONF = "home_deta_mer_add_sea_conf" // 合并编辑页-添加文件页-搜索页-确认添加文件 - const val HOME_DETA_MER_ADD_ADD_CK = "home_deta_mer_add_add_ck" // 合并编辑页-添加文件页-添加完成 - const val HOME_DETA_MER_EDIT_DEL = "home_deta_mer_edit_del" // 合并编辑页-删除已选文件 - const val HOME_DETA_MER_EDIT_CONF_CK = "home_deta_mer_edit_conf_ck" // 合并编辑页-点击合并 - const val HOME_DETA_MER_NAM_CONF_CK = "home_deta_mer_nam_conf_ck" // 合并编辑页-确认合并命名 - const val HOME_DETA_MER_SUC = "home_deta_mer_suc" // 合并成功 - const val HOME_DETA_MER_SHA_CK = "home_deta_mer_sha_ck" // 合并成功页-点击分享按钮 - const val HOME_DETA_MER_OPEN_CK = "home_deta_mer_open_ck" // 合并成功页-点击打开文件按钮 - const val HOME_DETA_SPLIT_CK = "home_deta_split_ck" // 点击拆分文件 - const val HOME_DETA_SPLIT_SEL_ALL_CK = "home_deta_split_sel_all_ck" // 选择页-全选按钮 - const val HOME_DETA_SPLIT_SEL_CONT_CK = "home_deta_split_sel_cont_ck" // 选择页-确认选择PDF页 - const val HOME_DETA_SPLIT_EDIT_ADD_CK = "home_deta_split_edit_add_ck" // 拆分编辑页-点击右上角的添加按钮 - const val HOME_DETA_SPLIT_EDIT_ADD_FINI = "home_deta_split_edit_add_fini" // 拆分编辑页-添加页-添加完成 - const val HOME_DETA_SPLIT_EDIT_RENA_CK = "home_deta_split_edit_rena_ck" // 拆分编辑页-重命名文件 - const val HOME_DETA_SPLIT_EDIT_RENA_CONF = "home_deta_split_edit_rena_conf" // 拆分编辑页-确认重命名 - const val HOME_DETA_SPLIT_EDIT_PAGE_DEL = "home_deta_split_edit_page_del" // 拆分编辑页-删除已选PDF页 - const val HOME_DETA_SPLIT_BACK_CK = "home_deta_split_back_ck" // 拆分编辑页-点击返回 - const val HOME_DET_SPLIT_LEA_CANC = "home_deta_split_lea_canc" // 拆分编辑页-取消放弃拆分 - const val HOME_DETA_SPLIT_LEA_CONF = "home_deta_split_lea_conf" // 拆分编辑页-确认放弃拆分 - const val HOME_DETA_SPLIT_EDIT_CONF_CK = "home_deta_split_edit_conf_ck" // 拆分编辑页-点击确认拆分 - const val HOME_DETA_SPLIT_SUC = "home_deta_split_suc" // 拆分-拆分成功 - const val HOME_DETA_SPLIT_SHA_CK = "home_deta_split_sha_ck" // 拆分成功页-点击分享按钮 - const val HOME_DETA_SPLIT_OPEN_CK = "home_deta_split_open_ck" // 拆分成功页-点击打开文件按钮 - const val HOME_DETA_PDFTO_TU_CK = "home_deta_pdfto_tu_ck" // 点击PDF转图片 - const val HOME_DETA_PDFTO_TU_SHA_CK = "home_deta_pdfto_tu_sha_ck" // 点击分享 - const val HOME_DETA_PDFTO_TU_CONF_CK = "home_deta_pdfto_tu_conf_ck" // 确认转换 - const val HOME_DETA_PDFTO_TU_SUC = "home_deta_pdfto_tu_suc" // 转换成功 - const val HOME_DETA_PDFTO_CTU_CK = "home_deta_pdfto_ctu_ck" // 点击PDF转长图 - const val HOME_DETA_PDFTO_CTU_PREV_CK = "home_deta_pdfto_ctu_prev_ck" // 进入预览页面 - const val HOME_DETA_PDFTO_CTU_SHA_CK = "home_deta_pdfto_ctu_sha_ck" // 点击分享按钮 - const val HOME_DETA_PDFTO_CTU_CONF_CK = "home_deta_pdfto_ctu_conf_ck" // 确认保存长图 - const val HOME_DETA_PDFTO_CTU_SUC = "home_deta_pdfto_ctu_suc" // 转化成功 - const val HOME_DETA_SET_PASW_CK = "home_deta_set_pasw_ck" // 点击设置密码 - const val HOME_DETA_SET_PASW_CONF_CK = "home_deta_set_pasw_conf_ck" // 确认设置密码 - const val HOME_DETA_SET_LOCK_SUC = "home_deta_set_lock_suc" // 文件锁定成功 - const val HOME_DETA_DEL_CK = "home_deta_del_ck" // 点击删除文件按钮 - const val HOME_DETA_DEL_CANC = "home_deta_del_canc" // 取消删除 - const val HOME_DETA_DEL_CONF = "home_deta_del_conf" // 确认删除 - const val HOME_DETA_DEL_SUC = "home_deta_del_suc" // 删除成功 - const val REC_CK = "rec_ck" // 点击最近图标 - const val REC_SEL_CK = "rec_sel_ck" // 进入文件选择状态 - const val REC_SEL_DEL_CK = "rec_sel_del_ck" // 发起删除请求 - const val REC_SEL_DEL_CANC = "rec_sel_del_canc" // 取消删除 - const val REC_SEL_DEL_CONF = "rec_sel_del_conf" // 确认删除 - const val REC_SEL_DEL_SUC = "rec_sel_del_suc" // 删除成功 - const val REC_SEL_REMO_CK = "rec_sel_remo_ck" // 点击移除按钮 - const val REC_SEL_REMO_CANC = "rec_sel_remo_canc" // 取消移除 - const val REC_SEL_REMO_CONF = "rec_sel_remo_conf" // 确认移除 - const val REC_SEL_REMO_SUC = "rec_sel_remo_suc" // 移除成功 - const val REC_SEL_MER_CK = "rec_sel_mer_ck" // 发起合并请求 - const val REC_SEL_MER_EDIT_BACK_CK = "rec_sel_mer_edit_back_ck" // 合并编辑页-点击返回 - const val REC_SEL_MER_EDIT_LEA_CANC = "rec_sel_mer_edit_lea_canc" // 合并编辑页-取消离开 - const val REC_SEL_MER_EDIT_LEA_CONF = "rec_sel_mer_edit_lea_conf" // 合并编辑页-确认离开 - const val REC_SEL_MER_EDIT_ADD_CK = "rec_sel_mer_edit_add_ck" // 合并编辑页-点击添加文件 - const val REC_SEL_MER_ADD_SEA_CK = "rec_sel_mer_add_sea_ck" // 合并编辑页-添加文件页-点击搜索 - const val REC_SEL_MER_ADD_SEA_CONF = "rec_sel_mer_add_sea_conf" // 合并编辑页-添加文件页-搜索页-确认添加文件 - const val REC_SEL_MER_ADD_FIN_CK = "rec_sel_mer_add_fin_ck" // 合并编辑页-添加文件页-添加完成 - const val REC_SEL_MER_EDIT_DEL = "rec_sel_mer_edit_del" // 合并编辑页-删除已选文件 - const val REC_SEL_MER_EDIT_CONF_CK = "rec_sel_mer_edit_conf_ck" // 合并编辑页-点击合并 - const val REC_SEL_MER_NAM_CONF_CK = "rec_sel_mer_nam_conf_ck" // 合并编辑页-确认合并命名 - const val REC_SEL_MER_SUC = "rec_sel_mer_suc" // 合并成功 - const val REC_SEL_MER_SHA_CK = "rec_sel_mer_sha_ck" // 合并成功页-点击分享按钮 - const val REC_SEL_MER_OPEN_CK = "rec_sel_mer_open_ck" // 合并成功页-点击打开文件按钮 - const val REC_SEL_SHA_CK = "rec_sel_sha_ck" // 点击分享按钮 - const val REC_SEA_CK = "rec_sea_ck" // 点击搜索 - const val REC_SEA_SUC = "rec_sea_suc" // 提交搜索请求 - const val REC_PDF_OPEN = "rec_pdf_open" // 进入PDF内容页 - const val REC_PDF_BACK = "rec_pdf_back" // 退出PDF内容页 - const val REC_PDF_VIEW_MODE_CK = "rec_pdf_view_mode_ck" // 点击浏览模式按钮 - const val PDF_VIEW_DIRE_SEL = "pdf_view_dire_sel" // 选择浏览方向 - const val PDF_VIEW_PAGE_MODE_SEL = "pdf_view_page_mode_sel" // 选择页面浏览模式 - const val PDF_VIEW_PAGE_COLOR_SEL = "pdf_view_page_color_sel" // 选择页面颜色 - const val REC_PDF_MARK_CK = "rec_pdf_mark_ck" // 点击标签按钮 - const val REC_PDF_MARK_ADD_CK = "rec_pdf_mark_add_ck" // 进入书签编辑页 - const val REC_PDF_MARK_EDIT_ADD_PAGE_CK = "rec_pdf_mark_edit_add_page_ck" // 添加更多页面 - const val REC_PDF_MARK_EDIT_RENA_CK = "rec_pdf_mark_edit_rena_ck" // 发起重命名书签 - const val REC_PDF_MARK_EDIT_RENA_CANC = "rec_pdf_mark_edit_rena_canc" // 取消重命名书签 - const val REC_PDF_MARK_EDIT_RENA_CONF = "rec_pdf_mark_edit_rena_conf" // 确认重命名书签 - const val REC_PDF_MARK_EDIT_PAGE_DEL = "rec_pdf_mark_edit_page_del" // 删除单个书签页 - const val REC_PDF_MARK_EDIT_DEL_ALL_CK = "rec_pdf_mark_edit_del_all_ck" // 发起删除全部书签 - const val REC_PDF_MARK_EDIT_DEL_ALL_CANC = "rec_pdf_mark_edit_del_all_canc" // 取消删除全部书签 - const val REC_PDF_MARK_EDIT_DEL_ALL_CONF = "rec_pdf_mark_edit_del_all_conf" // 确认删除全部书签 - const val REC_PDF_EYE_PRO_CK = "rec_pdf_eye_pro_ck" // 点击护眼模式 - const val REC_PDF_SHA_CK = "rec_pdf_sha_ck" // 点击分享 - const val REC_PDF_MORE_CK = "rec_pdf_more_ck" // 点击更多按钮 - const val REC_PDF_MORE_EXPA_CK = "rec_pdf_more_expa_ck" // 展开详情信息页 - const val REC_PDF_MORE_COLSE_CK = "rec_pdf_more_colse_ck" // 关闭详细信息页 - const val REC_PDF_MORE_RENA_CK = "rec_pdf_more_rena_ck" // 点击重命名 - const val REC_PDF_MORE_RENA_CANC = "rec_pdf_more_rena_canc" // 取消重命名 - const val REC_PDF_MORE_RENA_CONF = "rec_pdf_more_rena_conf" // 确认重命名 - const val REC_PDF_MORE_RENA_SUC = "rec_pdf_more_rena_suc" // 重命名成功 - const val REC_PDF_MORE_SHA_CK = "rec_pdf_more_sha_ck" // 点击分享按钮 - const val REC_PDF_MORE_PRINT_CK = "rec_pdf_more_print_ck" // 点击打印按钮 - const val REC_PDF_MORE_FAV_ADD = "rec_pdf_more_fav_add" // 添加喜欢 - const val REC_PDF_MORE_FAV_REMO = "rec_pdf_more_fav_remo" // 取消喜欢 - const val REC_PDF_MORE_PAGE_JUM_CK = "rec_pdf_more_page_jum_ck" // 点击跳转页数按钮 - const val REC_PDF_MORE_PAGE_JUM_CANC = "rec_pdf_more_page_jum_canc" // 取消跳转 - const val REC_PDF_MORE_PAGE_JUM_CONF = "rec_pdf_more_page_jum_conf" // 确认跳转 - const val REC_PDF_MORE_PAGE_JUM_SUC = "rec_pdf_more_page_jum_suc" // 跳转成功 - const val REC_PDF_MORE_COPY = "rec_pdf_morel_copy" // 点击复制文件按钮 - const val REC_PDF_MORE_COPY_SUC = "rec_pdf_more_copy_suc" // 复制文件成功 - const val REC_PDF_MORE_MER_CK = "rec_pdf_more_mer_ck" // 点击合并文件 - const val REC_PDF_MORE_MER_SEL_SEA_CK = "rec_pdf_more_mer_sel_sea_ck" // 选择页-点击搜索 - const val REC_PDF_MORE_MER_SEL_SEA_CONF = "rec_pdf_more_mer_sel_sea_conf" // 选择页-搜索页-确认添加文件 - const val REC_PDF_MORE_MER_SEL_CONT_CK = "rec_pdf_more_mer_sel_cont_ck" // 选择页-点击持续按钮 - const val REC_PDF_MORE_MER_EDIT_BACK_CK = "rec_pdf_more_mer_edit_back_ck" // 合并编辑页-点击返回 - const val REC_PDF_MORE_MER_EDIT_LEA_CANC = "rec_pdf_more_mer_edit_lea_canc" // 合并编辑页-取消放弃合并 - const val REC_PDF_MORE_MER_EDIT_LEA_CONF = "rec_pdf_more_mer_edit_lea_conf" // 合并编辑页-确认放弃合并 - const val REC_PDF_MORE_MER_EDIT_ADD_CK = "rec_pdf_more_mer_edit_add_ck" // 合并编辑页-点击添加文件 - const val REC_PDF_MORE_MER_ADD_SEA_CK = "rec_pdf_more_mer_add_sea_ck" // 合并编辑页-添加文件页-点击搜索 - const val REC_PDF_MORE_MER_ADD_SEA_CONF = "rec_pdf_more_mer_add_sea_conf" // 合并编辑页-添加文件页-搜索页-确认添加文件 - const val REC_PDF_MORE_MER_ADD_FINI_CK = "rec_pdf_more_mer_add_fini_ck" // 合并编辑页-添加文件页-添加完成 - const val REC_PDF_MORE_MER_EDIT_DEL = "rec_pdf_more_mer_edit_del" // 合并编辑页-删除已选文件 - const val REC_PDF_MORE_MER_EDIT_CONF_CK = "rec_pdf_more_mer_edit_conf_ck" // 合并编辑页-点击合并 - const val REC_PDF_MORE_MER_NAM_CONF_CK = "rec_pdf_more_mer_nam_conf_ck" // 合并编辑页-确认合并命名 - const val REC_PDF_MORE_MER_SUC = "rec_pdf_more_mer_suc" // 合并成功 - const val REC_PDF_MORE_MER_SHA_CK = "rec_pdf_more_mer_sha_ck" // 合并成功页-点击分享按钮 - const val REC_PDF_MORE_MER_OPEN_CK = "rec_pdf_more_mer_open_ck" // 合并成功页-点击打开文件按钮 - const val REC_PDF_MORE_SPLIT_CK = "rec_pdf_more_split_ck" // 点击拆分文件 - const val REC_PDF_MORE_SPLIT_SEL_ALL_CK = "rec_pdf_more_split_sel_all_ck" // 选择页-全选按钮 - const val REC_PDF_MORE_SPLIT_SEL_CONT_CK = "rec_pdf_more_split_sel_cont_ck" // 选择页-确认选择PDF页 - const val REC_PDF_MORE_SPLIT_EDIT_ADD_CK = "rec_pdf_more_split_edit_add_ck" // 拆分编辑页-点击右上角的添加按钮 - const val REC_PDF_MORE_SPLIT_EDIT_ADD_FINI = "rec_pdf_more_split_edit_add_fini" // 拆分编辑页-添加页-添加完成 - const val REC_PDF_MORE_SPLIT_EDIT_RENA_CK = "rec_pdf_more_split_edit_rena_ck" // 拆分编辑页-重命名文件 - const val REC_PDF_MORE_SPLIT_EDIT_RENA_CONF = "rec_pdf_more_split_edit_rena_conf" // 拆分编辑页-确认重命名 - const val REC_PDF_MORE_SPLIT_EDIT_PAGE_DEL = "rec_pdf_more_split_edit_page_del" // 拆分编辑页-删除已选PDF页 - const val REC_PDF_MORE_SPLIT_BACK_CK = "rec_pdf_more_split_back_ck" // 拆分编辑页-点击返回 - const val REC_PDF_MORE_SPLIT_LEA_CANC = "rec_pdf_more_split_lea_canc" // 拆分编辑页-取消放弃拆分 - const val REC_PDF_MORE_SPLIT_LEA_CONF = "rec_pdf_more_split_lea_conf" // 拆分编辑页-确认放弃拆分 - const val REC_PDF_MORE_SPLIT_CONF_CK = "rec_pdf_more_split_conf_ck" // 拆分编辑页-点击确认拆分 - const val REC_PDF_MORE_SPLIT_SUC = "rec_pdf_more_split_suc" // 拆分-拆分成功 - const val REC_PDF_MORE_SPLIT_SHA_CK = "rec_pdf_more_split_sha_ck" // 拆分成功页-点击分享按钮 - const val REC_PDF_MORE_SPLIT_OPEN_CK = "rec_pdf_more_split_open_ck" // 拆分成功页-点击打开文件按钮 - const val REC_PDF_MORE_PDFTO_TU_CK = "rec_pdf_more_pdfto_tu_ck" // 点击PDF转图片 - const val REC_PDF_MORE_PDFTO_TU_SHA_CK = "rec_pdf_more_pdfto_tu_sha_ck" // 点击分享 - const val REC_PDF_MORE_PDFTO_TU_CONF_CK = "rec_pdf_more_pdfto_tu_conf_ck" // 确认转换 - const val REC_PDF_MORE_PDFTO_TU_SUC = "rec_pdf_more_pdfto_tu_suc" // 转换成功 - const val REC_PDF_MORE_PDFTO_CTU_CK = "rec_pdf_more_pdfto_ctu_ck" // 点击PDF转长图 - const val REC_PDF_MORE_PDFTO_CTU_PREVIEW_CK = "rec_pdf_more_pdfto_ctu_preview_ck" // 进入预览页面 - const val REC_PDF_MORE_PDFTO_CTU_SHA_CK = "rec_pdf_more_pdfto_ctu_sha_ck" // 点击分享按钮 - const val REC_PDF_MORE_PDFTO_CTU_CONF_CK = "rec_pdf_more_pdfto_ctu_conf_ck" // 确认保存长图 - const val REC_PDF_MORE_PDFTO_CTU_SUC = "rec_pdf_more_pdfto_ctu_suc" // 转化成功 - const val REC_DETA_CK = "rec_deta_ck" // 点击文件详情按钮 - const val REC_DETA_EXPA_CK = "rec_deta_expa_ck" // 展开详情信息页 - const val REC_DETA_COLSE_CK = "rec_deta_colse_ck" // 关闭详细信息页 - const val REC_DETA_RENA_CK = "rec_deta_rena_ck" // 点击重命名 - const val REC_DETA_RENA_CANC = "rec_deta_rena_canc" // 取消重命名 - const val REC_DETA_RENA_CONF = "rec_deta_rena_conf" // 确认重命名 - const val REC_DETA_RENA_SUC = "rec_deta_rena_suc" // 重命名成功 - const val REC_DETA_SHA_CK = "rec_deta_sha_ck" // 点击分享按钮 - const val REC_DETA_PRINT_CK = "rec_deta_print_ck" // 点击打印按钮 - const val REC_DETA_FAV_ADD = "rec_deta_fav_add" // 添加喜欢 - const val REC_DETA_FAV_REMO = "rec_deta_fav_remo" // 取消喜欢 - const val REC_DETA_MER_CK = "rec_deta_mer_ck" // 点击合并文件 - const val REC_DETA_MER_SEL_SEA_CK = "rec_deta_mer_sel_sea_ck" // 选择页-点击搜索 - const val REC_DETA_MER_SEL_SEA_CONF = "rec_deta_mer_sel_sea_conf" // 选择页-搜索页-确认添加文件 - const val REC_DETA_MER_SEL_CONT_CK = "rec_deta_mer_sel_cont_ck" // 选择页-点击持续按钮 - const val REC_DETA_MER_EDIT_BACK_CK = "rec_deta_mer_edit_back_ck" // 合并编辑页-点击返回 - const val REC_DETA_MER_EDIT_LEA_CANC = "rec_deta_mer_edit_lea_canc" // 合并编辑页-取消放弃合并 - const val REC_DETA_MER_EDIT_LEA_CONF = "rec_deta_mer_edit_lea_conf" // 合并编辑页-确认放弃合并 - const val REC_DETA_MER_EDIT_ADD_CK = "rec_deta_mer_edit_add_ck" // 合并编辑页-点击添加文件 - const val REC_DETA_MER_ADD_SEA_CK = "rec_deta_mer_add_sea_ck" // 合并编辑页-添加文件页-点击搜索 - const val REC_DETA_MER_ADD_SEA_CONF = "rec_deta_mer_add_sea_conf" // 合并编辑页-添加文件页-搜索页-确认添加文件 - const val REC_DETA_MER_ADD_FINI_CK = "rec_deta_mer_add_fini_ck" // 合并编辑页-添加文件页-添加完成 - const val REC_DETA_MER_EDIT_DEL = "rec_deta_mer_edit_del" // 合并编辑页-删除已选文件 - const val REC_DETA_MER_EDIT_CONF_CK = "rec_deta_mer_edit_conf_ck" // 合并编辑页-点击合并 - const val REC_DETA_MER_NAM_CONF_CK = "rec_deta_mer_nam_conf_ck" // 合并编辑页-确认合并命名 - const val REC_DETA_MER_SUC = "rec_deta_mer_suc" // 合并成功 - const val REC_DETA_MER_SHA_CK = "rec_deta_mer_sha_ck" // 合并成功页-点击分享按钮 - const val REC_DETA_MER_OPEN_CK = "rec_deta_mer_open_ck" // 合并成功页-点击打开文件按钮 - const val REC_DETA_SPLIT_CK = "rec_deta_split_ck" // 点击拆分文件 - const val REC_DETA_SPLIT_SEL_ALL_CK = "rec_deta_split_sel_all_ck" // 选择页-全选按钮 - const val REC_DETA_SPLIT_SEL_CONT_CK = "rec_deta_split_sel_cont_ck" // 选择页-确认选择PDF页 - const val REC_DETA_SPLIT_EDIT_ADD_CK = "rec_deta_split_edit_add_ck" // 拆分编辑页-点击右上角的添加按钮 - const val REC_DETA_SPLIT_EDIT_ADD_FINI = "rec_deta_split_edit_add_fini" // 拆分编辑页-添加页-添加完成 - const val REC_DETA_SPLIT_EDIT_RENA_CK = "rec_deta_split_edit_rena_ck" // 拆分编辑页-重命名文件 - const val REC_DETA_SPLIT_EDIT_RENA_CONF = "rec_deta_split_edit_rena_conf" // 拆分编辑页-确认重命名 - const val REC_DETA_SPLIT_EDIT_PAGE_DEL = "rec_deta_split_edit_page_del" // 拆分编辑页-删除已选PDF页 - const val REC_DETA_SPLIT_BACK_CK = "rec_deta_split_back_ck" // 拆分编辑页-点击返回 - const val REC_DETA_SPLIT_LEA_CANC = "rec_deta_split_lea_canc" // 拆分编辑页-取消放弃拆分 - const val REC_DETA_SPLIT_LEA_CONF = "rec_deta_split_lea_conf" // 拆分编辑页-确认放弃拆分 - const val REC_DETA_SPLIT_EDIT_CONF_CK = "rec_deta_split_edit_conf_ck" // 拆分编辑页-点击确认拆分 - const val REC_DETA_SPLIT_SUC = "rec_deta_split_suc" // 拆分-拆分成功 - const val REC_DETA_SPLIT_SHA_CK = "rec_deta_split_sha_ck" // 拆分成功页-点击分享按钮 - const val REC_DETA_SPLIT_OPEN_CK = "rec_deta_split_open_ck" // 拆分成功页-点击打开文件按钮 - const val REC_DETA_PDFTO_TU_CK = "rec_deta_pdfto_tu_ck" // 点击PDF转图片 - const val REC_DETA_PDFTO_TU_SHA_CK = "rec_deta_pdfto_tu_sha_ck" // 点击分享 - const val REC_DETA_PDFTO_TU_CONF_CK = "rec_deta_pdfto_tu_conf_ck" // 确认转换 - const val REC_DETA_PDFTO_TU_SUC = "rec_deta_pdfto_tu_suc" // 转换成功 - const val REC_DETA_PDFTO_CTU_CK = "rec_deta_pdfto_ctu_ck" // 点击PDF转长图 - const val REC_DETA_PDFTO_CTU_PREV_CK = "rec_deta_pdfto_ctu_prev_ck" // 进入预览页面 - const val REC_DETA_PDFTO_CTU_SHA_CK = "rec_deta_pdfto_ctu_sha_ck" // 点击分享按钮 - const val REC_DETA_PDFTO_CTU_CONF_CK = "rec_deta_pdfto_ctu_conf_ck" // 确认保存长图 - const val REC_DETA_PDFTO_CTU_SUC = "rec_deta_pdfto_ctu_suc" // 转化成功 - const val REC_DETA_SET_PASW_CK = "rec_deta_set_pasw_ck" // 点击设置密码 - const val REC_DETA_SET_PASW_CONF_CK = "rec_deta_set_pasw_conf_ck" // 确认设置密码 - const val REC_DETA_LOCK_SUC = "rec_deta_lock_suc" // 文件锁定成功 - const val REC_DETA_REMO_INITIATE = "rec_deta_remo_initiate" // 点击移除按钮 - const val REC_DETA_REMO_CANC = "rec_deta_remo_canc" // 取消移除 - const val REC_DETA_REMO_CONF = "rec_deta_remo_conf" // 确认移除 - const val REC_DETA_REMO_SUC = "rec_deta_remo_suc" // 移除成功 - const val REC_DETA_DEL_CK = "rec_deta_del_ck" // 点击删除文件按钮 - const val REC_DETA_DEL_CANC = "rec_deta_del_canc" // 取消删除 - const val REC_DETA_DEL_CONF = "rec_deta_del_conf" // 确认删除 - const val REC_DETA_DEL_SUC = "rec_deta_del_suc" // 删除成功 - const val FAV_CK = "fav_ck" // 点击喜欢按钮 - const val FAV_SEL_CK = "fav_sel_ck" // 进入文件选择状态 - const val FAV_SEL_DEL_CK = "fav_sel_del_ck" // 发起删除请求 - const val FAV_SEL_DEL_CANC = "fav_sel_del_canc" // 取消删除 - const val FAV_SEL_DEL_CONF = "fav_sel_del_conf" // 确认删除 - const val FAV_SEL_DEL_SUC = "fav_sel_del_suc" // 删除成功 - const val FAV_SEL_CANC = "fav_sel_canc" // 点击取消喜欢 - const val FAV_SEL_CANC_SUC = "fav_sel_canc_suc" // 取消喜欢成功 - const val FAV_SEL_MER_CK = "fav_sel_mer_ck" // 发起合并请求 - const val FAV_SEL_MER_EDIT_BACK_CK = "fav_sel_mer_edit_back_ck" // 合并编辑页-点击返回 - const val FAV_SEL_MER_EDIT_LEA_CANC = "fav_sel_mer_edit_lea_canc" // 合并编辑页-取消离开 - const val FAV_SEL_MER_EDIT_LEA_CONF = "fav_sel_mer_edit_lea_conf" // 合并编辑页-确认离开 - const val FAV_SEL_MER_EDIT_ADD_CK = "fav_sel_mer_edit_add_ck" // 合并编辑页-点击添加文件 - const val FAV_SEL_MER_ADD_SEA_CK = "fav_sel_mer_add_sea_ck" // 合并编辑页-添加文件页-点击搜索 - const val FAV_SEL_MER_ADD_SEA_CONF = "fav_sel_mer_add_sea_conf" // 合并编辑页-添加文件页-搜索页-确认添加文件 - const val FAV_SEL_MER_ADD_FINI_CK = "fav_sel_mer_add_fini_ck" // 合并编辑页-添加文件页-添加完成 - const val FAV_SEL_MER_EDIT_DEL = "fav_sel_mer_edit_del" // 合并编辑页-删除已选文件 - const val FAV_SEL_MER_EDIT_CONF_CK = "fav_sel_mer_edit_conf_ck" // 合并编辑页-点击合并 - const val FAV_SEL_MER_NAM_CONF_CK = "fav_sel_mer_nam_conf_ck" // 合并编辑页-确认合并命名 - const val FAV_SEL_MER_SUC = "fav_sel_mer_suc" // 合并成功 - const val FAV_SEL_MER_SHA_CK = "fav_sel_mer_sha_ck" // 合并成功页-点击分享按钮 - const val FAV_SEL_MER_OPEN_CK = "fav_sel_mer_open_ck" // 合并成功页-点击打开文件按钮 - const val FAV_SHA_CK = "fav_sha_ck" // 点击分享按钮 - const val FAV_SEA_CK = "fav_sea_ck" // 点击搜索 - const val FAV_SEA_SUC = "fav_sea_suc" // 提交搜索请求 - const val FAV_SORT_CK = "fav_sort_ck" // 点击排序按钮 - const val FAV_SORT_CONF = "fav_sort_conf" // 确认排序规则 - const val FAV_PDF_OPEN = "fav_pdf_open" // 进入PDF内容页 - const val FAV_PDF_BACK = "fav_pdf_back" // 退出PDF内容页 - const val FAV_PDF_VIEW_MODE_CK = "fav_pdf_view_mode_ck" // 点击浏览模式按钮 - const val FAV_PDF_VIEW_DIRE_SEL = "fav_pdf_view_dire_sel" // 选择浏览方向 - const val FAV_PDF_VIEW_PAGE_MODE_SEL = "fav_pdf_view_page_mode_sel" // 选择页面浏览模式 - const val FAV_PDF_VIEW_PAGE_COLOR_SEL = "fav_pdf_view_page_color_sel" // 选择页面颜色 - const val FAV_PDF_MARK_CK = "fav_pdf_mark_ck" // 点击标签按钮 - const val FAV_PDF_MARK_ADD_CK = "fav_pdf_mark_add_ck" // 进入书签编辑页 - const val FAV_PDF_MARK_EDIT_ADD_CK = "fav_pdf_mark_edit_add_ck" // 添加更多页面 - const val FAV_PDF_MARK_EDIT_RENA_CK = "fav_pdf_mark_edit_rena_ck" // 发起重命名书签 - const val FAV_PDF_MARK_EDIT_RENA_CANC = "fav_pdf_mark_edit_rena_canc" // 取消重命名书签 - const val FAV_PDF_MARK_EDIT_RENA_CONF = "fav_pdf_mark_edit_rena_conf" // 确认重命名书签 - const val FAV_PDF_MARK_EDIT_PAGE_DEL = "fav_pdf_mark_edit_page_del" // 删除单个书签页 - const val FAV_PDF_MARK_EDIT_DEL_ALL_CK = "fav_pdf_mark_edit_del_all_ck" // 发起删除全部书签 - const val FAV_PDF_MARK_EDIT_DEL_ALL_CANC = "fav_pdf_mark_edit_del_all_canc" // 取消删除全部书签 - const val FAV_PDF_MARK_EDIT_DEL_ALL_CONF = "fav_pdf_mark_edit_del_all_conf" // 确认删除全部书签 - const val FAV_PDF_EYE_PRO_CK = "fav_pdf_eye_pro_ck" // 点击护眼模式 - const val FAV_PDF_SHA_CK = "fav_pdf_sha_ck" // 点击分享 - const val FAV_PDF_MORE_CK = "fav_pdf_more_ck" // 点击更多按钮 - const val FAV_PDF_MORE_EXPA_CK = "fav_pdf_more_expa_ck" // 展开详情信息页 - const val FAV_PDF_MORE_COLSE_CK = "fav_pdf_more_colse_ck" // 关闭详细信息页 - const val FAV_PDF_MORE_RENA_CK = "fav_pdf_more_rena_ck" // 点击重命名 - const val FAV_PDF_MORE_RENA_CANC = "fav_pdf_more_rena_canc" // 取消重命名 - const val FAV_PDF_MORE_RENA_CONF = "fav_pdf_more_rena_conf" // 确认重命名 - const val FAV_PDF_MORE_RENA_SUC = "fav_pdf_more_rena_suc" // 重命名成功 - const val FAV_PDF_MORE_SHA_CK = "fav_pdf_more_sha_ck" // 点击分享按钮 - const val FAV_PDF_MORE_PRINT_CK = "fav_pdf_more_print_ck" // 点击打印按钮 - const val FAV_PDF_MORE_UNFAV_CK = "fav_pdf_more_unfav_ck" // 点击取消喜欢 - const val FAV_PDF_MORE_PAGE_JUM_CK = "fav_pdf_more_page_jum_ck" // 点击跳转页数按钮 - const val FAV_PDF_MORE_PAGE_JUM_CANC = "fav_pdf_more_page_jum_canc" // 取消跳转 - const val FAV_PDF_MORE_PAGE_JUM_CONF = "fav_pdf_more_page_jum_conf" // 确认跳转 - const val FAV_PDF_MORE_PAGE_JUM_SUC = "fav_pdf_more_page_jum_suc" // 跳转成功 - const val FAV_PDF_MORE_COPY = "fav_pdf_more_copy" // 点击复制文件 - const val FAV_PDF_MORE_COPY_SUC = "fav_pdf_more_copy_suc" // 复制文件成功 - const val FAV_PDF_MORE_MER_CK = "fav_pdf_more_mer_ck" // 点击合并文件 - const val FAV_PDF_MORE_MER_SEL_SEA_CK = "fav_pdf_more_mer_sel_sea_ck" // 选择页-点击搜索 - const val FAV_PDF_MORE_MER_SEL_SEA_CONF = "fav_pdf_more_mer_sel_sea_conf" // 选择页-搜索页-确认添加文件 - const val FAV_PDF_MORE_MER_SEL_CONT_CK = "fav_pdf_more_mer_sel_cont_ck" // 选择页-点击持续按钮 - const val FAV_PDF_MORE_MER_EDIT_BACK_CK = "fav_pdf_more_mer_edit_back_ck" // 合并编辑页-点击返回 - const val FAV_PDF_MORE_MER_EDIT_LEA_CANC = "fav_pdf_more_mer_edit_lea_canc" // 合并编辑页-取消放弃合并 - const val FAV_PDF_MORE_MER_EDIT_LEA_CONF = "fav_pdf_more_mer_edit_lea_conf" // 合并编辑页-确认放弃合并 - const val FAV_PDF_MORE_MER_EDIT_ADD_CK = "fav_pdf_more_mer_edit_add_ck" // 合并编辑页-点击添加文件 - const val FAV_PDF_MORE_MER_ADD_SEA_CK = "fav_pdf_more_mer_add_sea_ck" // 合并编辑页-添加文件页-点击搜索 - const val FAV_PDF_MORE_MER_ADD_SEA_CONF = "fav_pdf_more_mer_add_sea_conf" // 合并编辑页-添加文件页-搜索页-确认添加文件 - const val FAV_PDF_MORE_MER_ADD_FINI_CK = "fav_pdf_more_mer_add_fini_ck" // 合并编辑页-添加文件页-添加完成 - const val FAV_PDF_MORE_MER_EDIT_DEL = "fav_pdf_more_mer_edit_del" // 合并编辑页-删除已选文件 - const val FAV_PDF_MORE_MER_EDIT_CONF_CK = "fav_pdf_more_mer_edit_conf_ck" // 合并编辑页-点击合并 - const val FAV_PDF_MORE_MER_NAM_CONF_CK = "fav_pdf_more_mer_nam_conf_ck" // 合并编辑页-确认合并命名 - const val FAV_PDF_MORE_MER_SUC = "fav_pdf_more_mer_suc" // 合并成功 - const val FAV_PDF_MORE_MER_SHA_CK = "fav_pdf_more_mer_sha_ck" // 合并成功页-点击分享按钮 - const val FAV_PDF_MORE_MER_OPEN_CK = "fav_pdf_more_mer_open_ck" // 合并成功页-点击打开文件按钮 - const val FAV_PDF_MORE_SPLIT_CK = "fav_pdf_more_split_ck" // 点击拆分文件 - const val FAV_PDF_MORE_SPLIT_SEL_ALL_CK = "fav_pdf_more_split_sel_all_ck" // 选择页-全选按钮 - const val FAV_PDF_MORE_SPLIT_SEL_CONT_CK = "fav_pdf_more_split_sel_cont_ck" // 选择页-确认选择PDF页 - const val FAV_PDF_MORE_SPLIT_EDIT_ADD_CK = "fav_pdf_more_split_edit_add_ck" // 拆分编辑页-点击右上角的添加按钮 - const val FAV_PDF_MORE_SPLIT_EDIT_ADD_FINI = "fav_pdf_more_split_edit_add_fini" // 拆分编辑页-添加页-添加完成 - const val FAV_PDF_MORE_SPLIT_EDIT_RENA_CK = "fav_pdf_more_split_edit_rena_ck" // 拆分编辑页-重命名文件 - const val FAV_PDF_MORE_SPLIT_EDIT_RENA_CONF = "fav_pdf_more_split_edit_rena_conf" // 拆分编辑页-确认重命名 - const val FAV_PDF_MORE_SPLIT_EDIT_PAGE_DEL = "fav_pdf_more_split_edit_page_del" // 拆分编辑页-删除已选PDF页 - const val FAV_PDF_MORE_SPLIT_BACK_CK = "fav_pdf_more_split_back_ck" // 拆分编辑页-点击返回 - const val FAV_PDF_MORE_SPLIT_LEA_CANC = "fav_pdf_more_split_lea_canc" // 拆分编辑页-取消放弃拆分 - const val FAV_PDF_MORE_SPLIT_LEA_CONF = "fav_pdf_more_split_lea_conf" // 拆分编辑页-确认放弃拆分 - const val FAV_PDF_MORE_SPLIT_EDIT_CONF_CK = "fav_pdf_more_split_edit_conf_ck" // 拆分编辑页-点击确认拆分 - const val FAV_PDF_MORE_SPLIT_SUC = "fav_pdf_more_split_suc" // 拆分-拆分成功 - const val FAV_PDF_MORE_SPLIT_SHA_CK = "fav_pdf_more_split_sha_ck" // 拆分成功页-点击分享按钮 - const val FAV_PDF_MORE_SPLIT_OPEN_CK = "fav_pdf_more_split_open_ck" // 拆分成功页-点击打开文件按钮 - const val FAV_PDF_MORE_PDFF_TO_TU_CK = "fav_pdf_more_pdfto_tu_ck" // 点击PDF转图片 - const val FAV_PDF_MORE_PDFF_TO_TU_SHA_CK = "fav_pdf_more_pdfto_tu_sha_ck" // 点击分享 - const val FAV_PDF_MORE_PDFF_TO_TU_CONF_CK = "fav_pdf_more_pdfto_tu_conf_ck" // 确认转换 - const val FAV_PDF_MORE_PDFF_TO_TU_SUC = "fav_pdf_more_pdfto_tu_suc" // 转换成功 - const val FAV_PDF_MORE_PDFF_TO_CTU_CK = "fav_pdf_more_pdfto_ctu_ck" // 点击PDF转长图 - const val FAV_PDF_MORE_PDFF_TO_CTU_PREVIEW_CK = "fav_pdf_more_pdfto_ctu_preview_ck" // 进入预览页面 - const val FAV_PDF_MORE_PDFF_TO_CTU_SHA_CK = "fav_pdf_more_pdfto_ctu_sha_ck" // 点击分享按钮 - const val FAV_PDF_MORE_PDFF_TO_CTU_CONF_CK = "fav_pdf_more_pdfto_ctu_conf_ck" // 确认保存长图 - const val FAV_PDF_MORE_PDFF_TO_CTU_SUC = "fav_pdf_more_pdfto_ctu_suc" // 转化成功 - const val FAV_DETA_CK = "fav_deta_ck" // 点击文件详情按钮 - const val FAV_DETA_EXPA_CK = "fav_deta_expa_ck" // 展开详情信息页 - const val FAV_DETA_COLSE_CK = "fav_deta_colse_ck" // 关闭详细信息页 - const val FAV_DETA_RENA_CK = "fav_deta_rena_ck" // 点击重命名 - const val FAV_DETA_RENA_CANC = "fav_deta_rena_canc" // 取消重命名 - const val FAV_DETA_RENA_CONF = "fav_deta_rena_conf" // 确认重命名 - const val FAV_DETA_RENA_SUC = "fav_deta_rena_suc" // 重命名成功 - const val FAV_DETA_SHA_CK = "fav_deta_sha_ck" // 点击分享按钮 - const val FAV_DETA_PRINT_CK = "fav_deta_print_ck" // 点击打印按钮 - const val FAV_DETA_UNFAV_CK = "fav_deta_unfav_ck" // 点击取消喜欢按钮 - const val FAV_DETA_COPY = "fav_deta_copy" // 点击复制文件按钮 - const val FAV_DETA_COPY_SUC = "fav_deta_copy_suc" // 复制文件成功 - const val FAV_DETA_MER_CK = "fav_deta_mer_ck" // 点击合并文件 - const val FAV_DETA_MER_SEL_SEA_CK = "fav_deta_mer_sel_sea_ck" // 选择页-点击搜索 - const val FAV_DETA_MER_SEL_SEA_CONF = "fav_deta_mer_sel_sea_conf" // 选择页-搜索页-确认添加文件 - const val FAV_DETA_MER_SEL_CONT_CK = "fav_deta_mer_sel_cont_ck" // 选择页-点击持续按钮 - const val FAV_DETA_MER_EDIT_BACK_CK = "fav_deta_mer_edit_back_ck" // 合并编辑页-点击返回 - const val FAV_DETA_MER_EDIT_LEA_CANC = "fav_deta_mer_edit_lea_canc" // 合并编辑页-取消放弃合并 - const val FAV_DETA_MER_EDIT_LEA_CONF = "fav_deta_mer_edit_lea_conf" // 合并编辑页-确认放弃合并 - const val FAV_DETA_MER_EDIT_ADD_CK = "fav_deta_mer_edit_add_ck" // 合并编辑页-点击添加文件 - const val FAV_DETA_MER_ADD_SEA_CK = "fav_deta_mer_add_sea_ck" // 合并编辑页-添加文件页-点击搜索 - const val FAV_DETA_MER_ADD_SEA_CONF = "fav_deta_mer_add_sea_conf" // 合并编辑页-添加文件页-搜索页-确认添加文件 - const val FAV_DETA_MER_ADD_FINI_CK = "fav_deta_mer_add_fini_ck" // 合并编辑页-添加文件页-添加完成 - const val FAV_DETA_MER_EDIT_DEL = "fav_deta_mer_edit_del" // 合并编辑页-删除已选文件 - const val FAV_DETA_MER_EDIT_CONF_CK = "fav_deta_mer_edit_conf_ck" // 合并编辑页-点击合并 - const val FAV_DETA_MER_NAM_CONF_CK = "fav_deta_mer_nam_conf_ck" // 合并编辑页-确认合并命名 - const val FAV_DETA_MER_SUC = "fav_deta_mer_suc" // 合并成功 - const val FAV_DETA_MER_SHA_CK = "fav_deta_mer_sha_ck" // 合并成功页-点击分享按钮 - const val FAV_DETA_MER_OPEN_CK = "fav_deta_mer_open_ck" // 合并成功页-点击打开文件按钮 - const val FAV_DETA_SPLIT_CK = "fav_deta_split_ck" // 点击拆分文件 - const val FAV_DETA_SPLIT_SEL_ALL_CK = "fav_deta_split_sel_all_ck" // 选择页-全选按钮 - const val FAV_DETA_SPLIT_SEL_CONT_CK = "fav_deta_split_sel_cont_ck" // 选择页-确认选择PDF页 - const val FAV_DETA_SPLIT_EDIT_ADD_CK = "fav_deta_split_edit_add_ck" // 拆分编辑页-点击右上角的添加按钮 - const val FAV_DETA_SPLIT_EDIT_ADD_FINI = "fav_deta_split_edit_add_fini" // 拆分编辑页-添加页-添加完成 - const val FAV_DETA_SPLIT_EDIT_RENA_CK = "fav_deta_split_edit_rena_ck" // 拆分编辑页-重命名文件 - const val FAV_DETA_SPLIT_EDIT_RENA_CONF = "fav_deta_split_edit_rena_conf" // 拆分编辑页-确认重命名 - const val FAV_DETA_SPLIT_EDIT_PAGE_DEL = "fav_deta_split_edit_page_del" // 拆分编辑页-删除已选PDF页 - const val FAV_DETA_SPLIT_BACK_CK = "fav_deta_split_back_ck" // 拆分编辑页-点击返回 - const val FAV_DETA_SPLIT_LEA_CANC = "fav_deta_split_lea_canc" // 拆分编辑页-取消放弃拆分 - const val FAV_DETA_SPLIT_LEA_CONF = "fav_deta_split_lea_conf" // 拆分编辑页-确认放弃拆分 - const val FAV_DETA_SPLIT_EDIT_CONF_CK = "fav_deta_split_edit_conf_ck" // 拆分编辑页-点击确认拆分 - const val FAV_DETA_SPLIT_SUC = "fav_deta_split_suc" // 拆分-拆分成功 - const val FAV_DETA_SPLIT_SHA_CK = "fav_deta_split_sha_ck" // 拆分成功页-点击分享按钮 - const val FAV_DETA_SPLIT_OPEN_CK = "fav_deta_split_open_ck" // 拆分成功页-点击打开文件按钮 - const val FAV_DETA_PDFF_TO_TU_CK = "fav_deta_pdfto_tu_ck" // 点击PDF转图片 - const val FAV_DETA_PDFF_TO_TU_SHA_CK = "fav_deta_pdfto_tu_sha_ck" // 点击分享 - const val FAV_DETA_PDFF_TO_TU_CONF_CK = "fav_deta_pdfto_tu_conf_ck" // 确认转换 - const val FAV_DETA_PDFF_TO_TU_SUC = "fav_deta_pdfto_tu_suc" // 转换成功 - const val FAV_DETA_PDFF_TO_CTU_CK = "fav_deta_pdfto_ctu_ck" // 点击PDF转长图 - const val FAV_DETA_PDFF_TO_CTU_PREVIEW_CK = "fav_deta_pdfto_ctu_preview_ck" // 进入预览页面 - const val FAV_DETA_PDFF_TO_CTU_SHA_CK = "fav_deta_pdfto_ctu_sha_ck" // 点击分享按钮 - const val FAV_DETA_PDFF_TO_CTU_CONF_CK = "fav_deta_pdfto_ctu_conf_ck" // 确认保存长图 - const val FAV_DETA_PDFF_TO_CTU_SUC = "fav_deta_pdfto_ctu_suc" // 转化成功 - const val FAV_DETA_SET_PASW_CK = "fav_deta_set_pasw_ck" // 点击设置密码 - const val FAV_DETA_SET_PASW_CONF_CK = "fav_deta_set_pasw_conf_ck" // 确认设置密码 - const val FAV_DETA_LOCK_SUC = "fav_deta_lock_suc" // 文件锁定成功 - const val FAV_DETA_DEL_CK = "fav_deta_del_ck" // 点击删除文件按钮 - const val FAV_DETA_DEL_CANC = "fav_deta_del_canc" // 取消删除 - const val FAV_DETA_DEL_CONF = "fav_deta_del_conf" // 确认删除 - const val FAV_DETA_DEL_SUC = "fav_deta_del_suc" // 删除成功 - const val TOOL_CK = "tool_ck" // 点击工具按钮 - const val TOOL_PDFF_TO_TU_CK = "tool_pdfto_tu_ck" // 点击PDF转图片 - const val TOOL_PDFF_TO_TU_SEA_CK = "tool_pdfto_tu_sea_ck" // 点击搜索 - const val TOOL_PDFF_TO_TU_SEA_CONF_CK = "tool_pdfto_tu_sea_conf_ck" // 确认转换 - const val TOOL_PDFF_TO_TU_SUC = "tool_pdfto_tu_suc" // 转换成功 - const val TOOL_PDFF_TO_TU_SHA_CK = "tool_pdfto_tu_sha_ck" // 转换成功页-点击分享按钮 - const val TOOL_PDFF_TO_TU_OPEN_CK = "tool_pdfto_tu_open_ck" // 转换成功页-点击打开文件按钮 - const val TOOL_PDFF_TO_TU_SAVE = "tool_pdfto_tu_save" // 转换成功页-点击保存到相册按钮 - const val TOOL_TUTO_PDF_CK = "tool_tuto_pdf_ck" // 点击图片转PDF - const val TOOL_TUTO_PDF_ALL_CK = "tool_tuto_pdf_all_ck" // 全选图片 - const val TOOL_TUTO_PDF_CONF_CK = "tool_tuto_pdf_conf_ck" // 确认选择并进入编辑 - const val TOOL_TUTO_PDF_ADD_CK = "tool_tuto_pdf_add_ck" // 在编辑页添加图片 - const val TOOL_TUTO_PDF_ORDER = "tool_tuto_pdf_order" // 拖拽排序图片 - const val TOOL_TUTO_PDF_CONV_CK = "tool_tuto_pdf_conv_ck" // 点击转换 - const val TOOL_TUTO_PDF_NAM_CONF = "tool_tuto_pdf_nam_conf" // 确认转换命名 - const val TOOL_TUTO_PDF_SUC = "tool_tuto_pdf_suc" // 转换成功 - const val TOOL_TUTO_PDF_SHA_CK = "tool_tuto_pdf_sha_ck" // 转换成功页-点击分享按钮 - const val TOOL_TUTO_PDF_OPEN_CK = "tool_tuto_pdf_open_ck" // 转换成功页-点击打开文件按钮 - const val TOOL_PDFF_TO_CTU_CK = "tool_pdfto_ctu_ck" // 点击PDF转长图 - const val TOOL_PDFF_TO_CTU_SEA_CK = "tool_pdfto_ctu_sea_ck" // 点击搜索 - const val TOOL_PDFF_TO_CTU_PREV_CK = "tool_pdfto_ctu_prev_ck" // 进入预览页面 - const val TOOL_PDFF_TO_CTU_SEA_CONF_CK = "tool_pdfto_ctu_sea_conf_ck" // 确认转换 - const val TOOL_PDFF_TO_CTU_SUC = "tool_pdfto_ctu_suc" // 转化成功 - const val TOOL_PDFF_TO_CTU_SHA_CK = "tool_pdfto_ctu_sha_ck" // 转换成功页-点击分享按钮 - const val TOOL_PDFF_TO_CTU_OPEN_CK = "tool_pdfto_ctu_open_ck" // 转换成功页-点击打开文件按钮 - const val TOOL_MER_CK = "tool_mer_ck" // 点击合并文件 - const val TOOL_MER_SEL_SEA_CK = "tool_mer_sel_sea_ck" // 选择页-点击搜索 - const val TOOL_MER_SEL_SEA_CONF = "tool_mer_sel_sea_conf" // 选择页-搜索页-确认添加文件 - const val TOOL_MER_SEL_CONT_CK = "tool_mer_sel_cont_ck" // 选择页-点击持续按钮 - const val TOOL_MER_EDIT_BACK_CK = "tool_mer_edit_back_ck" // 合并编辑页-点击返回 - const val TOOL_MER_EDIT_LEA_CANC = "tool_mer_edit_lea_canc" // 合并编辑页-取消放弃合并 - const val TOOL_MER_EDIT_LEA_CONF = "tool_mer_edit_lea_conf" // 合并编辑页-确认放弃合并 - const val TOOL_MER_EDIT_ADD_CK = "tool_mer_edit_add_ck" // 合并编辑页-点击添加文件 - const val TOOL_MER_ADD_SEA_CK = "tool_mer_add_sea_ck" // 合并编辑页-添加文件页-点击搜索 - const val TOOL_MER_ADD_SEA_CONF = "tool_mer_add_sea_conf" // 合并编辑页-添加文件页-搜索页-确认添加文件 - const val TOOL_MER_ADD_FINI_CK = "tool_mer_add_fini_ck" // 合并编辑页-添加文件页-添加完成 - const val TOOL_MER_EDIT_FILE_DEL = "tool_mer_edit_file_del" // 合并编辑页-删除已选文件 - const val TOOL_MER_EDIT_CONF_CK = "tool_mer_edit_conf_ck" // 合并编辑页-点击合并 - const val TOOL_MER_NAM_CONF_CK = "tool_mer_nam_conf_ck" // 合并编辑页-确认合并命名 - const val TOOL_MER_SUC = "tool_mer_suc" // 合并成功 - const val TOOL_MER_SHA_CK = "tool_mer_sha_ck" // 合并成功页-点击分享按钮 - const val TOOL_MER_OPEN_CK = "tool_mer_open_ck" // 合并成功页-点击打开文件按钮 - const val TOOL_SPLIT_CK = "tool_split_ck" // 点击拆分文件 - const val TOOL_SPLIT_SEL_SEA_CK = "tool_split_sel_sea_ck" // 选择页-点击搜索 - const val TOOL_SPLIT_SEL_ALL_CK = "tool_split_sel_all_ck" // 选择页-选择PDF页-全选按钮 - const val TOOL_SPLIT_SEL_CONT_CK = "tool_split_sel_cont_ck" // 选择页-选择PDF页-确认选择PDF页 - const val TOOL_SPLIT_EDIT_ADD_CK = "tool_split_edit_add_ck" // 编辑拆分页-点击右上角的添加按钮 - const val TOOL_SPLIT_EDIT_RENA_CK = "tool_split_edit_rena_ck" // 编辑拆分页-重命名文件 - const val TOOL_SPLIT_EDIT_RENA_CONF = "tool_split_edit_rena_conf" // 编辑拆分页-确认重命名 - const val TOOL_SPLIT_EDIT_PAGE_DEL = "tool_split_edit_page_del" // 编辑拆分页-删除已选PDF页 - const val TOOL_SPLIT_BACK_CK = "tool_split_back_ck" // 编辑拆分页-点击返回 - const val TOOL_SPLIT_LEA_CANC = "tool_split_lea_canc" // 编辑拆分页-取消放弃拆分 - const val TOOL_SPLIT_LEA_CONF = "tool_split_lea_conf" // 编辑拆分页-确认放弃拆分 - const val TOOL_SPLIT_EDIT_CONF_CK = "tool_split_edit_conf_ck" // 编辑拆分页-点击确认拆分 - const val TOOL_SPLIT_SUC = "tool_split_suc" // 拆分页-拆分成功 - const val TOOL_SPLIT_SHA_CK = "tool_split_sha_ck" // 拆分成功页-点击分享按钮 - const val TOOL_SPLIT_OPEN_CK = "tool_split_open_ck" // 拆分成功页-点击打开文件按钮 - const val TOOL_LOCK_CK = "tool_lock_ck" // 点击锁定按钮 - const val TOOL_LOCK_SEA_CK = "tool_lock_sea_ck" // 点击锁定页搜索按钮 - const val TOOL_LOCK_SET_PASW_CANC = "tool_lock_set_pasw_canc" // 取消锁定 - const val TOOL_LOCK_SET_PASW_CONF = "tool_lock_set_pasw_conf" // 确认设置密码 - const val TOOL_LOCK_SUC = "tool_lock_suc" // 设置密码成功 - const val TOOL_LOCK_SHA_CK = "tool_lock_sha_ck" // 锁定成功页-点击分享按钮 - const val TOOL_LOCK_OPEN_CK = "tool_lock_open_ck" // 锁定成功页-点击打开文件按钮 - const val TOOL_UNLOCK_CK = "tool_unlock_ck" // 点击解锁按钮 - const val TOOL_UNLOCK_SEA_CK = "tool_unlock_sea_ck" // 点击解锁页搜索按钮 - const val TOOL_UNLOCK_PASW_CANC = "tool_unlock_pasw_canc" // 取消解锁 - const val TOOL_UNLOCK_PASW_CONF = "tool_unlock_pasw_conf" // 确认解锁 - const val TOOL_UNLOCK_SUC = "tool_unlock_suc" // 解锁成功 - const val TOOL_UNLOCK_SHA_CK = "tool_unlock_sha_ck" // 解锁成功页-点击分享按钮 - const val TOOL_UNLOCK_OPEN_CK = "tool_unlock_open_ck" // 解锁成功页-点击打开文件按钮 - const val SIDEBAR_OPEN = "sidebar_open" // 点击侧边栏 - const val SIDEBAR_KEEP_SCREEN = "sidebar_keep_screen" // 点击切换屏幕常亮 - const val SIDEBAR_SHA_APP_CK = "sidebar_sha_app_ck" // 点击分享软件 - const val APP_EXIT_BACK_FIRST_CK = "app_exit_back_first_ck" // 退出应用-首次返回点击 - const val APP_EXIT_CONF_CK = "app_exit_conf_ck" // 退出确认点击 - const val APP_EXIT_SUC = "app_exit_suc" // 退出应用成功 + const val HOME_SHOW = "home_show" // 成功进入到首页(home_show) + const val SELECT_CK = "select_ck" // 点击选择文件按钮(select_ck) + const val DELETE_CK = "delete_ck" // 点击删除按钮(delete_ck) + const val DELETE_SUCCESS = "delete_success" // 删除成功(delete_success) + const val MERGE_SHOW = "merge_show" // 进入到合并页面(merge_show) + const val MERGE_BACK_CONFIRM = "merge_back_confirm" // 确认返回(merge_back_confirm) + const val MERGE_SUCCESS = "merge_success" // 合并成功(merge_success) + const val SPLIT_SHOW = "split_show" // 进入到拆分页面(split_show) + const val SPLIT_LEAVE_CONFIRM = "split_leave_confirm" // 确认放弃拆分(split_leave_confirm) + const val SPLIT_SUCCESS = "split_success" // 拆分成功(split_success) + const val SEARCH_SHOW = "search_show" // 点击搜索(search_ck) + const val SEARCH_SUCCESS = "search_success" // 提交搜索请求(search_success) + const val SORT_SHOW = "sort_show" // 点击排序按钮(sort_ck) + const val PDF_SHOW = "pdf_show" // 进入PDF内容页(pdf_show) + const val VIEW_MODE_CK = "view_mode_ck" // 点击浏览模式按钮(view_mode_ck) + const val VIEWPAGE_MODE_CK = "viewpage_mode_ck" // 点击页面浏览模式按钮(viewpage_mode_ck) + const val VIEWPAGE_COLOR_CK = "viewpage_color_ck" // 点击页面颜色按钮(viewpage_color_ck) + const val BOOKMARK_TK_SHOW = "bookmark_tk_show" // 增加书签弹框出现(bookmark_tk_show) + const val BOOKMARK_ADD_SUCCESS = "bookmark_add_success" // 书签添加成功(bookmark_add_success) + const val EYE_PROTECT_CK = "eye_protect_ck" // 点击护眼模式(eye_protect_ck) + const val DETAILS_EXPAND_CK = "details_expand_ck" // 点击详情信息介绍页(details_expand_ck) + const val RENAME_TK_SHOW = "rename_tk_show" // 重命名弹框出现(rename_tk_show) + const val RENAME_SUCCESS = "rename_success" // 重命名成功(rename_success) + const val FAVORITE_ADD = "favorite_add" // 添加喜欢(favorite_add) + const val FAVORITE_REMOVE = "favorite_remove" // 取消喜欢(favorite_remove) + const val PAGE_JUMP_CK = "page_jump_ck" // 点击跳转页数按钮(page_jump_ck) + const val PAGE_JUMP_SUCCESS = "page_jump_success" // 跳转成功(page_jump_success) + const val FILE_COPY_CK = "file_copy_ck" // 点击复制文件(file_copy_ck) + const val FILE_COPY_SUCCESS = "file_copy_success" // 复制文件成功(file_copy_success) + const val PDFTO_TU_SHOW = "pdfto_tu_show" // PDF转图片页面(pdfto_tu_show) + const val PDFTO_TU_SUCCESS = "pdfto_tu_success" // 转换成功(pdfto_tu_success) + const val PDFTO_CTU_SHOW = "pdfto_ctu_show" // PDF转长图页面(pdfto_ctu_show) + const val PDFTO_CTU_SUCCESS = "pdfto_ctu_success" // 转化成功(pdfto_ctu_success) + const val LOCK_TK_SHOW = "lock_tk_show" // 设置密码的弹框出现(lock_tk_show) + const val LOCK_SUCCESS = "lock_success" // 文件锁定成功(lock_success) + const val REMOVE_CK = "remove_ck" // 点击移除按钮(remove_ck) + const val REMOVE_SUCCESS = "remove_success" // 移除成功(remove_success) + const val TUTO_PDF_SHOW = "tuto_pdf_show" // 图片转PDF页面(tuto_pdf_show) + const val TUTO_PDF_SUCCESS = "tuto_pdf_success" // 转换成功(tuto_pdf_success) + const val UNLOCK_TK_SHOW = "unlock_tk_show" // 解锁文件弹框出现(unlock_tk_show) + const val UNLOCK_SUCCESS = "unlock_success" // 解锁成功(unlock_success) + const val KEEP_SCREEN_OPEN = "keep_screen_open" // 点击打开(keep_screen_open) + const val KEEP_SCREEN_CLOSE = "keep_screen_close" // 点击关闭(keep_screen_close) } /** param 常量 */ diff --git a/app/src/main/java/com/all/pdfreader/pdf/reader/util/PDFSearchManager.kt b/app/src/main/java/com/all/pdfreader/pdf/reader/util/PDFSearchManager.kt index fab849a..17d0502 100644 --- a/app/src/main/java/com/all/pdfreader/pdf/reader/util/PDFSearchManager.kt +++ b/app/src/main/java/com/all/pdfreader/pdf/reader/util/PDFSearchManager.kt @@ -70,7 +70,7 @@ class PDFSearchManager(private val pdfView: PDFView) { password: String?, onLoaded: ((PDDocument) -> Unit)? = null, onError: ((Exception) -> Unit)? = null - ): PDDocument { + ) { if (cachedDoc == null || cachedPath != file.absolutePath) { try { // 如果是新的文件,则关闭旧文档 @@ -93,7 +93,6 @@ class PDFSearchManager(private val pdfView: PDFView) { // 已缓存文档,仍可调用回调 onLoaded?.invoke(cachedDoc!!) } - return cachedDoc!! } fun getCachedDoc(): PDDocument? { diff --git a/app/src/main/java/com/all/pdfreader/pdf/reader/viewmodel/PdfViewModel.kt b/app/src/main/java/com/all/pdfreader/pdf/reader/viewmodel/PdfViewModel.kt index 146ba37..1c2afe3 100644 --- a/app/src/main/java/com/all/pdfreader/pdf/reader/viewmodel/PdfViewModel.kt +++ b/app/src/main/java/com/all/pdfreader/pdf/reader/viewmodel/PdfViewModel.kt @@ -12,6 +12,7 @@ import com.all.pdfreader.pdf.reader.model.FileActionEvent import com.all.pdfreader.pdf.reader.room.entity.BookmarkEntity import com.all.pdfreader.pdf.reader.room.entity.PdfDocumentEntity import com.all.pdfreader.pdf.reader.room.repository.PdfRepository +import com.all.pdfreader.pdf.reader.util.AnalyticsUtils import com.all.pdfreader.pdf.reader.util.AppUtils.generateFastThumbnail import com.all.pdfreader.pdf.reader.util.FileDeleteUtil import com.all.pdfreader.pdf.reader.util.FileUtils @@ -70,6 +71,7 @@ class PdfViewModel : ViewModel() { pdfRepository.updateFilePathAndFileName(filePath, newFilePath, finalName) val newResult = renameResult.copy(newFilePath = newFilePath) _fileActionEvent.postValue(FileActionEvent.Rename(newResult)) + AnalyticsUtils.logEvent(AnalyticsUtils.Event.RENAME_SUCCESS) } else { _fileActionEvent.postValue(FileActionEvent.Rename(renameResult)) } @@ -77,11 +79,13 @@ class PdfViewModel : ViewModel() { } fun deleteFile(filePath: String) { + AnalyticsUtils.logEvent(AnalyticsUtils.Event.DELETE_CK) viewModelScope.launch(Dispatchers.IO) { val file = File(filePath) val deleteResult = FileDeleteUtil.deleteFile(file) Log.d("ocean", "deleteFile->file: $file, deleteResult=$deleteResult") if (deleteResult.success) { + AnalyticsUtils.logEvent(AnalyticsUtils.Event.DELETE_SUCCESS) Log.d("ocean", "文件已删除,清除数据库数据") pdfRepository.deleteDocument(filePath) } @@ -90,12 +94,14 @@ class PdfViewModel : ViewModel() { } fun deleteFiles(files: List) { + AnalyticsUtils.logEvent(AnalyticsUtils.Event.DELETE_CK) viewModelScope.launch { _fileActionEvent.postValue(FileActionEvent.DeleteAll(FileActionEvent.DeleteAll.Status.START)) val deleteResult = withContext(Dispatchers.IO) { try { val result = FileDeleteUtil.deleteFiles(files) if (result.success) { + AnalyticsUtils.logEvent(AnalyticsUtils.Event.DELETE_SUCCESS) // 批量清理数据库 val paths = files.map { it.absolutePath } pdfRepository.deleteDocuments(paths) @@ -117,6 +123,7 @@ class PdfViewModel : ViewModel() { viewModelScope.launch { pdfRepository.updateFavoriteStatus(filePath, isFavorite) _fileActionEvent.postValue(FileActionEvent.Favorite(isFavorite)) + AnalyticsUtils.logEvent(AnalyticsUtils.Event.FAVORITE_ADD) } } @@ -124,6 +131,7 @@ class PdfViewModel : ViewModel() { viewModelScope.launch { pdfRepository.cancelFavorites(filePaths) _fileActionEvent.postValue(FileActionEvent.Favorite(false)) + AnalyticsUtils.logEvent(AnalyticsUtils.Event.FAVORITE_REMOVE) } } diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 3774ae1..e6104ed 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -194,4 +194,5 @@ 1 image converted %1$d imagesF converted File not in PDF format or corrupted + Processing failed \ No newline at end of file