Commit 26adfff5 authored by wanglei's avatar wanglei

初始化

parent f378f536
...@@ -87,6 +87,17 @@ ...@@ -87,6 +87,17 @@
android:launchMode="singleTop" android:launchMode="singleTop"
tools:ignore="DiscouragedApi,LockedOrientationActivity" /> tools:ignore="DiscouragedApi,LockedOrientationActivity" />
<activity
android:name=".ui.pdf.PdfSelectActivity"
android:exported="false"
android:launchMode="singleTop"
tools:ignore="DiscouragedApi,LockedOrientationActivity" />
<activity
android:name=".ui.pdf.PdfSplitActivity"
android:exported="false"
android:launchMode="singleTop"
tools:ignore="DiscouragedApi,LockedOrientationActivity" />
<provider <provider
android:name="androidx.core.content.FileProvider" android:name="androidx.core.content.FileProvider"
android:authorities="${applicationId}.provider" android:authorities="${applicationId}.provider"
......
...@@ -43,6 +43,8 @@ class DocumentActivity : BaseActivity<ActivityDocumentBinding>() { ...@@ -43,6 +43,8 @@ class DocumentActivity : BaseActivity<ActivityDocumentBinding>() {
DocumentFragment(DocumentBean.TYPE_PPT) DocumentFragment(DocumentBean.TYPE_PPT)
} }
var initTab: Int? = null
private val fragments by lazy { private val fragments by lazy {
mutableListOf(allPage, pdfPage, wordPage, excelPage, pptPage) mutableListOf(allPage, pdfPage, wordPage, excelPage, pptPage)
} }
...@@ -52,6 +54,8 @@ class DocumentActivity : BaseActivity<ActivityDocumentBinding>() { ...@@ -52,6 +54,8 @@ class DocumentActivity : BaseActivity<ActivityDocumentBinding>() {
BarUtils.setStatusBarColor(this, Color.WHITE) BarUtils.setStatusBarColor(this, Color.WHITE)
binding.root.updatePadding(top = BarUtils.getStatusBarHeight()) binding.root.updatePadding(top = BarUtils.getStatusBarHeight())
initTab = intent.extras?.getInt("initTab")
documentViewModel = ViewModelProvider(this)[DocumentViewModel::class.java] documentViewModel = ViewModelProvider(this)[DocumentViewModel::class.java]
...@@ -140,6 +144,8 @@ class DocumentActivity : BaseActivity<ActivityDocumentBinding>() { ...@@ -140,6 +144,8 @@ class DocumentActivity : BaseActivity<ActivityDocumentBinding>() {
} }
} }
ViewPager2Delegate.install(binding.viewPager2, binding.tabLayoutDocument) ViewPager2Delegate.install(binding.viewPager2, binding.tabLayoutDocument)
initTab?.let { binding.viewPager2.currentItem = it }
} }
......
...@@ -59,14 +59,14 @@ class MainActivity : BaseActivity<ActivityMainBinding>() { ...@@ -59,14 +59,14 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
binding.includeMain.tvTittle.text = spannableString binding.includeMain.tvTittle.text = spannableString
binding.tvPdfReader.text = spannableString binding.tvPdfReader.text = spannableString
if (!checkStorePermission()) {
showStoragePermission(launcher)
}
} }
override fun onResume() { override fun onResume() {
super.onResume() super.onResume()
if (!checkStorePermission()) {
showStoragePermission(launcher)
}
} }
override fun initListener() { override fun initListener() {
......
...@@ -9,9 +9,13 @@ import android.view.ViewGroup ...@@ -9,9 +9,13 @@ import android.view.ViewGroup
import androidx.fragment.app.Fragment import androidx.fragment.app.Fragment
import androidx.lifecycle.ViewModelProvider import androidx.lifecycle.ViewModelProvider
import androidx.lifecycle.lifecycleScope import androidx.lifecycle.lifecycleScope
import com.base.pdfreaderallpdfreader.bean.ConstObject.DO_LOCK_PDF
import com.base.pdfreaderallpdfreader.bean.ConstObject.DO_SPLIT_PDF
import com.base.pdfreaderallpdfreader.databinding.FragmentHomeBinding import com.base.pdfreaderallpdfreader.databinding.FragmentHomeBinding
import com.base.pdfreaderallpdfreader.ui.document.DocumentActivity import com.base.pdfreaderallpdfreader.ui.document.DocumentActivity
import com.base.pdfreaderallpdfreader.ui.main.getPdfFastSize import com.base.pdfreaderallpdfreader.ui.main.getPdfFastSize
import com.base.pdfreaderallpdfreader.ui.pdf.PdfActivity
import com.base.pdfreaderallpdfreader.ui.pdf.PdfSelectActivity
import com.base.pdfreaderallpdfreader.utils.PermissionUtils.checkStorePermission import com.base.pdfreaderallpdfreader.utils.PermissionUtils.checkStorePermission
import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch import kotlinx.coroutines.launch
...@@ -46,6 +50,25 @@ class HomeFragment : Fragment() { ...@@ -46,6 +50,25 @@ class HomeFragment : Fragment() {
binding.clPdfReader.setOnClickListener { binding.clPdfReader.setOnClickListener {
startActivity(Intent(requireContext(), DocumentActivity::class.java)) startActivity(Intent(requireContext(), DocumentActivity::class.java))
} }
binding.llEditPdf.setOnClickListener {
startActivity(Intent(requireContext(), DocumentActivity::class.java).apply {
putExtra("initTab", 1)
})
}
binding.llMergePdf.setOnClickListener {
PdfActivity.jumpMerge(requireActivity())
}
binding.llSplitPdf.setOnClickListener {
startActivity(Intent(requireContext(), PdfSelectActivity::class.java).apply {
putExtra("doWhat", DO_SPLIT_PDF)
})
}
binding.llLockPdf.setOnClickListener {
startActivity(Intent(requireContext(), PdfSelectActivity::class.java).apply {
putExtra("doWhat", DO_LOCK_PDF)
})
}
if (requireContext().checkStorePermission()) { if (requireContext().checkStorePermission()) {
lifecycleScope.launch(Dispatchers.IO) { lifecycleScope.launch(Dispatchers.IO) {
val size = getPdfFastSize(requireContext()) val size = getPdfFastSize(requireContext())
......
...@@ -150,7 +150,7 @@ class DocumentPdfAdapter() : BaseQuickAdapter<DocumentBean, DocumentPdfAdapter.D ...@@ -150,7 +150,7 @@ class DocumentPdfAdapter() : BaseQuickAdapter<DocumentBean, DocumentPdfAdapter.D
override fun onCreateViewHolder(context: Context, parent: ViewGroup, viewType: Int): DocumentPdfViewHolder { override fun onCreateViewHolder(context: Context, parent: ViewGroup, viewType: Int): DocumentPdfViewHolder {
return if (viewType == 0) { return if (viewType == 0) {
DocumentPdfViewHolder(R.layout.item_document.inflate(parent)) DocumentPdfViewHolder(R.layout.item_document_pdf.inflate(parent))
} else { } else {
DocumentPdfViewHolder(R.layout.item_ad.inflate(parent)) DocumentPdfViewHolder(R.layout.item_ad.inflate(parent))
} }
......
package com.base.pdfreaderallpdfreader.ui.pdf package com.base.pdfreaderallpdfreader.ui.pdf
import android.annotation.SuppressLint import android.annotation.SuppressLint
import android.content.Intent
import android.graphics.Color
import android.view.View import android.view.View
import androidx.activity.addCallback import androidx.activity.addCallback
import androidx.core.view.isVisible import androidx.core.view.isVisible
import androidx.core.view.updatePadding
import androidx.lifecycle.ViewModelProvider import androidx.lifecycle.ViewModelProvider
import androidx.lifecycle.lifecycleScope import androidx.lifecycle.lifecycleScope
import com.base.pdfreaderallpdfreader.R import com.base.pdfreaderallpdfreader.R
import com.base.pdfreaderallpdfreader.ads.AdmobHelper
import com.base.pdfreaderallpdfreader.ads.admob.AdmobInterstitialUtils
import com.base.pdfreaderallpdfreader.base.BaseActivity import com.base.pdfreaderallpdfreader.base.BaseActivity
import com.base.pdfreaderallpdfreader.bean.ConstObject.DO_LOCK_PDF import com.base.pdfreaderallpdfreader.bean.ConstObject.DO_LOCK_PDF
import com.base.pdfreaderallpdfreader.bean.ConstObject.DO_MERGE_PDF import com.base.pdfreaderallpdfreader.bean.ConstObject.DO_MERGE_PDF
...@@ -16,6 +21,7 @@ import com.base.pdfreaderallpdfreader.bean.DocumentBean ...@@ -16,6 +21,7 @@ import com.base.pdfreaderallpdfreader.bean.DocumentBean
import com.base.pdfreaderallpdfreader.databinding.ActivityPdfSelectBinding import com.base.pdfreaderallpdfreader.databinding.ActivityPdfSelectBinding
import com.base.pdfreaderallpdfreader.ui.main.getPdfDocument import com.base.pdfreaderallpdfreader.ui.main.getPdfDocument
import com.base.pdfreaderallpdfreader.ui.view.PwdDialog.showPdfPwdDialog import com.base.pdfreaderallpdfreader.ui.view.PwdDialog.showPdfPwdDialog
import com.base.pdfreaderallpdfreader.utils.BarUtils
import com.base.pdfreaderallpdfreader.utils.LogEx import com.base.pdfreaderallpdfreader.utils.LogEx
import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch import kotlinx.coroutines.launch
...@@ -45,6 +51,11 @@ class PdfSelectActivity : BaseActivity<ActivityPdfSelectBinding>() { ...@@ -45,6 +51,11 @@ class PdfSelectActivity : BaseActivity<ActivityPdfSelectBinding>() {
// if (checkNeedRecreate(MyApplication.pdfSelectLanguage)) { // if (checkNeedRecreate(MyApplication.pdfSelectLanguage)) {
// return // return
// } // }
BarUtils.setStatusBarLightMode(this, true)
BarUtils.setStatusBarColor(this, Color.WHITE)
binding.root.updatePadding(top = BarUtils.getStatusBarHeight())
pdfViewModel = ViewModelProvider(this)[PdfViewModel::class.java] pdfViewModel = ViewModelProvider(this)[PdfViewModel::class.java]
doWhat = intent.extras?.getString("doWhat", "") ?: "" doWhat = intent.extras?.getString("doWhat", "") ?: ""
...@@ -115,10 +126,9 @@ class PdfSelectActivity : BaseActivity<ActivityPdfSelectBinding>() { ...@@ -115,10 +126,9 @@ class PdfSelectActivity : BaseActivity<ActivityPdfSelectBinding>() {
binding.tvBtnNext.setOnClickListener { binding.tvBtnNext.setOnClickListener {
if (doWhat == DO_MERGE_PDF) { if (doWhat == DO_MERGE_PDF) {
val selectList = adapter.items.filter { it.isSelect } val selectList = adapter.items.filter { it.isSelect }
//todo PdfMergeActivity.mergePdfList.clear()
// PdfMergeActivity.mergePdfList.clear() PdfMergeActivity.mergePdfList.addAll(selectList)
// PdfMergeActivity.mergePdfList.addAll(selectList) startActivity(Intent(this, PdfMergeActivity::class.java))
// startActivity(Intent(this, PdfMergeActivity::class.java))
} }
} }
} }
...@@ -129,49 +139,47 @@ class PdfSelectActivity : BaseActivity<ActivityPdfSelectBinding>() { ...@@ -129,49 +139,47 @@ class PdfSelectActivity : BaseActivity<ActivityPdfSelectBinding>() {
adapter.itemClick = { adapter.itemClick = {
if (doWhat == DO_SPLIT_PDF) { if (doWhat == DO_SPLIT_PDF) {
if (it.state == 0) { if (it.state == 0) {
//todo startActivity(Intent(this, PdfSplitActivity::class.java).apply {
// startActivity(Intent(this, PdfSplitActivity::class.java).apply { putExtra("path", it.path)
// putExtra("path", it.path) })
// })
} else { } else {
showPdfPwdDialog( showPdfPwdDialog(
state = it.state, state = it.state,
path = it.path, path = it.path,
isCheckPwd = true, isCheckPwd = true,
verificationAction = { pwd -> verificationAction = { pwd ->
// startActivity(Intent(this, PdfSplitActivity::class.java).apply {
// startActivity(Intent(this, PdfSplitActivity::class.java).apply { putExtra("path", it.path)
// putExtra("path", it.path) putExtra("pwd", pwd)
// putExtra("pwd", pwd) })
// })
}) })
} }
} }
if (doWhat == DO_LOCK_PDF) { if (doWhat == DO_LOCK_PDF) {
showPdfPwdDialog(state = it.state, path = it.path, encryptionAction = { showPdfPwdDialog(state = it.state, path = it.path, encryptionAction = {
// if (com.base.pdfreaderallpdfreader.ads.AdmobHelper.canCommonShowAd()) { if (AdmobHelper.canCommonShowAd()) {
// com.base.pdfreaderallpdfreader.ads.admob.AdmobInterstitialUtils.showInterstitialAd(this) { flag -> AdmobInterstitialUtils.showInterstitialAd(this) { flag ->
// adapter.remove(it)
// binding.llEmpty.isVisible = adapter.items.isEmpty()
// }
// } else {
adapter.remove(it) adapter.remove(it)
binding.llEmpty.isVisible = adapter.items.isEmpty() binding.llEmpty.isVisible = adapter.items.isEmpty()
// } }
} else {
adapter.remove(it)
binding.llEmpty.isVisible = adapter.items.isEmpty()
}
}) })
} }
if (doWhat == DO_UNLOCK_PDF) { if (doWhat == DO_UNLOCK_PDF) {
showPdfPwdDialog(state = it.state, path = it.path, encryptionAction = { showPdfPwdDialog(state = it.state, path = it.path, encryptionAction = {
// if (com.base.pdfreaderallpdfreader.ads.AdmobHelper.canCommonShowAd()) { if (AdmobHelper.canCommonShowAd()) {
// com.base.pdfreaderallpdfreader.ads.admob.AdmobInterstitialUtils.showInterstitialAd(this) { flag -> AdmobInterstitialUtils.showInterstitialAd(this) { flag ->
// adapter.remove(it)
// binding.llEmpty.isVisible = adapter.items.isEmpty()
// }
// } else {
adapter.remove(it) adapter.remove(it)
binding.llEmpty.isVisible = adapter.items.isEmpty() binding.llEmpty.isVisible = adapter.items.isEmpty()
// } }
} else {
adapter.remove(it)
binding.llEmpty.isVisible = adapter.items.isEmpty()
}
}) })
} }
} }
......
package com.base.pdfreaderallpdfreader.ui.pdf package com.base.pdfreaderallpdfreader.ui.pdf
import android.content.Intent import android.content.Intent
import android.graphics.Color
import androidx.activity.addCallback import androidx.activity.addCallback
import androidx.core.view.updatePadding
import androidx.lifecycle.ViewModelProvider import androidx.lifecycle.ViewModelProvider
import androidx.lifecycle.lifecycleScope
import com.base.pdfreaderallpdfreader.R import com.base.pdfreaderallpdfreader.R
import com.base.pdfreaderallpdfreader.base.BaseActivity import com.base.pdfreaderallpdfreader.base.BaseActivity
import com.base.pdfreaderallpdfreader.bean.ConstObject import com.base.pdfreaderallpdfreader.bean.ConstObject
import com.base.pdfreaderallpdfreader.databinding.ActivityPdfSplitBinding import com.base.pdfreaderallpdfreader.databinding.ActivityPdfSplitBinding
import com.base.pdfreaderallpdfreader.ui.view.NameDialog.showDocumentRenameDialog import com.base.pdfreaderallpdfreader.ui.view.NameDialog.showDocumentRenameDialog
import com.base.pdfreaderallpdfreader.utils.BarUtils
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
class PdfSplitActivity : BaseActivity<ActivityPdfSplitBinding>() { class PdfSplitActivity : BaseActivity<ActivityPdfSplitBinding>() {
...@@ -28,6 +34,10 @@ class PdfSplitActivity : BaseActivity<ActivityPdfSplitBinding>() { ...@@ -28,6 +34,10 @@ class PdfSplitActivity : BaseActivity<ActivityPdfSplitBinding>() {
} }
override fun initView() { override fun initView() {
BarUtils.setStatusBarLightMode(this, true)
BarUtils.setStatusBarColor(this, Color.WHITE)
binding.root.updatePadding(top = BarUtils.getStatusBarHeight())
pdfViewModel = ViewModelProvider(this)[PdfViewModel::class.java] pdfViewModel = ViewModelProvider(this)[PdfViewModel::class.java]
path = intent.extras?.getString("path", "") ?: "" path = intent.extras?.getString("path", "") ?: ""
pwd = intent.extras?.getString("pwd", "") ?: "" pwd = intent.extras?.getString("pwd", "") ?: ""
...@@ -35,8 +45,10 @@ class PdfSplitActivity : BaseActivity<ActivityPdfSplitBinding>() { ...@@ -35,8 +45,10 @@ class PdfSplitActivity : BaseActivity<ActivityPdfSplitBinding>() {
initAdapter() initAdapter()
pdfViewModel.initPdfPageRv = { items -> pdfViewModel.initPdfPageRv = { items ->
lifecycleScope.launch(Dispatchers.Main) {
pdfPagerAdapter.submitList(items) pdfPagerAdapter.submitList(items)
} }
}
pdfViewModel.iniPdfPage(this, path) pdfViewModel.iniPdfPage(this, path)
} }
...@@ -80,5 +92,4 @@ class PdfSplitActivity : BaseActivity<ActivityPdfSplitBinding>() { ...@@ -80,5 +92,4 @@ class PdfSplitActivity : BaseActivity<ActivityPdfSplitBinding>() {
} }
} }
\ No newline at end of file
...@@ -4,7 +4,8 @@ ...@@ -4,7 +4,8 @@
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/main" android:id="@+id/main"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent"> android:layout_height="match_parent"
android:background="@color/white">
<androidx.constraintlayout.widget.ConstraintLayout <androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/cl_top" android:id="@+id/cl_top"
......
...@@ -124,7 +124,7 @@ ...@@ -124,7 +124,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="center_horizontal" android:layout_gravity="center_horizontal"
android:layout_marginTop="11dp" android:layout_marginTop="11dp"
android:text="Merge PDF" android:text="@string/merge_pdf"
android:textColor="#1E201E" android:textColor="#1E201E"
android:textSize="12sp" android:textSize="12sp"
tools:ignore="HardcodedText" /> tools:ignore="HardcodedText" />
...@@ -152,7 +152,7 @@ ...@@ -152,7 +152,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="center_horizontal" android:layout_gravity="center_horizontal"
android:layout_marginTop="11dp" android:layout_marginTop="11dp"
android:text="Merge PDF" android:text="@string/split_pdf"
android:textColor="#1E201E" android:textColor="#1E201E"
android:textSize="12sp" android:textSize="12sp"
tools:ignore="HardcodedText" /> tools:ignore="HardcodedText" />
...@@ -180,7 +180,7 @@ ...@@ -180,7 +180,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="center_horizontal" android:layout_gravity="center_horizontal"
android:layout_marginTop="11dp" android:layout_marginTop="11dp"
android:text="Merge PDF" android:text="@string/lock_pdf"
android:textColor="#1E201E" android:textColor="#1E201E"
android:textSize="12sp" android:textSize="12sp"
tools:ignore="HardcodedText" /> tools:ignore="HardcodedText" />
......
...@@ -97,6 +97,7 @@ ...@@ -97,6 +97,7 @@
<string name="oh_we_are_sorry">Oh,We are Sorry</string> <string name="oh_we_are_sorry">Oh,We are Sorry</string>
<string name="send">Send</string> <string name="send">Send</string>
<string name="pdf_reader">PDF Reader</string> <string name="pdf_reader">PDF Reader</string>
<string name="lock_pdf">Lock Pdf</string>
</resources> </resources>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment