Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Sign in / Register
Toggle navigation
B
Browser 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
Browser White
Commits
e3536802
Commit
e3536802
authored
Aug 28, 2024
by
leichao.gao
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update
parent
aefcca9a
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
69 additions
and
6 deletions
+69
-6
build.gradle.kts
app/build.gradle.kts
+2
-2
AndroidManifest.xml
app/src/main/AndroidManifest.xml
+1
-1
FCMManager.java
app/src/main/java/com/base/browserwhite/fcm/FCMManager.java
+0
-1
MainActivity.kt
...in/java/com/base/browserwhite/ui/activity/MainActivity.kt
+10
-2
ShortcutHelper.java
...main/java/com/base/browserwhite/utils/ShortcutHelper.java
+56
-0
No files found.
app/build.gradle.kts
View file @
e3536802
...
...
@@ -124,8 +124,6 @@ dependencies {
//支持暂停恢复下载
implementation
(
"com.liulishuo.filedownloader:library:1.7.7"
)
//facebook
implementation
(
"com.facebook.android:facebook-android-sdk:[8,9)"
)
//firebase
...
...
@@ -139,4 +137,6 @@ dependencies {
// Use this dependency to use the dynamically downloaded model in Google Play Services
// implementation ("com.google.android.gms:play-services-mlkit-barcode-scanning:18.3.1")
//facebook
}
\ No newline at end of file
app/src/main/AndroidManifest.xml
View file @
e3536802
...
...
@@ -14,7 +14,7 @@
<uses-permission
android:name=
"android.permission.FOREGROUND_SERVICE"
/>
<uses-permission
android:name=
"android.permission.FOREGROUND_SERVICE_DATA_SYNC"
/>
<uses-permission
android:name=
"android.permission.REQUEST_INSTALL_PACKAGES"
/>
<uses-permission
android:name=
"com.android.launcher.permission.INSTALL_SHORTCUT"
/>
<queries>
<intent>
<action
android:name=
"android.intent.action.MAIN"
/>
...
...
app/src/main/java/com/base/browserwhite/fcm/FCMManager.java
View file @
e3536802
...
...
@@ -30,7 +30,6 @@ public class FCMManager {
}
}
});
}
public
static
void
unsubscribeFromTopic
(
String
topic
)
{
...
...
app/src/main/java/com/base/browserwhite/ui/activity/MainActivity.kt
View file @
e3536802
...
...
@@ -2,26 +2,28 @@ package com.base.browserwhite.ui.activity
import
android.app.usage.StorageStatsManager
import
android.graphics.Color
import
android.net.Uri
import
android.os.Build
import
android.os.Environment
import
android.os.StatFs
import
android.os.storage.StorageManager
import
android.provider.MediaStore
import
androidx.appcompat.app.AppCompatActivity
import
androidx.core.view.updatePadding
import
androidx.fragment.app.Fragment
import
androidx.viewpager2.adapter.FragmentStateAdapter
import
androidx.viewpager2.widget.ViewPager2
import
com.base.browserwhite.R
import
com.base.browserwhite.bean.ConstObject.isFirstMainShow
import
com.base.browserwhite.databinding.ActivityMainBinding
import
com.base.browserwhite.ui.activity.splash.Splash2Activity
import
com.base.browserwhite.ui.fragment.FileFragment
import
com.base.browserwhite.ui.fragment.HomeFragment
import
com.base.browserwhite.ui.views.DialogViews.showDefaultBrowserDialog
import
com.base.browserwhite.ui.views.DialogViews.showMyAccountDialog
import
com.base.browserwhite.utils.BarUtils
import
com.base.browserwhite.utils.ShortcutHelper
import
java.io.File
class
MainActivity
:
BaseActivity
<
ActivityMainBinding
>()
{
private
val
TAG
=
"MainActivity"
...
...
@@ -44,6 +46,12 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
}
override
fun
initView
()
{
// 在Activity中调用创建快捷方式的方法
ShortcutHelper
.
requestCreateShortcut
(
this
,
"my_shortcut_id"
,
"My Shortcut"
,
"Open My App quickly"
,
Splash2Activity
::
class
.
java
,
R
.
mipmap
.
logo
)
BarUtils
.
setStatusBarLightMode
(
this
,
true
)
BarUtils
.
setStatusBarColor
(
this
,
Color
.
TRANSPARENT
)
binding
.
root
.
updatePadding
(
top
=
BarUtils
.
getStatusBarHeight
())
...
...
app/src/main/java/com/base/browserwhite/utils/ShortcutHelper.java
0 → 100644
View file @
e3536802
package
com
.
base
.
browserwhite
.
utils
;
import
android.app.PendingIntent
;
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
;
public
class
ShortcutHelper
{
/**
* 请求创建桌面快捷方式。
*
* @param context 应用上下文。
* @param shortcutId 快捷方式的唯一标识符。
* @param shortLabel 快捷方式的简短标签。
* @param longLabel 快捷方式的长标签。
* @param activityClass 快捷方式要启动的Activity。
* @param iconResId 快捷方式的图标资源ID。
*/
public
static
void
requestCreateShortcut
(
Context
context
,
String
shortcutId
,
String
shortLabel
,
String
longLabel
,
Class
<?>
activityClass
,
int
iconResId
)
{
// 创建启动Activity的Intent
if
(
Build
.
VERSION
.
SDK_INT
<
Build
.
VERSION_CODES
.
N_MR1
){
return
;}
Intent
intent
=
new
Intent
(
context
,
activityClass
);
intent
.
setAction
(
Intent
.
ACTION_VIEW
);
// 创建ShortcutInfo实例
ShortcutInfo
shortcut
=
new
ShortcutInfo
.
Builder
(
context
,
shortcutId
)
.
setShortLabel
(
shortLabel
)
.
setLongLabel
(
longLabel
)
.
setIcon
(
Icon
.
createWithResource
(
context
,
iconResId
))
.
setIntent
(
intent
)
.
build
();
// 获取ShortcutManager实例
ShortcutManager
shortcutManager
=
(
ShortcutManager
)
context
.
getSystemService
(
Context
.
SHORTCUT_SERVICE
);
// 检查API级别和是否支持请求创建快捷方式
if
(
Build
.
VERSION
.
SDK_INT
>=
Build
.
VERSION_CODES
.
O
)
{
if
(
shortcutManager
!=
null
&&
shortcutManager
.
isRequestPinShortcutSupported
())
{
if
(
Build
.
VERSION
.
SDK_INT
>=
Build
.
VERSION_CODES
.
O
)
{
// Android 8.0及以上,直接请求创建快捷方式
shortcutManager
.
requestPinShortcut
(
shortcut
,
null
);
}
else
{
// Android 7.1 (API级别25) 使用广播接收用户响应
Intent
pinnedShortcutCallbackIntent
=
shortcutManager
.
createShortcutResultIntent
(
shortcut
);
PendingIntent
successCallback
=
PendingIntent
.
getBroadcast
(
context
,
0
,
new
Intent
(
"com.example.SUCCESS"
),
PendingIntent
.
FLAG_UPDATE_CURRENT
);
PendingIntent
failureCallback
=
PendingIntent
.
getBroadcast
(
context
,
0
,
new
Intent
(
"com.example.FAILURE"
),
PendingIntent
.
FLAG_UPDATE_CURRENT
);
shortcutManager
.
requestPinShortcut
(
shortcut
,
successCallback
.
getIntentSender
());
}
}
}
}
}
\ 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