[15843] 2020-09-12_从0到1编写一个XposedModule:AntiScreenshot

文档创建者:s7ckTeam
浏览次数:2
最后更新:2025-01-18
2020-09-12_从0到1编写一个XposedModule:AntiScreenshot 0 1 X p o s e d   M o d u l e   A n t i   S c r e e n s h o t l u s h a n   F r e e B u f   2 0 2 0 - 0 9 - 1 2 a p p x p o s e d   m o d u l e r o o t = = g o d   r o o t   a p p a p p b y p a s s   i m a p p G i t H u b R e l e a s e G i t h u b   R e p o h t t p s : / / g i t h u b . c o m / l u s h a n n / A n t i - S c r e e n s h o t R e l e a s e   h t t p s : / / g i t h u b . c o m / l u s h a n n / A n t i - S c r e e n s h o t / r e l e a s e s S t a r t 0 1 x p o s e d
X p o s e d B r i d g e   A P I   j a r h t t p s : / / f o r u m . x d a - d e v e l o p e r s . c o m / x p o s e d / x p o s e d - a p i - c h a n g e l o g - d e v e l o p e r - n e w s - t 2 7 1 4 0 6 7 1 . A n d r o i d   S t u d i o     E m p t y   A c t i v i t y
N o   A c t i v i t y   s t u d i o a c t v i t y a c t i v i t y a p k A n d r o i d 8 . 1 M i n i m u m   S D K   8 . 0   2 . x p o s e d   m o d u l e   s r c / m a i n / r e s / v a l u e s / s t r i n g s . x m l A n d r o i d M a n i f e s t . x m l 3 .   X p o s e d B r i d g e   A P I   X p o s e d B r i d g e A p i l i b s   A d d   A s   L i b r a r y < s t r i n g   n a m e = " x p o s e d _ d e s c r i p t i o n " >   @ l u s h a n < / s t r i n g > < m e t a - d a t a   a n d r o i d : n a m e = " x p o s e d m o d u l e "   a n d r o i d : v a l u e = " t r u e "   / >   < m e t a - d a t a   a n d r o i d : n a m e = " x p o s e d d e s c r i p t i o n "   a n d r o i d : v a l u e = " @ s t r i n g / x p o s e d _ d e s c r i p t i o n "   / >   < m e t a - d a t a   a n d r o i d : n a m e =
a p p b u i l d . g r a d l e   d e p e n d e n c i e s   p r o v i d e d   c o m p i l e O n l y   x p o s e d l o g 4 . X p o s e d   m o d u l e   p u b l i c   c l a s s   H o o k M a i n   i m p l e m e n t s   I X p o s e d H o o k L o a d P a c k a g e   {         @ O v e r r i d e         p u b l i c   v o i d   h a n d l e L o a d P a c k a g e ( X C _ L o a d P a c k a g e . L o a d P a c k a g e P a r a m   l o a d P a c k a g e P a r a m )   t h r o w s   T h r o w a b l e   {
5 .   X p o s e d   m o d u l e   s r c / m a i n   a s s e t s / x p o s e d _ i n i t   ,   + x p o s e d   m o d u l e H o o k x p o s e d     m o d u l e   m o d u l e   A n d r o i d A n d r o i d D i s p l a y F L A G _ S E C U R E   F L A G _ S E C U R E A n   a p p l i c a t i o n   c r e a t e s   a   w i n d o w   w i t h   a   s e c u r e   s u r f a c e   b y   s p e c i f y i n g   t h e   W i n d o w M a n a g e r . L a y o u t P a r a m s # F L A G _ S E C U R E w i n d o w   f l a g .   L i k e w i s e ,   a n   a p p l i c a t i o n   c r e a t e s   a   S u r f a c e V i e w w i t h   a   s e c u r e   s u r f a c e   b y   c a l l i n g   S u r f a c e V i e w # s e t S e c u r e   b e f o r e   a t t a c h i n g   t h e   s e c u r e   v i e w   t o   i t s   c o n t a i n i n g   w i n d o w . h t t p s : / / d e v e l o p e r . a n d r o i d . c o m / r e f e r e n c e / a n d r o i d / v i e w / D i s p l a y # F L A G _ S E C U R E   D i s p l a y . F L A G _ S E C U R E   w i n d o w f l a g W i n d o w M a n a g e r . L a y o u t P a r a m s # F L A G _ S E C U R E   使 S u r f a c e V i e w # s e t S e c u r e   H o o k 1 .   w i n d o w   f l a g w i n d o w . s e t F l a g ( W i n d o w M a n a g e r . L a y o u t P a r a m s . F L A G _ S E C U R E )         } }
h t t p s : / / d e v e l o p e r . a n d r o i d . c o m / r e f e r e n c e / a n d r o i d / v i e w / W i n d o w # s e t F l a g s ( i n t , % 2 0 i n t ) ) w i n d o w . a d d F l a g s ( W i n d o w M a n a g e r . L a y o u t P a r a m s . F L A G _ S E C U R E ) h t t p s : / / d e v e l o p e r . a n d r o i d . c o m / r e f e r e n c e / a n d r o i d / v i e w / W i n d o w # a d d F l a g s ( i n t ) ) 2 . S u r f a c e V i e w . s e t S e c u r e h t t p s : / / d e v e l o p e r . a n d r o i d . c o m / r e f e r e n c e / a n d r o i d / v i e w / S u r f a c e V i e w # s e t S e c u r e ( b o o l e a n ) ) h o o k   m o d u l e   h o o k p u b l i c   c l a s s   H o o k M a i n   i m p l e m e n t s   I X p o s e d H o o k L o a d P a c k a g e   {         S t r i n g   p a c k a g e N a m e   =   n e w   S t r i n g ( ) ;         @ O v e r r i d e         p u b l i c   v o i d   h a n d l e L o a d P a c k a g e ( X C _ L o a d P a c k a g e . L o a d P a c k a g e P a r a m   l o a d P a c k a g e P a r a m )   t h r o w s   T h r o w a b l e   {                 p a c k a g e N a m e   =   l o a d P a c k a g e P a r a m . p a c k a g e N a m e ;                 / /   H o o k   " w i n d o w . s e t F l a g ( W i n d o w M a n a g e r . L a y o u t P a r a m s . F L A G _ S E C U R E ) "                 X p o s e d H e l p e r s . f i n d A n d H o o k M e t h o d ( W i n d o w . c l a s s ,   " s e t F l a g s " ,   i n t . c l a s s ,   i n t . c l a s s ,                                 r e m o v e S e c u r e F l a g H o o k ) ;                 / /   H o o k   " w i n d o w . a d d F l a g s ( W i n d o w M a n a g e r . L a y o u t P a r a m s . F L A G _ S E C U R E ) "                 X p o s e d H e l p e r s . f i n d A n d H o o k M e t h o d ( W i n d o w . c l a s s ,   " a d d F l a g s " ,   i n t . c l a s s ,                                 r e m o v e S e c u r e F l a g H o o k ) ;                 / /   H o o k   " S u r f a c e V i e w . s e t S e c u r e "                 X p o s e d H e l p e r s . f i n d A n d H o o k M e t h o d ( S u r f a c e V i e w . c l a s s ,   " s e t S e c u r e " ,   b o o l e a n . c l a s s ,                                 r e m o v e S e t S e c u r e H o o k ) ;
X p o s e d                                 r e m o v e S e t S e c u r e H o o k ) ;         }         p r i v a t e   f i n a l   X C _ M e t h o d H o o k   r e m o v e S e c u r e F l a g H o o k   =   n e w   X C _ M e t h o d H o o k ( )   {                 @ O v e r r i d e                 p r o t e c t e d   v o i d   b e f o r e H o o k e d M e t h o d ( M e t h o d H o o k P a r a m   p a r a m )   t h r o w s   T h r o w a b l e   {                         i f   ( ( I n t e g e r )   p a r a m . a r g s [ 0 ]   = =   W i n d o w M a n a g e r . L a y o u t P a r a m s . F L A G _ S E C U R E ) {                                 p a r a m . a r g s [ 0 ]   =   0 ;                                 X p o s e d B r i d g e . l o g ( " A n t i   S c r e e n s h o t   :   "   +   p a c k a g e N a m e ) ;                         }                 }         } ;         p r i v a t e   f i n a l   X C _ M e t h o d H o o k   r e m o v e S e t S e c u r e H o o k   =   n e w   X C _ M e t h o d H o o k ( )   {                 @ O v e r r i d e                 p r o t e c t e d   v o i d   b e f o r e H o o k e d M e t h o d ( X C _ M e t h o d H o o k . M e t h o d H o o k P a r a m   p a r a m )   t h r o w s   T h r o w a b l e   {                         p a r a m . a r g s [ 0 ]   =   f a l s e ;                         X p o s e d B r i d g e . l o g ( " A n t i   S c r e e n s h o t   :   "   +   p a c k a g e N a m e ) ;                 }         } ; }
Y e s X p o s e d   l o g   Y e s i s s u s ,
X p o s e d   h t t p s : / / y u a n f e n t i a n k 7 8 9 . g i t h u b . i o / 2 0 1 7 / 0 4 / 0 1 / x p o s e d d e v / D i s a b l e F l a g S e c u r e   h t t p s : / / g i t h u b . c o m / v e e t i / D i s a b l e F l a g S e c u r e
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则