Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Sign in / Register
Toggle navigation
P
PDF Viewer Scanner White
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wanglei
PDF Viewer Scanner White
Commits
c2cc9958
Commit
c2cc9958
authored
Oct 10, 2024
by
wanglei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
...
parent
b2917ad3
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
174 additions
and
64 deletions
+174
-64
AndroidManifest.xml
app/src/main/AndroidManifest.xml
+1
-0
ConstObject.kt
...n/java/com/base/pdfviewerscannerwhite/bean/ConstObject.kt
+3
-0
BaseActivity.kt
...ava/com/base/pdfviewerscannerwhite/helper/BaseActivity.kt
+2
-8
MyApplication.kt
...va/com/base/pdfviewerscannerwhite/helper/MyApplication.kt
+15
-28
MainActivity.kt
...va/com/base/pdfviewerscannerwhite/ui/main/MainActivity.kt
+33
-3
SetLanguageActivity.kt
.../base/pdfviewerscannerwhite/ui/set/SetLanguageActivity.kt
+13
-0
SplashActivity.kt
...om/base/pdfviewerscannerwhite/ui/splash/SplashActivity.kt
+18
-7
LanguageUtils.kt
...ava/com/base/pdfviewerscannerwhite/utils/LanguageUtils.kt
+36
-18
ShortcutUtils.kt
...ava/com/base/pdfviewerscannerwhite/utils/ShortcutUtils.kt
+53
-0
No files found.
app/src/main/AndroidManifest.xml
View file @
c2cc9958
...
@@ -45,6 +45,7 @@
...
@@ -45,6 +45,7 @@
</activity>
</activity>
<activity
<activity
android:name=
".ui.main.MainActivity"
android:name=
".ui.main.MainActivity"
android:configChanges=
"locale"
android:exported=
"false"
android:exported=
"false"
android:launchMode=
"singleTask"
android:launchMode=
"singleTask"
android:screenOrientation=
"portrait"
android:screenOrientation=
"portrait"
...
...
app/src/main/java/com/base/pdfviewerscannerwhite/bean/ConstObject.kt
View file @
c2cc9958
...
@@ -43,6 +43,9 @@ object ConstObject {
...
@@ -43,6 +43,9 @@ object ConstObject {
const
val
NOTIFICATION_ACTION_LOG
=
"notification_action_log"
const
val
NOTIFICATION_ACTION_LOG
=
"notification_action_log"
const
val
NOTIFICATION_ACTION_DOCUMENT
=
"notification_action_document"
const
val
NOTIFICATION_ACTION_DOCUMENT
=
"notification_action_document"
const
val
NOTIFICATION_ACTION_BOOKMARK
=
"notification_action_bookmark"
const
val
NOTIFICATION_ACTION_BOOKMARK
=
"notification_action_bookmark"
const
val
SHORTCUT_SCAN_PDF
=
"shortcut_scan_pdf"
const
val
SHORTCUT_SPLIT_PDF
=
"shortcut_split_pdf"
const
val
SHORTCUT_MERGE_PDF
=
"shortcut_merge_pdf"
var
ifAgreePrivacy
=
false
var
ifAgreePrivacy
=
false
get
()
{
get
()
{
...
...
app/src/main/java/com/base/pdfviewerscannerwhite/helper/BaseActivity.kt
View file @
c2cc9958
...
@@ -11,6 +11,7 @@ import com.base.pdfviewerscannerwhite.bean.ConstObject.changeLanguageSp
...
@@ -11,6 +11,7 @@ import com.base.pdfviewerscannerwhite.bean.ConstObject.changeLanguageSp
import
com.base.pdfviewerscannerwhite.ui.main.MainActivity
import
com.base.pdfviewerscannerwhite.ui.main.MainActivity
import
com.base.pdfviewerscannerwhite.utils.ActivityLauncher
import
com.base.pdfviewerscannerwhite.utils.ActivityLauncher
import
com.base.pdfviewerscannerwhite.utils.ActivityManagerUtils
import
com.base.pdfviewerscannerwhite.utils.ActivityManagerUtils
import
com.base.pdfviewerscannerwhite.utils.LanguageUtils.changeAppLanguage
import
com.base.pdfviewerscannerwhite.utils.LogEx
import
com.base.pdfviewerscannerwhite.utils.LogEx
import
java.util.Locale
import
java.util.Locale
...
@@ -74,14 +75,7 @@ abstract class BaseActivity<T : ViewBinding> : AppCompatActivity() {
...
@@ -74,14 +75,7 @@ abstract class BaseActivity<T : ViewBinding> : AppCompatActivity() {
)
)
if
(
appLanguageSp
!=
changeLanguageSp
||
activityLanguage
!=
appLanguageSp
)
{
if
(
appLanguageSp
!=
changeLanguageSp
||
activityLanguage
!=
appLanguageSp
)
{
val
config
=
resources
.
configuration
changeAppLanguage
(
this
)
val
locale
=
Locale
(
changeLanguageSp
)
//Android 7.0以上的方法
config
.
setLocale
(
locale
);
config
.
setLocales
(
LocaleList
(
locale
));
createConfigurationContext
(
config
);
resources
.
updateConfiguration
(
config
,
resources
.
displayMetrics
)
// Restart the app
// Restart the app
appLanguageSp
=
changeLanguageSp
appLanguageSp
=
changeLanguageSp
...
...
app/src/main/java/com/base/pdfviewerscannerwhite/helper/MyApplication.kt
View file @
c2cc9958
...
@@ -6,12 +6,10 @@ import android.content.Intent
...
@@ -6,12 +6,10 @@ import android.content.Intent
import
android.os.Bundle
import
android.os.Bundle
import
android.text.TextUtils
import
android.text.TextUtils
import
com.base.pdfviewerscannerwhite.bean.ConstObject
import
com.base.pdfviewerscannerwhite.bean.ConstObject
import
com.base.pdfviewerscannerwhite.bean.LanguageBean
import
com.base.pdfviewerscannerwhite.fcm.FCMManager
import
com.base.pdfviewerscannerwhite.fcm.FCMManager
import
com.base.pdfviewerscannerwhite.ui.splash.SplashActivity
import
com.base.pdfviewerscannerwhite.ui.splash.SplashActivity
import
com.base.pdfviewerscannerwhite.utils.ActivityManagerUtils
import
com.base.pdfviewerscannerwhite.utils.ActivityManagerUtils
import
com.base.pdfviewerscannerwhite.utils.AppPreferences
import
com.base.pdfviewerscannerwhite.utils.AppPreferences
import
com.base.pdfviewerscannerwhite.utils.LanguageUtils.getSystemLanguage
import
com.base.pdfviewerscannerwhite.utils.LogEx
import
com.base.pdfviewerscannerwhite.utils.LogEx
import
com.facebook.FacebookSdk
import
com.facebook.FacebookSdk
import
com.tom_roush.pdfbox.android.PDFBoxResourceLoader
import
com.tom_roush.pdfbox.android.PDFBoxResourceLoader
...
@@ -38,6 +36,7 @@ class MyApplication : Application() {
...
@@ -38,6 +36,7 @@ class MyApplication : Application() {
var
pdfSplitLanguage
:
String
=
Locale
.
ENGLISH
.
language
var
pdfSplitLanguage
:
String
=
Locale
.
ENGLISH
.
language
var
wordLanguage
:
String
=
Locale
.
ENGLISH
.
language
var
wordLanguage
:
String
=
Locale
.
ENGLISH
.
language
var
umpCanAd
:
Boolean
=
true
var
umpCanAd
:
Boolean
=
true
@JvmField
@JvmField
...
@@ -50,37 +49,25 @@ class MyApplication : Application() {
...
@@ -50,37 +49,25 @@ class MyApplication : Application() {
context
=
this
context
=
this
initUUid
()
initUUid
()
initApp
()
initApp
()
init
System
Language
()
init
Activity
Language
()
PDFBoxResourceLoader
.
init
(
applicationContext
)
PDFBoxResourceLoader
.
init
(
applicationContext
)
}
}
private
fun
initSystemLanguage
()
{
fun
initActivityLanguage
()
{
val
systemLanguage
=
getSystemLanguage
()
splashLanguage
=
ConstObject
.
appLanguageSp
mainLanguage
=
ConstObject
.
appLanguageSp
val
supportLanguage
=
listOf
(
setLanguage
=
ConstObject
.
appLanguageSp
Locale
.
ENGLISH
.
language
,
feedbackLanguage
=
ConstObject
.
appLanguageSp
Locale
.
PRC
.
language
,
pptLanguage
=
ConstObject
.
appLanguageSp
Locale
(
"pt"
,
"BR"
).
language
,
pdfLanguage
=
ConstObject
.
appLanguageSp
Locale
(
"es"
).
language
,
pdfLoadingLanguage
=
ConstObject
.
appLanguageSp
Locale
.
FRENCH
.
language
,
pdfMergeLanguage
=
ConstObject
.
appLanguageSp
Locale
(
"de"
).
language
,
pdfSelectLanguage
=
ConstObject
.
appLanguageSp
Locale
(
"th"
,
"TH"
).
language
,
pdfSplitLanguage
=
ConstObject
.
appLanguageSp
Locale
(
"in"
,
"ID"
).
language
,
wordLanguage
=
ConstObject
.
appLanguageSp
Locale
(
"ms"
,
"MY"
).
language
,
Locale
(
"vi"
,
"VN"
).
language
,
Locale
(
"ja"
,
"JP"
).
language
,
Locale
(
"it"
,
"IT"
).
language
,
Locale
(
"ko"
,
"KR"
).
language
,
Locale
(
"nl"
,
"NL"
).
language
,
Locale
(
"zh"
,
"TW"
).
language
,
Locale
(
"tr"
,
"TR"
).
language
)
if
(
supportLanguage
.
contains
(
systemLanguage
)
&&
ConstObject
.
appLanguageSp
!=
systemLanguage
)
{
LogEx
.
logDebug
(
TAG
,
"initSystemLanguage systemLanguage=$systemLanguage"
)
ConstObject
.
changeLanguageSp
=
systemLanguage
}
}
}
private
fun
initUUid
()
{
private
fun
initUUid
()
{
uuid
=
AppPreferences
.
getInstance
().
getString
(
"uuid"
,
""
)
uuid
=
AppPreferences
.
getInstance
().
getString
(
"uuid"
,
""
)
if
(
TextUtils
.
isEmpty
(
uuid
))
{
if
(
TextUtils
.
isEmpty
(
uuid
))
{
...
...
app/src/main/java/com/base/pdfviewerscannerwhite/ui/main/MainActivity.kt
View file @
c2cc9958
...
@@ -15,12 +15,16 @@ import com.base.pdfviewerscannerwhite.bean.ConstObject
...
@@ -15,12 +15,16 @@ import com.base.pdfviewerscannerwhite.bean.ConstObject
import
com.base.pdfviewerscannerwhite.bean.ConstObject.BOOKMARK_DATA_TYPE
import
com.base.pdfviewerscannerwhite.bean.ConstObject.BOOKMARK_DATA_TYPE
import
com.base.pdfviewerscannerwhite.bean.ConstObject.DOCUMENT_DATA_TYPE
import
com.base.pdfviewerscannerwhite.bean.ConstObject.DOCUMENT_DATA_TYPE
import
com.base.pdfviewerscannerwhite.bean.ConstObject.RECENT_DATA_TYPE
import
com.base.pdfviewerscannerwhite.bean.ConstObject.RECENT_DATA_TYPE
import
com.base.pdfviewerscannerwhite.bean.ConstObject.SHORTCUT_MERGE_PDF
import
com.base.pdfviewerscannerwhite.bean.ConstObject.SHORTCUT_SCAN_PDF
import
com.base.pdfviewerscannerwhite.bean.ConstObject.SHORTCUT_SPLIT_PDF
import
com.base.pdfviewerscannerwhite.bean.DocumentBean
import
com.base.pdfviewerscannerwhite.bean.DocumentBean
import
com.base.pdfviewerscannerwhite.databinding.ActivityMain2Binding
import
com.base.pdfviewerscannerwhite.databinding.ActivityMain2Binding
import
com.base.pdfviewerscannerwhite.helper.BaseActivity
import
com.base.pdfviewerscannerwhite.helper.BaseActivity
import
com.base.pdfviewerscannerwhite.helper.MyApplication
import
com.base.pdfviewerscannerwhite.helper.MyApplication
import
com.base.pdfviewerscannerwhite.ui.document.excel.ExcelActivity
import
com.base.pdfviewerscannerwhite.ui.document.excel.ExcelActivity
import
com.base.pdfviewerscannerwhite.ui.document.pdf.PdfActivity
import
com.base.pdfviewerscannerwhite.ui.document.pdf.PdfActivity
import
com.base.pdfviewerscannerwhite.ui.document.pdf.PdfSelectActivity
import
com.base.pdfviewerscannerwhite.ui.document.ppt.PptActivity
import
com.base.pdfviewerscannerwhite.ui.document.ppt.PptActivity
import
com.base.pdfviewerscannerwhite.ui.document.word.WordActivity
import
com.base.pdfviewerscannerwhite.ui.document.word.WordActivity
import
com.base.pdfviewerscannerwhite.ui.view.DialogView.showAppExitDialog
import
com.base.pdfviewerscannerwhite.ui.view.DialogView.showAppExitDialog
...
@@ -31,6 +35,7 @@ import com.base.pdfviewerscannerwhite.ui.view.PdfDialog.showPdfPwdDialog
...
@@ -31,6 +35,7 @@ import com.base.pdfviewerscannerwhite.ui.view.PdfDialog.showPdfPwdDialog
import
com.base.pdfviewerscannerwhite.utils.IntentShareUtils.shareMutDocuments
import
com.base.pdfviewerscannerwhite.utils.IntentShareUtils.shareMutDocuments
import
com.base.pdfviewerscannerwhite.utils.LogEx
import
com.base.pdfviewerscannerwhite.utils.LogEx
import
com.base.pdfviewerscannerwhite.utils.PermissionUtils.checkStorePermission
import
com.base.pdfviewerscannerwhite.utils.PermissionUtils.checkStorePermission
import
com.base.pdfviewerscannerwhite.utils.ShortcutUtils.addDeskShortCut
import
com.base.pdfviewerscannerwhite.utils.updateMediaStore
import
com.base.pdfviewerscannerwhite.utils.updateMediaStore
import
java.io.File
import
java.io.File
...
@@ -53,14 +58,23 @@ class MainActivity : BaseActivity<ActivityMain2Binding>(), MainView {
...
@@ -53,14 +58,23 @@ class MainActivity : BaseActivity<ActivityMain2Binding>(), MainView {
private
val
toolFragment
:
Fragment
by
lazy
{
private
val
toolFragment
:
Fragment
by
lazy
{
ToolFragment
()
ToolFragment
()
}
}
private
var
actionId
:
String
=
""
private
var
currentFragment
:
Fragment
=
documentFragment
private
var
currentFragment
:
Fragment
=
documentFragment
override
fun
initView
()
{
override
fun
initView
()
{
LogEx
.
logDebug
(
TAG
,
"initView"
)
actionId
=
intent
.
extras
?.
getString
(
"actionId"
)
?:
""
LogEx
.
logDebug
(
TAG
,
"initView actionId=$actionId"
,
true
)
mainPresenter
=
MainPresenter
(
this
,
this
,
lifecycleScope
)
mainPresenter
=
MainPresenter
(
this
,
this
,
lifecycleScope
)
mainPresenter
.
initScannerLauncher
(
this
)
mainPresenter
.
initScannerLauncher
(
this
)
addDeskShortCut
()
}
override
fun
onNewIntent
(
intent
:
Intent
?)
{
super
.
onNewIntent
(
intent
)
actionId
=
intent
?.
extras
?.
getString
(
"actionId"
)
?:
""
LogEx
.
logDebug
(
TAG
,
"onNewIntent actionId=$actionId"
,
true
)
actionIdOperation
()
}
}
override
fun
onResume
()
{
override
fun
onResume
()
{
...
@@ -92,7 +106,6 @@ class MainActivity : BaseActivity<ActivityMain2Binding>(), MainView {
...
@@ -92,7 +106,6 @@ class MainActivity : BaseActivity<ActivityMain2Binding>(), MainView {
override
fun
onSaveInstanceState
(
outState
:
Bundle
)
{
override
fun
onSaveInstanceState
(
outState
:
Bundle
)
{
super
.
onSaveInstanceState
(
outState
)
super
.
onSaveInstanceState
(
outState
)
LogEx
.
logDebug
(
TAG
,
"onSaveInstanceState"
)
LogEx
.
logDebug
(
TAG
,
"onSaveInstanceState"
)
}
}
var
isDocumentAdd
:
Boolean
=
false
var
isDocumentAdd
:
Boolean
=
false
...
@@ -215,6 +228,23 @@ class MainActivity : BaseActivity<ActivityMain2Binding>(), MainView {
...
@@ -215,6 +228,23 @@ class MainActivity : BaseActivity<ActivityMain2Binding>(), MainView {
mainPresenter
.
starGmsScan
(
this
)
mainPresenter
.
starGmsScan
(
this
)
}
}
actionIdOperation
()
}
private
fun
actionIdOperation
()
{
if
(
actionId
==
SHORTCUT_SCAN_PDF
)
{
mainPresenter
.
starGmsScan
(
this
)
}
if
(
actionId
==
SHORTCUT_SPLIT_PDF
)
{
startActivity
(
Intent
(
this
,
PdfSelectActivity
::
class
.
java
).
apply
{
putExtra
(
"doWhat"
,
ConstObject
.
DO_SPLIT_PDF
)
})
}
if
(
actionId
==
SHORTCUT_MERGE_PDF
)
{
startActivity
(
Intent
(
this
,
PdfSelectActivity
::
class
.
java
).
apply
{
putExtra
(
"doWhat"
,
ConstObject
.
DO_MERGE_PDF
)
})
}
}
}
private
fun
shareDocument
()
{
private
fun
shareDocument
()
{
...
...
app/src/main/java/com/base/pdfviewerscannerwhite/ui/set/SetLanguageActivity.kt
View file @
c2cc9958
...
@@ -8,7 +8,12 @@ import com.base.pdfviewerscannerwhite.bean.ConstObject.changeLanguageSp
...
@@ -8,7 +8,12 @@ import com.base.pdfviewerscannerwhite.bean.ConstObject.changeLanguageSp
import
com.base.pdfviewerscannerwhite.bean.LanguageBean
import
com.base.pdfviewerscannerwhite.bean.LanguageBean
import
com.base.pdfviewerscannerwhite.databinding.ActivitySetLanguageBinding
import
com.base.pdfviewerscannerwhite.databinding.ActivitySetLanguageBinding
import
com.base.pdfviewerscannerwhite.helper.BaseActivity
import
com.base.pdfviewerscannerwhite.helper.BaseActivity
import
com.base.pdfviewerscannerwhite.helper.MyApplication
import
com.base.pdfviewerscannerwhite.utils.LanguageUtils
import
com.base.pdfviewerscannerwhite.utils.LanguageUtils.changeAppLanguage
import
com.base.pdfviewerscannerwhite.utils.LanguageUtils.getSystemLanguageDefault
import
com.base.pdfviewerscannerwhite.utils.LanguageUtils.getSystemLanguageDefault
import
com.base.pdfviewerscannerwhite.utils.LogEx
import
com.cherry.lib.doc.office.fc.hssf.formula.function.IfFunc
import
java.util.Locale
import
java.util.Locale
class
SetLanguageActivity
:
BaseActivity
<
ActivitySetLanguageBinding
>()
{
class
SetLanguageActivity
:
BaseActivity
<
ActivitySetLanguageBinding
>()
{
...
@@ -16,6 +21,7 @@ class SetLanguageActivity : BaseActivity<ActivitySetLanguageBinding>() {
...
@@ -16,6 +21,7 @@ class SetLanguageActivity : BaseActivity<ActivitySetLanguageBinding>() {
override
val
binding
:
ActivitySetLanguageBinding
by
lazy
{
override
val
binding
:
ActivitySetLanguageBinding
by
lazy
{
ActivitySetLanguageBinding
.
inflate
(
layoutInflater
)
ActivitySetLanguageBinding
.
inflate
(
layoutInflater
)
}
}
private
val
TAG
=
""
private
lateinit
var
adapter
:
LanguageAdapter
private
lateinit
var
adapter
:
LanguageAdapter
private
var
from
:
String
=
""
private
var
from
:
String
=
""
override
fun
initView
()
{
override
fun
initView
()
{
...
@@ -24,6 +30,12 @@ class SetLanguageActivity : BaseActivity<ActivitySetLanguageBinding>() {
...
@@ -24,6 +30,12 @@ class SetLanguageActivity : BaseActivity<ActivitySetLanguageBinding>() {
adapter
=
LanguageAdapter
()
adapter
=
LanguageAdapter
()
binding
.
rv
.
adapter
=
adapter
binding
.
rv
.
adapter
=
adapter
val
systemLanguage
=
LanguageUtils
.
getSystemLanguage
()
if
(
MyApplication
.
setLanguage
!=
systemLanguage
&&
LanguageUtils
.
isSupportSystemLanguage
())
{
ConstObject
.
changeLanguageSp
=
systemLanguage
changeAppLanguage
(
this
)
recreate
()
}
initData
()
initData
()
}
}
...
@@ -51,6 +63,7 @@ class SetLanguageActivity : BaseActivity<ActivitySetLanguageBinding>() {
...
@@ -51,6 +63,7 @@ class SetLanguageActivity : BaseActivity<ActivitySetLanguageBinding>() {
}
}
}
}
private
fun
initData
()
{
private
fun
initData
()
{
val
list
=
listOf
(
val
list
=
listOf
(
LanguageBean
(
this
.
getString
(
R
.
string
.
follow_system
),
getSystemLanguageDefault
()).
apply
{
isFollowSystem
=
true
},
LanguageBean
(
this
.
getString
(
R
.
string
.
follow_system
),
getSystemLanguageDefault
()).
apply
{
isFollowSystem
=
true
},
...
...
app/src/main/java/com/base/pdfviewerscannerwhite/ui/splash/SplashActivity.kt
View file @
c2cc9958
...
@@ -12,6 +12,7 @@ import com.base.pdfviewerscannerwhite.R
...
@@ -12,6 +12,7 @@ import com.base.pdfviewerscannerwhite.R
import
com.base.pdfviewerscannerwhite.ads.AdmobHelper.initAdmobAd
import
com.base.pdfviewerscannerwhite.ads.AdmobHelper.initAdmobAd
import
com.base.pdfviewerscannerwhite.ads.admob.AdmobOpenUtils
import
com.base.pdfviewerscannerwhite.ads.admob.AdmobOpenUtils
import
com.base.pdfviewerscannerwhite.bean.ConstObject
import
com.base.pdfviewerscannerwhite.bean.ConstObject
import
com.base.pdfviewerscannerwhite.bean.ConstObject.SHORTCUT_SCAN_PDF
import
com.base.pdfviewerscannerwhite.bean.ConstObject.haveSelectLanguage
import
com.base.pdfviewerscannerwhite.bean.ConstObject.haveSelectLanguage
import
com.base.pdfviewerscannerwhite.bean.ConstObject.ifAgreePrivacy
import
com.base.pdfviewerscannerwhite.bean.ConstObject.ifAgreePrivacy
import
com.base.pdfviewerscannerwhite.databinding.ActivitySplash2Binding
import
com.base.pdfviewerscannerwhite.databinding.ActivitySplash2Binding
...
@@ -26,7 +27,6 @@ import com.base.pdfviewerscannerwhite.utils.LogEx
...
@@ -26,7 +27,6 @@ import com.base.pdfviewerscannerwhite.utils.LogEx
import
com.base.pdfviewerscannerwhite.utils.ToastUtils.toast
import
com.base.pdfviewerscannerwhite.utils.ToastUtils.toast
import
com.base.pdfviewerscannerwhite.utils.UmpUtils
import
com.base.pdfviewerscannerwhite.utils.UmpUtils
import
com.base.pdfviewerscannerwhite.utils.UmpUtils.requestUMP
import
com.base.pdfviewerscannerwhite.utils.UmpUtils.requestUMP
import
com.cherry.lib.doc.office.system.IFind
import
java.util.Calendar
import
java.util.Calendar
import
java.util.Locale
import
java.util.Locale
import
java.util.concurrent.atomic.AtomicBoolean
import
java.util.concurrent.atomic.AtomicBoolean
...
@@ -41,12 +41,14 @@ class SplashActivity : BaseActivity<ActivitySplash2Binding>(), SplashView {
...
@@ -41,12 +41,14 @@ class SplashActivity : BaseActivity<ActivitySplash2Binding>(), SplashView {
override
val
binding
:
ActivitySplash2Binding
by
lazy
{
override
val
binding
:
ActivitySplash2Binding
by
lazy
{
ActivitySplash2Binding
.
inflate
(
layoutInflater
)
ActivitySplash2Binding
.
inflate
(
layoutInflater
)
}
}
private
var
actionId
=
""
@SuppressLint
(
"SetTextI18n"
)
@SuppressLint
(
"SetTextI18n"
)
override
fun
initView
()
{
override
fun
initView
()
{
BarUtils
.
setStatusBarLightMode
(
this
,
true
)
BarUtils
.
setStatusBarLightMode
(
this
,
true
)
BarUtils
.
setStatusBarColor
(
this
,
Color
.
TRANSPARENT
)
BarUtils
.
setStatusBarColor
(
this
,
Color
.
TRANSPARENT
)
// binding.root.updatePadding(top = BarUtils.getStatusBarHeight())
// binding.root.updatePadding(top = BarUtils.getStatusBarHeight())
if
(
Build
.
VERSION
.
SDK_INT
>=
33
)
{
if
(
Build
.
VERSION
.
SDK_INT
>=
33
)
{
registerForActivityResult
(
ActivityResultContracts
.
RequestPermission
())
{}.
launch
(
registerForActivityResult
(
ActivityResultContracts
.
RequestPermission
())
{}.
launch
(
...
@@ -56,6 +58,10 @@ class SplashActivity : BaseActivity<ActivitySplash2Binding>(), SplashView {
...
@@ -56,6 +58,10 @@ class SplashActivity : BaseActivity<ActivitySplash2Binding>(), SplashView {
splashPresenter
=
SplashPresenter
(
this
)
splashPresenter
=
SplashPresenter
(
this
)
startStayNotification
()
startStayNotification
()
actionId
=
intent
.
extras
?.
getString
(
"actionId"
)
?:
""
LogEx
.
logDebug
(
TAG
,
"actionId=$actionId"
)
// 获取当前日期
// 获取当前日期
val
calendar
:
Calendar
=
Calendar
.
getInstance
()
val
calendar
:
Calendar
=
Calendar
.
getInstance
()
val
month
:
Int
=
calendar
.
get
(
Calendar
.
MONTH
)
val
month
:
Int
=
calendar
.
get
(
Calendar
.
MONTH
)
...
@@ -100,7 +106,6 @@ class SplashActivity : BaseActivity<ActivitySplash2Binding>(), SplashView {
...
@@ -100,7 +106,6 @@ class SplashActivity : BaseActivity<ActivitySplash2Binding>(), SplashView {
}
}
ifAgreePrivacy
=
true
ifAgreePrivacy
=
true
if
(
ifAgreePrivacy
)
{
if
(
ifAgreePrivacy
)
{
if
(
isHotLaunch
)
{
if
(
isHotLaunch
)
{
agreePrivacy
()
agreePrivacy
()
}
else
{
}
else
{
...
@@ -170,18 +175,24 @@ class SplashActivity : BaseActivity<ActivitySplash2Binding>(), SplashView {
...
@@ -170,18 +175,24 @@ class SplashActivity : BaseActivity<ActivitySplash2Binding>(), SplashView {
binding
.
progressBar
.
progress
=
100
binding
.
progressBar
.
progress
=
100
binding
.
root
.
postDelayed
({
binding
.
root
.
postDelayed
({
if
(!
haveSelectLanguage
&&
ConstObject
.
changeLanguageSp
!=
Locale
.
ENGLISH
.
language
)
{
if
(!
haveSelectLanguage
&&
ConstObject
.
changeLanguageSp
!=
Locale
.
ENGLISH
.
language
)
{
startActivity
(
Intent
(
this
,
SetLanguageActivity
::
class
.
java
))
startActivity
(
Intent
(
this
,
SetLanguageActivity
::
class
.
java
))
finish
()
finish
()
return
@postDelayed
return
@postDelayed
}
}
val
actionId
=
intent
.
extras
?.
getString
(
"actionId"
)
LogEx
.
logDebug
(
TAG
,
"jumpNext actionId=$actionId"
)
startActivity
(
Intent
(
this
,
MainActivity
::
class
.
java
).
apply
{
when
(
actionId
)
{
putExtra
(
"actionId"
,
actionId
)
})
else
->
{
startActivity
(
Intent
(
this
,
MainActivity
::
class
.
java
).
apply
{
putExtra
(
"actionId"
,
actionId
)
})
}
}
this
.
intent
.
extras
?.
clear
()
finish
()
finish
()
intent
.
extras
?.
clear
()
},
100
)
},
100
)
}
}
...
...
app/src/main/java/com/base/pdfviewerscannerwhite/utils/LanguageUtils.kt
View file @
c2cc9958
package
com.base.pdfviewerscannerwhite.utils
package
com.base.pdfviewerscannerwhite.utils
import
android.content.Context
import
android.content.Context
import
android.os.LocaleList
import
com.base.pdfviewerscannerwhite.bean.ConstObject
import
java.util.Locale
import
java.util.Locale
object
LanguageUtils
{
object
LanguageUtils
{
...
@@ -9,25 +11,26 @@ object LanguageUtils {
...
@@ -9,25 +11,26 @@ object LanguageUtils {
return
Locale
.
getDefault
().
language
return
Locale
.
getDefault
().
language
}
}
val
supportLanguage
=
listOf
(
Locale
.
ENGLISH
.
language
,
Locale
.
PRC
.
language
,
Locale
(
"pt"
,
"BR"
).
language
,
Locale
(
"es"
).
language
,
Locale
.
FRENCH
.
language
,
Locale
(
"de"
).
language
,
Locale
(
"th"
,
"TH"
).
language
,
Locale
(
"in"
,
"ID"
).
language
,
Locale
(
"ms"
,
"MY"
).
language
,
Locale
(
"vi"
,
"VN"
).
language
,
Locale
(
"ja"
,
"JP"
).
language
,
Locale
(
"it"
,
"IT"
).
language
,
Locale
(
"ko"
,
"KR"
).
language
,
Locale
(
"nl"
,
"NL"
).
language
,
Locale
(
"zh"
,
"TW"
).
language
,
Locale
(
"tr"
,
"TR"
).
language
)
fun
getSystemLanguageDefault
():
String
{
fun
getSystemLanguageDefault
():
String
{
val
supportLanguage
=
listOf
(
Locale
.
ENGLISH
.
language
,
Locale
.
PRC
.
language
,
Locale
(
"pt"
,
"BR"
).
language
,
Locale
(
"es"
).
language
,
Locale
.
FRENCH
.
language
,
Locale
(
"de"
).
language
,
Locale
(
"th"
,
"TH"
).
language
,
Locale
(
"in"
,
"ID"
).
language
,
Locale
(
"ms"
,
"MY"
).
language
,
Locale
(
"vi"
,
"VN"
).
language
,
Locale
(
"ja"
,
"JP"
).
language
,
Locale
(
"it"
,
"IT"
).
language
,
Locale
(
"ko"
,
"KR"
).
language
,
Locale
(
"nl"
,
"NL"
).
language
,
Locale
(
"zh"
,
"TW"
).
language
,
Locale
(
"tr"
,
"TR"
).
language
)
var
systemLanguage
=
getSystemLanguage
()
var
systemLanguage
=
getSystemLanguage
()
if
(!
supportLanguage
.
contains
(
systemLanguage
))
{
if
(!
supportLanguage
.
contains
(
systemLanguage
))
{
systemLanguage
=
Locale
.
ENGLISH
.
language
systemLanguage
=
Locale
.
ENGLISH
.
language
...
@@ -35,4 +38,19 @@ object LanguageUtils {
...
@@ -35,4 +38,19 @@ object LanguageUtils {
return
systemLanguage
return
systemLanguage
}
}
fun
isSupportSystemLanguage
():
Boolean
{
return
supportLanguage
.
contains
(
getSystemLanguage
())
}
fun
changeAppLanguage
(
context
:
Context
)
{
val
config
=
context
.
resources
.
configuration
val
locale
=
Locale
(
ConstObject
.
changeLanguageSp
)
//Android 7.0以上的方法
config
.
setLocale
(
locale
)
config
.
setLocales
(
LocaleList
(
locale
));
context
.
createConfigurationContext
(
config
);
context
.
resources
.
updateConfiguration
(
config
,
context
.
resources
.
displayMetrics
)
}
}
}
\ No newline at end of file
app/src/main/java/com/base/pdfviewerscannerwhite/utils/ShortcutUtils.kt
0 → 100644
View file @
c2cc9958
package
com.base.pdfviewerscannerwhite.utils
import
android.content.Context
import
android.content.Intent
import
android.content.pm.ShortcutInfo
import
android.content.pm.ShortcutManager
import
android.graphics.drawable.Icon
import
android.os.Build
import
com.base.pdfviewerscannerwhite.R
import
com.base.pdfviewerscannerwhite.bean.ConstObject
import
com.base.pdfviewerscannerwhite.ui.splash.SplashActivity
object
ShortcutUtils
{
fun
Context
.
addDeskShortCut
()
{
//获取ShortcutManager对象
if
(
Build
.
VERSION
.
SDK_INT
>=
Build
.
VERSION_CODES
.
N_MR1
)
{
val
shortcutManager
:
ShortcutManager
=
getSystemService
(
ShortcutManager
::
class
.
java
)
as
ShortcutManager
val
shortcut1
=
ShortcutInfo
.
Builder
(
this
,
"11111"
)
.
setShortLabel
(
"Scan Pdf"
)
.
setIcon
(
Icon
.
createWithResource
(
this
,
R
.
mipmap
.
scan_tool
))
.
setIntent
(
Intent
(
Intent
.
ACTION_MAIN
,
null
,
this
,
SplashActivity
::
class
.
java
).
apply
{
putExtra
(
"actionId"
,
ConstObject
.
SHORTCUT_SCAN_PDF
)
})
.
build
()
val
shortcut2
=
ShortcutInfo
.
Builder
(
this
,
"22222"
)
.
setShortLabel
(
"Split Pdf"
)
.
setIcon
(
Icon
.
createWithResource
(
this
,
R
.
mipmap
.
split
))
.
setIntent
(
Intent
(
Intent
.
ACTION_MAIN
,
null
,
this
,
SplashActivity
::
class
.
java
).
apply
{
putExtra
(
"actionId"
,
ConstObject
.
SHORTCUT_MERGE_PDF
)
})
.
build
()
val
shortcut3
=
ShortcutInfo
.
Builder
(
this
,
"33333"
)
.
setShortLabel
(
"Merge Pdf"
)
.
setIcon
(
Icon
.
createWithResource
(
this
,
R
.
mipmap
.
merge
))
.
setIntent
(
Intent
(
Intent
.
ACTION_MAIN
,
null
,
this
,
SplashActivity
::
class
.
java
).
apply
{
putExtra
(
"actionId"
,
ConstObject
.
SHORTCUT_MERGE_PDF
)
})
.
build
()
//setDynamicShortcuts()方法来设置快捷方式
shortcutManager
.
setDynamicShortcuts
(
listOf
(
shortcut1
,
shortcut2
,
shortcut3
))
}
}
}
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment