Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
M
Magisk
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
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
Magisk
Commits
668d85d1
Commit
668d85d1
authored
Jul 19, 2017
by
topjohnwu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Improve notification support
parent
c11a3dc9
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
64 additions
and
43 deletions
+64
-43
MagiskFragment.java
app/src/main/java/com/topjohnwu/magisk/MagiskFragment.java
+38
-37
MagiskManager.java
app/src/main/java/com/topjohnwu/magisk/MagiskManager.java
+2
-0
MainActivity.java
app/src/main/java/com/topjohnwu/magisk/MainActivity.java
+10
-1
SplashActivity.java
app/src/main/java/com/topjohnwu/magisk/SplashActivity.java
+7
-1
ManagerUpdate.java
...in/java/com/topjohnwu/magisk/receivers/ManagerUpdate.java
+3
-2
Utils.java
app/src/main/java/com/topjohnwu/magisk/utils/Utils.java
+4
-2
No files found.
app/src/main/java/com/topjohnwu/magisk/MagiskFragment.java
View file @
668d85d1
...
...
@@ -2,7 +2,9 @@ package com.topjohnwu.magisk;
import
android.animation.Animator
;
import
android.animation.ValueAnimator
;
import
android.app.NotificationManager
;
import
android.app.ProgressDialog
;
import
android.content.Context
;
import
android.content.Intent
;
import
android.net.Uri
;
import
android.os.Bundle
;
...
...
@@ -49,7 +51,8 @@ import butterknife.Unbinder;
public
class
MagiskFragment
extends
Fragment
implements
CallbackEvent
.
Listener
<
Void
>,
SwipeRefreshLayout
.
OnRefreshListener
{
private
static
boolean
noDialog
=
false
;
public
static
final
String
SHOW_DIALOG
=
"dialog"
;
private
static
int
expandHeight
=
0
;
private
static
boolean
mExpanded
=
false
;
...
...
@@ -126,7 +129,9 @@ public class MagiskFragment extends Fragment
.
setMessage
(
getString
(
R
.
string
.
repo_install_msg
,
filename
))
.
setCancelable
(
true
)
.
setPositiveButton
(
Shell
.
rootAccess
()
?
R
.
string
.
install
:
R
.
string
.
download
,
(
d
,
i
)
->
(
d
,
i
)
->
{
((
NotificationManager
)
getActivity
()
.
getSystemService
(
Context
.
NOTIFICATION_SERVICE
)).
cancelAll
();
Utils
.
dlAndReceive
(
getActivity
(),
new
DownloadReceiver
()
{
...
...
@@ -150,7 +155,9 @@ public class MagiskFragment extends Fragment
}
},
magiskManager
.
magiskLink
,
Utils
.
getLegalFilename
(
filename
)))
Utils
.
getLegalFilename
(
filename
));
}
)
.
setNeutralButton
(
R
.
string
.
release_notes
,
(
d
,
i
)
->
{
if
(
magiskManager
.
releaseNoteLink
!=
null
)
{
Intent
openReleaseNoteLink
=
new
Intent
(
Intent
.
ACTION_VIEW
,
Uri
.
parse
(
magiskManager
.
releaseNoteLink
));
...
...
@@ -241,19 +248,11 @@ public class MagiskFragment extends Fragment
mSwipeRefreshLayout
.
setOnRefreshListener
(
this
);
if
(
magiskManager
.
magiskVersionCode
<
0
&&
Shell
.
rootAccess
()
&&
!
noDialog
)
{
noDialog
=
true
;
new
AlertDialogBuilder
(
getActivity
())
.
setTitle
(
R
.
string
.
no_magisk_title
)
.
setMessage
(
R
.
string
.
no_magisk_msg
)
.
setCancelable
(
true
)
.
setPositiveButton
(
R
.
string
.
goto_install
,
(
d
,
i
)
->
{})
.
setNegativeButton
(
R
.
string
.
no_thanks
,
null
)
.
show
();
}
updateUI
();
if
(
getArguments
()
!=
null
&&
getArguments
().
getBoolean
(
SHOW_DIALOG
))
install
();
return
v
;
}
...
...
@@ -272,7 +271,6 @@ public class MagiskFragment extends Fragment
magiskManager
.
remoteMagiskVersionString
=
null
;
magiskManager
.
remoteMagiskVersionCode
=
-
1
;
collapse
();
noDialog
=
false
;
// Trigger state check
if
(
Utils
.
checkNetworkStatus
(
magiskManager
))
{
...
...
@@ -410,6 +408,9 @@ public class MagiskFragment extends Fragment
magiskUpdateProgress
.
setVisibility
(
View
.
GONE
);
mSwipeRefreshLayout
.
setRefreshing
(
false
);
if
(
magiskManager
.
remoteMagiskVersionCode
>
magiskManager
.
magiskVersionCode
)
install
();
}
private
void
updateSafetyNetUI
()
{
...
...
app/src/main/java/com/topjohnwu/magisk/MagiskManager.java
View file @
668d85d1
...
...
@@ -32,6 +32,8 @@ public class MagiskManager extends Application {
public
static
final
String
UNINSTALLER
=
"magisk_uninstaller.sh"
;
public
static
final
String
UTIL_FUNCTIONS
=
"util_functions.sh"
;
public
static
final
String
INTENT_SECTION
=
"section"
;
public
static
final
String
INTENT_VERSION
=
"version"
;
public
static
final
String
INTENT_LINK
=
"link"
;
public
static
final
String
BUSYBOX_VERSION
=
"1.26.2"
;
public
static
final
String
MAGISKHIDE_PROP
=
"persist.magisk.hide"
;
public
static
final
String
DISABLE_INDICATION_PROP
=
"ro.magisk.disable"
;
...
...
app/src/main/java/com/topjohnwu/magisk/MainActivity.java
View file @
668d85d1
...
...
@@ -140,9 +140,11 @@ public class MainActivity extends Activity
if
(
item
!=
null
)
{
switch
(
item
)
{
case
"magisk"
:
case
"install"
:
itemId
=
R
.
id
.
magisk
;
break
;
case
"install"
:
itemId
=
-
1
;
break
;
case
"superuser"
:
itemId
=
R
.
id
.
superuser
;
break
;
...
...
@@ -174,6 +176,13 @@ public class MainActivity extends Activity
mDrawerItem
=
itemId
;
navigationView
.
setCheckedItem
(
itemId
);
switch
(
itemId
)
{
case
-
1
:
Bundle
args
=
new
Bundle
();
args
.
putBoolean
(
MagiskFragment
.
SHOW_DIALOG
,
true
);
Fragment
frag
=
new
MagiskFragment
();
frag
.
setArguments
(
args
);
displayFragment
(
frag
,
"magisk"
,
true
);
break
;
case
R
.
id
.
magisk
:
displayFragment
(
new
MagiskFragment
(),
"magisk"
,
true
);
break
;
...
...
app/src/main/java/com/topjohnwu/magisk/SplashActivity.java
View file @
668d85d1
...
...
@@ -24,8 +24,14 @@ public class SplashActivity extends Activity{
super
.
onCreate
(
savedInstanceState
);
MagiskManager
magiskManager
=
getApplicationContext
();
// Init the info and configs and root sh
getApplicationContext
().
init
();
magiskManager
.
init
();
// Get possible additional info from intent
magiskManager
.
remoteMagiskVersionString
=
getIntent
().
getStringExtra
(
MagiskManager
.
INTENT_VERSION
);
magiskManager
.
magiskLink
=
getIntent
().
getStringExtra
(
MagiskManager
.
INTENT_LINK
);
// Now fire all async tasks
new
LoadModules
(
this
)
...
...
app/src/main/java/com/topjohnwu/magisk/receivers/ManagerUpdate.java
View file @
668d85d1
...
...
@@ -7,6 +7,7 @@ import android.net.Uri;
import
android.os.Build
;
import
android.support.v4.content.FileProvider
;
import
com.topjohnwu.magisk.MagiskManager
;
import
com.topjohnwu.magisk.utils.Utils
;
import
java.io.File
;
...
...
@@ -34,8 +35,8 @@ public class ManagerUpdate extends BroadcastReceiver {
}
}
},
intent
.
getStringExtra
(
"link"
),
intent
.
getStringExtra
(
MagiskManager
.
INTENT_LINK
),
Utils
.
getLegalFilename
(
"MagiskManager-v"
+
intent
.
getStringExtra
(
"version"
)
+
".apk"
));
intent
.
getStringExtra
(
MagiskManager
.
INTENT_VERSION
)
+
".apk"
));
}
}
app/src/main/java/com/topjohnwu/magisk/utils/Utils.java
View file @
668d85d1
...
...
@@ -196,6 +196,8 @@ public class Utils {
.
setAutoCancel
(
true
);
Intent
intent
=
new
Intent
(
magiskManager
,
SplashActivity
.
class
);
intent
.
putExtra
(
MagiskManager
.
INTENT_SECTION
,
"install"
);
intent
.
putExtra
(
MagiskManager
.
INTENT_VERSION
,
magiskManager
.
remoteMagiskVersionString
);
intent
.
putExtra
(
MagiskManager
.
INTENT_LINK
,
magiskManager
.
magiskLink
);
TaskStackBuilder
stackBuilder
=
TaskStackBuilder
.
create
(
magiskManager
);
stackBuilder
.
addParentStack
(
SplashActivity
.
class
);
stackBuilder
.
addNextIntent
(
intent
);
...
...
@@ -216,8 +218,8 @@ public class Utils {
.
setVibrate
(
new
long
[]{
0
,
100
,
100
,
100
})
.
setAutoCancel
(
true
);
Intent
intent
=
new
Intent
(
magiskManager
,
ManagerUpdate
.
class
);
intent
.
putExtra
(
"link"
,
magiskManager
.
managerLink
);
intent
.
putExtra
(
"version"
,
magiskManager
.
remoteManagerVersionString
);
intent
.
putExtra
(
MagiskManager
.
INTENT_LINK
,
magiskManager
.
managerLink
);
intent
.
putExtra
(
MagiskManager
.
INTENT_VERSION
,
magiskManager
.
remoteManagerVersionString
);
PendingIntent
pendingIntent
=
PendingIntent
.
getBroadcast
(
magiskManager
,
APK_UPDATE_NOTIFICATION_ID
,
intent
,
PendingIntent
.
FLAG_UPDATE_CURRENT
);
builder
.
setContentIntent
(
pendingIntent
);
...
...
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