Android¶ñÒâÈí¼þ»ìÏýÓë¶Ô¿¹ÊÖÒÕרÌâ
Ðû²¼Ê±¼ä 2024-11-25µÚÒ»Õ ¸Å Êö
½üÄêÀ´£¬£¬£¬£¬£¬Android¶ñÒâÈí¼þÊýĿһֱÅÊÉý£¬£¬£¬£¬£¬Æä½ÓÄɵĹ¥»÷ºÍ¶Ô¿¹ÊÖÒÕÒ²±äµÃÔ½À´Ô½Öش󡣡£ÎªÁ˶Կ¹Çå¾²ÆÊÎö£¬£¬£¬£¬£¬ÈƹýÇå¾²¼ì²â£¬£¬£¬£¬£¬ÇÔÈ¡Ãô¸ÐÊý¾Ý»òÆÆËðϵͳÇå¾²£¬£¬£¬£¬£¬¶ñÒâÈí¼þʹÓÃÖÖÖÖ¶Ô¿¹ÊÖÒÕÀ´Î±×°ºÍÒþ²ØÆä¶ñÒâÐÐΪºÍ´úÂëÂß¼¡£¡£ÕâЩ¶Ô¿¹ÊÖÒÕÖУ¬£¬£¬£¬£¬Õë¶Ô×ÊÔ´¡¢Îļþ¡¢×Ö½ÚÂëÖ¸Áî¼°»úеÂëÖ¸ÁîµÄ»ìÏýÊÖÒÕ±»ÆÕ±éµØÒýÈëµ½¶ñÒâÈí¼þÖУ¬£¬£¬£¬£¬³ÉΪ¸ß¼¶ºÚ¿ÍÓëÄæÏò¹¤³Ìʦ¶Ô¿¹µÄÖ÷ÒªÕ½³¡¡£¡£
»ìÏýÊÖÒյĽ¹µãÄ¿µÄÊÇÔöÌíÆÊÎöÖØ´óÐÔÀ´¶Ô¿¹ÄæÏò¹¤³Ì£¬£¬£¬£¬£¬Í¬Ê±Ò²ÄÜÌá¸ßÃâɱÄÜÁ¦£¬£¬£¬£¬£¬Ö÷Òª¶Ô¿¹Ä¿µÄ°üÀ¨ÄæÏò¹¤³Ìʦ¡¢¾²Ì¬ÆÊÎö¹¤¾ß¡¢¶¯Ì¬µ÷ÊÔ¹¤¾ßÒÔ¼°×Ô¶¯»¯¼ì²âϵͳ¡£¡£»£»ìÏýÊÖÒÕͨ¹ýÉèÖÃÆÊÎöÏÝÚå¡¢¸Ä±äÎļþ½á¹¹¡¢ÔöÌíÖ¸ÁîÖØÆ¯ºó¡¢ÐéÄ⻯ָÁî¡¢Òþ²Ø´úÂëºÍ×ÊÔ´µÈÖÖÖÖ·±ÔÓµÄÊÖÒÕÀ´ÑÚÊÎÆäÐÐÎªÌØÕ÷ºÍ¹¥»÷Òâͼ£¬£¬£¬£¬£¬Í¬Ê±¸øÆÊÎöÖ°Ô±¾¡¿ÉÄÜ´óµÄÖÆÔìÆÊÎöÕϰ£¬£¬£¬£¬£¬ÑÓºóÆä¶ñÒâÐÐΪ̻¶µÄʱ¼ä¡£¡£Í¬Ê±£¬£¬£¬£¬£¬¶ñÒâÈí¼þͨ¹ý×éºÏÔËÓÃÖÖÖÖ¸÷ÑùµÄ»ìÏýÓëÆÊÎö¶Ô¿¹ÊÖÒÕ£¬£¬£¬£¬£¬¶ÔÏÖÓÐÇå¾²¼ì²â¹¤¾ßºÍ·À»¤»úÖÆÐγÉÁËÑÏËàÌôÕ½¡£¡£ÕâÐèÒªÒ»Ö±¸ú½øÖÖÖÖÊÖÒÕµÄÉú³¤£¬£¬£¬£¬£¬¶ÔеÄÊֶξÙÐÐÉîÈëÑо¿£¬£¬£¬£¬£¬Öƶ©ÓÐÓÃÇÒ¿ìËÙµÄÓ¦¶ÔÒªÁ죬£¬£¬£¬£¬Ç¿»¯ÆÊÎö¹¤¾ßºÍ¼ì²â¹¤¾ß£¬£¬£¬£¬£¬Í¬Ê±Ò²ÓÐÖúÓÚ¿ìËÙÓ¦¶Ô¸ß¼¶ÇÒÖØ´óµÄ¶ñÒâÈí¼þ¹¥»÷¡£¡£
Ëæ×ÅÒÆ¶¯Çå¾²ÁìÓò¶Ô¿¹µÄÒ»Ö±Éý¼¶£¬£¬£¬£¬£¬Android ¶ñÒâÈí¼þµÄ»ìÏýÊÖÒÕÒ²ÂÄÀúÁËÏÔÖøµÄÉú³¤£¬£¬£¬£¬£¬´Ó¼òÆÓµÄ±êʶ·û»ìÏýÖð²½Ñݽøµ½ÖØ´óµÄÐéÄ⻯±£»£»¤£¨VMP£©ÊÖÒÕ£¬£¬£¬£¬£¬·ºÆð³öÓÉdzÈëÉî¡¢Öð²½Éý¼¶µÄÇ÷ÊÆ¡£¡£Îª¸üÇåÎúµØÃ÷È·Õâһת±ä£¬£¬£¬£¬£¬ÎÒÃǽ«»ìÏýÊÖÒÕµÄÉú³¤´óÖ»®·ÖΪÔçÆÚ¡¢ÖÐÆÚºÍÄ¿½ñ½×¶Î£¬£¬£¬£¬£¬²¢´Ó²î±ð²ãÃæ¾ÙÐÐÏêϸÆÊÎö¡£¡£
2.1 ÔçÆÚ½×¶Î£º»ù´¡Î±×°Óë¼òÆÓ¼ÓÃÜ
ÔÚÔçÆÚ£¬£¬£¬£¬£¬¶ñÒâÈí¼þµÄ»ìÏýÊÖÒÕÖ÷ÒªÒÔÑÚÊδúÂëºÍ×ÊÔ´ÄÚÈÝΪĿµÄ£¬£¬£¬£¬£¬ÊֶνÏΪ¼òÆÓÖ±½Ó£¬£¬£¬£¬£¬Æä»ìÏýÊÖÒÕÖ÷Òª¼¯ÖÐÓÚJava²ã£¬£¬£¬£¬£¬Ê¹ÓÃAndroidÓ¦ÓÃÒÔJavaÓïÑÔ¿ª·¢µÄÌØÕ÷£¬£¬£¬£¬£¬Í¨¹ý¼òÆÓµÄ»ìÏýÊֶιæ±ÜÇå¾²ÆÊÎöºÍ¼ì²â¡£¡£ÔÚÕâһʱÆÚ£¬£¬£¬£¬£¬¶ñÒâÈí¼þ×îÏÈ̽Ë÷ÎļþÃûÌÃÏà¹ØµÄ»ìÏýÕ½ÂÔ¡£¡£ÀýÈ磬£¬£¬£¬£¬Í¨¹ýÐÞ¸ÄZIPÃûÌõÄAPKα¼ÓÃÜ£¬£¬£¬£¬£¬ÒÔ¼°2012ÄêºÚñ´ó»áÉÏÊ×´ÎÌá³öµÄʹÓÃDEXÍ·Òþ²Ø´úÂëµÄÊÖÒÕ£¬£¬£¬£¬£¬ÕâÒ»Õ½ÂÔËæºó±»Syrup¶ñÒâÈí¼þËù½ÓÄÉ¡£¡£Í¬Ê±£¬£¬£¬£¬£¬Ä¾ÂíObadʹÓÃÉÌÒµ»ìÏý¹¤¾ßDexGuard£¨ProGuardµÄÔöÇ¿°æ£©ÊµÏÖÁËManifest×ֶεÄÖØ´ó»ìÏýÒÔ¼°»ùÓÚclinitÒªÁìµÄ¶¯Ì¬´úÂë½âÃÜ£¬£¬£¬£¬£¬±»ÓþΪ¡°Ê·ÉÏ×îÇ¿AndroidľÂí¡±¡£¡£
ÕâÒ»½×¶Î£¬£¬£¬£¬£¬¶ÌÐÅ×èµ²ÀàºÍËø»úÀÕË÷Àà¶ñÒâÈí¼þÆÕ±é½ÓÄɶàÖÖ»ìÏýÊֶΣ¬£¬£¬£¬£¬°üÀ¨´úÂë»ìÏý¡¢×Ö·û´®¼ÓÃÜ¡¢´úÂëÖ§½â¡¢À¬»ø´úÂë×¢È룬£¬£¬£¬£¬ÒÔ¼°ÉÌÒµ¼Ó¹Ì¹¤¾ßµÄʹÓᣡ£ÕâЩÊÖÒÕÖ»¹ÜÏà¶Ô»ù´¡£¬£¬£¬£¬£¬µ«ÔÚÆäʱµÄÇå¾²ÇéÐÎÖУ¬£¬£¬£¬£¬ÒѾÏÔÖøÌá¸ßÁ˶ñÒâÈí¼þµÄÒþ²ØÐԺͿ¹¼ì²âÄÜÁ¦¡£¡£ÏÂͼչʾÁËÒ»¿î¶ÌÐÅ×赲ľÂíµÄ»ìÏýЧ¹û¡£¡£

ͼ1 Ò»¸ö¶ÌÐÅ×赲ľÂíµÄ»ìÏýʾÀý
2.2 ÖÐÆÚ½×¶Î£ºÂß¼ÖØ´ó»¯Ó붯̬¶Ô¿¹
Ëæ×ÅÇå¾²¼ì²âÊÖÒÕµÄÒ»Ö±ÌáÉý£¬£¬£¬£¬£¬¶ñÒâÈí¼þÖð²½ÒýÈëÔ½·¢ÖØ´óµÄ»ìÏýÊֶΣ¬£¬£¬£¬£¬ÒÔÌá¸ßÒþ²ØÐÔ²¢ÓÐÓùæ±ÜÆÊÎö¡£¡£Îª¹æ±Ü¾²Ì¬ÆÊÎö£¬£¬£¬£¬£¬ËüÃÇʹÓö¯Ì¬¼ÓÔØºÍ·´Éä»úÖÆ£¬£¬£¬£¬£¬Í¨¹ý·´É䶯̬ŲÓÃÒþ²ØµÄÒªº¦´úÂë¡£¡£Í¬Ê±£¬£¬£¬£¬£¬¶ñÒâÈí¼þ½ÓÄɶàÖØ¼ÓÃÜÓë½âѹսÂÔ£¬£¬£¬£¬£¬¶ÔÒªº¦´úÂë¾ÙÐжàÌõÀí¼ÓÃÜ£¬£¬£¬£¬£¬²¢ÔÚÔËÐÐʱͨ¹ýÖØ´óµÄ½âÃÜÀú³ÌÖð²½ÊÍ·ÅÕæÊµµÄ¶ñÒâÂß¼¡£¡£ÀýÈ磺ÔÚÎÒÃÇÐû²¼µÄÆÊÎö±¨¸æ¡¶ÐÂÐÍAndroidÒøÐÐľÂí¡°MoqHao¡±Ê¹ÓÃÉç½»ÍøÂçÒþ²ØC&CЧÀÍÆ÷¡·ÖУ¬£¬£¬£¬£¬¶ñÒâÈí¼þ½«ÕæÕýµÄ¶ñÒâdexÎļþ¼ÓÃܺ󣬣¬£¬£¬£¬ÒÔBase64±àÂëµÄÐÎʽÉúÑÄÔÚÔʼAPKµÄassetsĿ¼Ï¡£¡£ÔÚÕâÖÖÇéÐÎÏ£¬£¬£¬£¬£¬ÔʼAPK½ö×÷Ϊһ¸öÍâ¿Ç±£´æ£¬£¬£¬£¬£¬ÆäÔÚÔËÐÐʱ»á¶¯Ì¬½âÃܲ¢¼ÓÔØÕæÕýµÄ¶ñÒâdexÎļþ£¬£¬£¬£¬£¬ÒÔʵÏÖÆä¹¥»÷Ä¿µÄ£¬£¬£¬£¬£¬ÆäÀú³ÌÈçÏÂͼËùʾ£º

ͼ2 Java²ã»ìÏýdexÎļþµÄʾÀý
ΪÁËÈÅÂÒÆÊÎö·¾¶£¬£¬£¬£¬£¬¶ñÒâÈí¼þÒýÈë¿ØÖÆÁ÷»ìÏýÊÖÒÕ¡£¡£Í¨¹ý²åÈëÎ޹صķÖÖ§¡¢Ñ»·ºÍÌø×ªÓï¾ä£¬£¬£¬£¬£¬¶ñÒâÈí¼þʹ´úÂëÖ´Ðз¾¶Ô½·¢Öش󣬣¬£¬£¬£¬×è°ÆÊÎöÖ°Ô±»¹ÔÆäÂß¼¡£¡£¶øÔÚÁ¬ÏµÉÌÒµ¼Ó¹Ì½â¾ö¼Æ»®ºó£¬£¬£¬£¬£¬Í¨¹ýÄÚ´æ¼ÓÔØ¡¢Ö¸Áî³éÈ¡ºÍÖ¸Áîת»»µÈÊÖÒÕ£¬£¬£¬£¬£¬½øÒ»²½ÌáÉýÁ˶Կ¹ÆÊÎöµÄÄÜÁ¦£¬£¬£¬£¬£¬Ê¹µÃÆÊÎöÖ°Ô±ÄÑÒÔ׼ȷ»¹Ô×Åʵ¼ÊµÄÖ´ÐÐÂß¼¡£¡£
Ëæ×Å·´»ìÏýÊÖÒÕµÄǰ½øºÍÏÖ´ú»¯·´±àÒ빤¾ßµÄÆÕ¼°£¬£¬£¬£¬£¬¶ñÒâÈí¼þÖð½¥½«»ìÏýÕ½ÂÔÏòNative²ã×ªÒÆ£¬£¬£¬£¬£¬ÒÔ½øÒ»²½ÌáÉýÄæÏòÆÊÎöµÄÄѶȡ£¡£Æä³£ÓÃÊÖÒÕ°üÀ¨¶Ô»á»°Êý¾Ý¼ÓÃÜÒÔ±ÜÃâÃô¸ÐÐÅϢй¶¡¢¼ÓÃÜÒªº¦º¯ÊýÌåÒÔÒþ²Ø¶ñÒâÐÐΪ¡¢²åÈ뻨ָÁî×ÌÈÅ·´»ã±à¹¤¾ßÆÊÎö¡¢Ê¹ÓÃLLVM¿ò¼ÜʵÑéÖØ´óµÄ´úÂë»ìÏý£¬£¬£¬£¬£¬ÒÔ¼°Í¨¹ý·´µ÷ÊÔÊÖÒÕ¼ì²âºÍ×èÖ¹µ÷ÊÔÆ÷½éÈë¡£¡£ÕâЩսÂÔÏศÏà³É£¬£¬£¬£¬£¬²»µ«ÏÔÖøÔöÌíÁËÄæÏò¹¤³ÌµÄÖØ´óÐÔ£¬£¬£¬£¬£¬Ò²½øÒ»²½Ìá¸ßÁËÇå¾²Ñо¿Ö°Ô±ÆÊÎöµÄÊÖÒÕÃż÷¡£¡£ÀýÈ磺ÔÚÎÒÃÇÐû²¼µÄ¡¶Ò»¿îͨ¹ýSO¾ÙÐÐ×Ô±£»£»¤µÄÒøÐÐAPPÐ®ÖÆÄ¾ÂíÉî¶ÈÆÊÎö±¨¸æ¡·ÖУ¬£¬£¬£¬£¬ÏêϸÆÊÎöÁ˸ÃľÂíµÄÔËÐÐÐÐΪ¡£¡£Ïêϸ¶øÑÔ£¬£¬£¬£¬£¬libload.soÄ£¿£¿£¿£¿£¿éÈÏÕæ½âÃܲ¢¼ÓÔØÏÖʵµÄ¶ñÒâ´úÂë¡£¡£¸ÃÄ£¿£¿£¿£¿£¿éʹÓÃJava·´Éä»ú֯ŲÓÃjavax.crypto°üÖеļӽâÃܺ¯Êý£¬£¬£¬£¬£¬¶Ô´æ´¢ÔÚassetsĿ¼ÏµÄmycode.soÎļþ¾ÙÐÐAES½âÃÜ¡£¡£½âÃܺóµÄÎļþͨ¹ý×Ô½ç˵µÄDexClassLoader¼ÓÔØ²¢Ö´ÐУ¬£¬£¬£¬£¬Ö´ÐÐÍê±Ïºó£¬£¬£¬£¬£¬½âÃܵÄÎļþ»á±»É¾³ý¡£¡£ÕâЩȫÐÄÉè¼ÆµÄ»ìÏýÊÖ¶ÎÓÐÓÃÒþ²ØÁ˶ñÒâÐÐΪ£¬£¬£¬£¬£¬ÏÔÖøÔöÌíÁËÇå¾²ÆÊÎöµÄÖØ´óÐÔ£¬£¬£¬£¬£¬Ê¹µÃ¶ñÒâÈí¼þµÄ¼ì²âºÍÆÊÎö±äµÃÔ½·¢ÄÑÌâ¡£¡£¼ÓÔØNative½âÃÜ¿âµÄ²¿·Ö´úÂëÈçÏÂͼËùʾ£º

ͼ3 Natvie²ã»ìÏýʾÀý
±ðµÄ£¬£¬£¬£¬£¬Õë¶ÔÎļþÃûÌõĻìÏýÕ½ÂÔÒ²±äµÃÔ½·¢¶àÑùºÍÖØ´ó¡£¡£ËüÃÇÇÉÃîʹÓà Androidϵͳ¶ÔijЩÎļþÃûÌÃ×ֶοíËÉУÑéµÄÌØÕ÷£¬£¬£¬£¬£¬Í¬Ê±½èÖú·´±àÒ빤¾ß¶ÔÎļþÃûÌõÄÑÏ¿áÆÊÎöÂß¼£¬£¬£¬£¬£¬Éè¼ÆÁ˶àÖÖ×ÌÈźÍÒþ²Ø»úÖÆ¡£¡£Í¨¹ý¶ÔÕâЩÎļþÃûÌõÄÎÞаʹÓ㬣¬£¬£¬£¬¶ñÒâÈí¼þµÃÒÔʵÏÖ¸ü¸ßˮƽµÄÒþ²ØÐÔ£¬£¬£¬£¬£¬½øÒ»²½Ìá¸ßÁËÄæÏòÆÊÎöºÍ¼ì²âµÄÄѶȣ¬£¬£¬£¬£¬Í¬Ê±Ò²Îª»ìÏýÊÖÒÕµÄÒ»Á¬Éú³¤µÓÚ¨ÁË»ù´¡¡£¡£
2.3 Ä¿½ñ½×¶Î£ºÖØ´ó»ìÏýÓë¶à²ã¶Ô¿¹
ÔÚÄ¿½ñ½×¶Î£¬£¬£¬£¬£¬¶ñÒâÈí¼þµÄ»ìÏýÊÖÒÕÒѾ¸ß¶ÈÖØ´ó»¯£¬£¬£¬£¬£¬ÆÕ±éÁ¬Ïµ¶¯Ì¬ºÍ¾²Ì¬¶Ô¿¹ÊֶΣ¬£¬£¬£¬£¬ÒÔÔöÇ¿Òþ²ØÐÔ²¢¶Ô¿¹¶àÖÖ¼ì²âÒªÁì¡£¡£Í¨¹ý½«Java²ã´úÂë»ìÏý¡¢¶¯Ì¬¼ÓÔØÓëNative²ã¼Ó¿ÇÊÖÒÕÈÚºÏʹÓ㬣¬£¬£¬£¬¶ñÒâÈí¼þ½«½¹µãÂß¼ÂþÑÜÓÚ²î±ðÌõÀíÖУ¬£¬£¬£¬£¬´ó·ùÌá¸ßÁ˼ì²âºÍÆÊÎöµÄÖØ´óÐÔ¡£¡£ÒÔÏÂÊÇÏÖÔÚ³£¼ûµÄ»ìÏýÕ½ÂÔ£º
Java²ãÓëNative²ãÏàÁ¬Ïµ£º¶ñÒâÈí¼þͨ¹ý½«Java²ãµÄ´úÂë»ìÏý¡¢¶¯Ì¬¼ÓÔØ¡¢VMPµÈÊÖÒÕÓëNative²ãµÄ´úÂë»ìÏýÊÖ¶ÎÏàÁ¬Ïµ£¬£¬£¬£¬£¬½«¶ñÒâÂß¼ÊèÉ¢ÔÚ²î±ðÌõÀíÖС£¡£ÕâÖÖ¿ç²ã»ìÏýÕ½ÂÔÏÔÖøÔöÌíÁ˼ì²âºÍÆÊÎöµÄÖØÆ¯ºó£¬£¬£¬£¬£¬ÒªÇóÆÊÎöÖ°Ô±Í¬Ê±ÕÆÎÕ¶àÖÖÊÖÒÕ£¬£¬£¬£¬£¬²Å»ªÖÜÈ«Ã÷È·ÆäÔËÐлúÖÆ¡£¡£ ʹÓÃÆäËû¿ª·¢ÓïÑÔ£º¶ñÒâÈí¼þ³£Ê¹ÓÃLua¡¢GoLang¡¢Flutter¡¢Ò×ÓïÑԵȷǹŰåµÄ C/C++ ÓïÑÔ¾ÙÐпª·¢£¬£¬£¬£¬£¬´Ó¶øÏÔÖøÔöÌíÄæÏòÆÊÎöµÄÄѶȡ£¡£ÕâЩÓïÑÔÆæÒìµÄÌØÕ÷½øÒ»²½Ìá¸ßÁËÆÊÎöµÄÖØ´óÐÔ£¬£¬£¬£¬£¬Í¬Ê±Ï÷ÈõÁ˹ŰåÄæÏòÆÊÎö¹¤¾ßµÄЧÂʺÍЧ¹û¡£¡£ ÔËÐÐÇéÐμì²â¼°·´µ÷ÊÔ£º¶ñÒâÈí¼þͨ¹ý¼ì²é×°±¸µÄϵͳÊôÐÔ¡¢Îļþϵͳ½á¹¹¡¢ÏµÍ³È¨ÏÞ״̬µÈ£¬£¬£¬£¬£¬ÅжÏÄ¿µÄ×°±¸ÊÇ·ñΪģÄâÆ÷»òÒÑ»ñÈ¡RootȨÏÞ£¬£¬£¬£¬£¬²¢ÔÚ¼ì²âµ½ÕâÐ©ÌØÕ÷ʱ×èÖ¹¶ñÒâÂß¼µÄÔËÐС£¡£Í¬Ê±£¬£¬£¬£¬£¬ËüÃÇŲÓÃϵͳAPI¼ì²éµ÷ÊÔ״̬£¬£¬£¬£¬£¬¼à²âµ÷ÊÔ¹¤¾ßÌØÓеÄÐÐΪ£¬£¬£¬£¬£¬ÉõÖÁ×Ô¶¯Òý·¢Òì³£ÒÔ²¶»ñµ÷ÊÔ¹¤¾ßµÄ·´Ó¦£¬£¬£¬£¬£¬ÓÐÓÃ×èÖ¹¶¯Ì¬ÆÊÎö¹¤¾ßµÄ×ÌÈÅ¡£¡£ ÉÌÒµ¼Ó¹Ì±£»£»¤ÊÖÒÕ£ºÒ»Ð©¶ñÒâÈí¼þʹÓÃÉÌÒµ¼Ó¹Ì±£»£»¤ÊÖÒÕ£¬£¬£¬£¬£¬½øÒ»²½ÔöÇ¿ÁË´úÂëµÄ¿¹ÄæÏòÄÜÁ¦£¬£¬£¬£¬£¬Ê¹µÃ¹Å°åµÄÇå¾²¹¤¾ßºÍÆÊÎöÒªÁìÄÑÒÔ×àЧ¡£¡£ ´úÂëÐéÄ⻯ÊÖÒÕ£ºÍ¨¹ý½«´úÂë·ÒëΪ×Ô½ç˵µÄÐéÄâÖ¸Á£¬£¬£¬£¬£¬²¢ÔÚÔËÐÐʱͨ¹ýǶÈëµÄÐéÄâ»úÚ¹ÊÍÖ´ÐУ¬£¬£¬£¬£¬ÕâÖÖÊÖÒÕ¼«´óµØÌá¸ßÁËÄæÏòÆÊÎöµÄÄѶȡ£¡£
ÀýÈ磬£¬£¬£¬£¬Ä³¶ñÒâÈí¼þͨ¹ýʹÓÃNative´úÂëʵÏÖ¶ÔFridaºÍIDAµÄ¼ì²â£¬£¬£¬£¬£¬Æä´úÂëÈçÏ£º

ͼ4 Natvie²ã¼ì²âµ÷ÊÔÆ÷µÄ´úÂëʾÀý
Android¶ñÒâÈí¼þµÄ»ìÏýÊÖÒÕÒѾ´Ó¼òÆÓµÄ´úÂë»ìÏýÖð½¥Éú³¤µ½ÏÖÔÚÖØ´óµÄ¿ç²ãÁ¬ÏµÐÎʽ£¬£¬£¬£¬£¬ÆäÒþ²ØÐÔÒ»Á¬ÔöÇ¿£¬£¬£¬£¬£¬ÊÖÒÕÊÖ¶ÎÒ²Óú·¢¶àÑù»¯¡£¡£ÕâÖÖÉú³¤Ç÷ÊÆ¶Ô¹Å°åÇå¾²¼ì²â¹¤¾ß¶øÑÔÊÇÑÏËàµÄÌôÕ½£¬£¬£¬£¬£¬Í¬Ê±Ò²´ÙʹÑо¿Ö°Ô±±ØÐèÒ»Ö±Á¢ÒìÓ¦¶ÔÕ½ÂÔ£¬£¬£¬£¬£¬ÒÔ´ËÀ´Ó¦¶Ô¶ñÒâÈí¼þÈÕÒæÖØ´óµÄ»ìÏýÊֶΡ£¡£ÔÚ´ËÅä¾°Ï£¬£¬£¬£¬£¬ÉîÈëÏàʶ²¢ÆÊÎö³£¼ûµÄ»ìÏýÊÖÒÕ£¬£¬£¬£¬£¬ÊÇÌáÉý¶ñÒâÈí¼þÆÊÎöºÍ¼ì²âÄÜÁ¦µÄÒªº¦¡£¡£½ÓÏÂÀ´£¬£¬£¬£¬£¬ÎÒÃǽ«Í¨¹ýÏÖʵÊÂÇéÖг£Óöµ½µÄ¶ñÒâÈí¼þ»ìÏýÊÖÒÕ¾ÙÐÐÏêϸÆÊÎö£¬£¬£¬£¬£¬Ì½ÌÖÕâЩÊÖÒÕµÄÓ¦Ó÷½·¨¼°ÏìÓ¦µÄÌá·À¶Ô²ß¡£¡£
ÔÚÆÊÎöAndroid¶ñÒâÈí¼þʱ£¬£¬£¬£¬£¬Çå¾²Ñо¿Ö°Ô±Í¨³£ÐèÒª´Ó¾²Ì¬ÆÊÎöºÍ¶¯Ì¬ÆÊÎöÁ½·½ÃæÈëÊÖ¡£¡£¾²Ì¬ÆÊÎöÍùÍùÊÇ×îÏȾÙÐеİ취£¬£¬£¬£¬£¬¶ø»ìÏýÊÖÒÕͨ¹ýÐ޸ĴúÂëµÄ½á¹¹ºÍ±í´ï·½·¨£¨Èç×Ö·û´®¼ÓÃÜ¡¢´úÂë²ð·Ö¡¢¶¯Ì¬¼ÓÔØµÈ£©£¬£¬£¬£¬£¬Ê¹¶ñÒâÈí¼þµÄÆÊÎöÄѶÈÏÔÖøÔöÌí¡£¡£±¾ÎĽ«ÒÔÇå¾²Ñо¿Ö°Ô±ÆÊÎöAPKÎļþµÄÀú³ÌΪÇÐÈëµã£¬£¬£¬£¬£¬Öð²½ÏÈÈÝÖÖÖÖ·´»ìÏýÕ½ÂÔ£¬£¬£¬£¬£¬×ÊÖúÑо¿Ö°Ô±ÓÐÓÃÓ¦¶Ô²î±ðÌõÀíµÄ»ìÏýÊÖÒÕÌôÕ½¡£¡£
3.1 APK·´±àÒ빤¾ßµÄ¶Ô¿¹
ÔÚÆÊÎöAndroidÓ¦ÓÃʱ£¬£¬£¬£¬£¬Ê×ÏÈÐèҪʹÓÃAPK·´±àÒ빤¾ß£¨ÈçApktool¡¢Jadx£©ÌáÈ¡APKÎļþÖеÄÔ´´úÂëºÍ×ÊÔ´¡£¡£È»¶ø£¬£¬£¬£¬£¬¶ñÒâÈí¼þÍùÍù»áͨ¹ý¶àÖÖ»ìÏýÊֶζÔAPK¾ÙÐб£»£»¤£¬£¬£¬£¬£¬ÒÔ×ÌÈÅ·´±àÒëÀú³Ì¡£¡£ÀýÈ磬£¬£¬£¬£¬¶ñÒâÈí¼þ¿ÉÄÜʹÓÃAndroidÔÚÆÊÎöAPKÎļþʱδÑÏ¿áУÑéZIPÃûÌõÄijЩ×ֶΣ¬£¬£¬£¬£¬´Ó¶øÍ¨¹ý¸Ä¶¯APKÎļþµÄZIPÃûÌÃ×Ö¶ÎÀ´Èƹý»ùÓÚZIPÃûÌÃÆÊÎöµÄ·´±àÒ빤¾ß¡£¡£ÕâÖÖÊÖ¶ÎÓÈÆä³£¼ûÓÚһЩ»ùÓÚAndroidµÄÒøÐÐľÂí£¨ÈçBianLian¡¢CerberusºÍTeaBot£©ÖУ¬£¬£¬£¬£¬Ä¿µÄÊÇ×èÖ¹Çå¾²Ñо¿Ö°Ô±ºÍ×Ô¶¯»¯ÆÊÎöƽ̨ÓÐÓÃÌáÈ¡APKÎļþÄÚÈÝ£¬£¬£¬£¬£¬½ø¶ø¶Ô¿¹¾²Ì¬ÆÊÎöºÍ·´²¡¶¾¼ì²â¡£¡£
ΪÁ˸üºÃµØÃ÷È·¶ñÒâÈí¼þµÄ»ìÏýÕ½ÂÔ£¬£¬£¬£¬£¬ÓÈÆäÊÇÔõÑùͨ¹ý¸Ä¶¯ZIPÃûÌÃ×Ö¶ÎÀ´×ÌÈÅ·´±àÒëÀú³Ì£¬£¬£¬£¬£¬ÓÐÐëÒªÏàʶһЩZIPÎļþ½á¹¹µÄ»ù±¾ÐÅÏ¢¡£¡£ËäÈ»ZIPÃûÌõÄÏêϸ½á¹¹Áè¼ÝÁ˱¾ÎĵÄÌÖÂÛ¹æÄ££¬£¬£¬£¬£¬µ«ÎÒÃÇ¿ÉÒÔ¼òÆÓÏÈÈÝһЩ³£¼ûµÄ¡¢¶ñÒâÈí¼þ¾³£¸Ä¶¯µÄ×ֶΡ£¡£ÎÒÃÇÒÔ Python µÄzipfile.py Ä£¿£¿£¿£¿£¿éÖÐµÄ ZipInfo ÀàΪÀý£¬£¬£¬£¬£¬Õ¹Ê¾ÁË ZIPÎļþÔªÊý¾ÝÖеĶà¸öÒªº¦×ֶΡ£¡£Ïêϸ×ֶμ°Æä¼ÄÒåÈçͼËùʾ£º

ͼ5 ZipinfoÀàµÄ½á¹¹ÐÅÏ¢
ÆäÖУ¬£¬£¬£¬£¬compress_type¡¢extract_version¡¢reservedºÍflag_bits¶¼ÊǶñÒâÈí¼þ¾³£¸Ä¶¯µÄ×ֶΡ£¡£ÕâЩÐ޸ĿÉÒÔµ¼Ö·´±àÒ빤¾ßÔÚÆÊÎöÎļþʱ·ºÆð¹ýʧ»òÎÞ·¨×¼È·¶ÁÈ¡ÎļþÄÚÈÝ£¬£¬£¬£¬£¬´Ó¶øÓÐÓõØ×è°¾²Ì¬ÆÊÎöÀú³Ì¡£¡£Í¨¹ý¸Ä¶¯ÕâЩ×ֶΣ¬£¬£¬£¬£¬¶ñÒâÈí¼þ²»µ«Äܹ»¹æ±Ü³£¼ûµÄ·´±àÒ빤¾ß£¬£¬£¬£¬£¬»¹ÄÜÔöÌí±»¼ì²âµÄÄѶȣ¬£¬£¬£¬£¬Ìá¸ßÆäÔÚ¾²Ì¬ÆÊÎöÖеÄÒþ²ØÐÔ¡£¡£
ÔÚÏàʶÁ˶ñÒâÈí¼þÔõÑùͨ¹ý¸Ä¶¯ZIPÃûÌÃ×Ö¶ÎÀ´¶Ô¿¹¾²Ì¬ÆÊÎöºó£¬£¬£¬£¬£¬½ÓÏÂÀ´ÎÒÃÇÐèÒª¹Ø×¢AndroidÓ¦ÓÃÖÐÁíÒ»¸ö³£¼ûµÄ·´±àÒëÊֶΡª¡ªAndroidManifest.xmlÎļþ£¨ÒÔϼò³Æ¡°Çåµ¥Îļþ¡±£©¡£¡£Çåµ¥ÎļþÊÇ·´±àÒëÀú³ÌÖбØÐèÆÊÎöµÄÒªº¦²¿·Ö£¬£¬£¬£¬£¬Ëü°üÀ¨ÁËÓ¦ÓõĽ¹µãÉèÖ㬣¬£¬£¬£¬Èç×é¼þ¡¢È¨ÏÞµÈÐÅÏ¢¡£¡£Òò´Ë£¬£¬£¬£¬£¬ÌáÈ¡¡¢¶ÁÈ¡ºÍÆÊÎöÇåµ¥ÎļþÊǾ²Ì¬ÆÊÎöAPKÑù±¾Ê±µÄÖ÷Òª°ì·¨¡£¡£ÎªÁ˹æ±Ü·´±àÒ빤¾ßµÄʶ±ð£¬£¬£¬£¬£¬¶ñÒâÈí¼þͨ³£Í¨¹ýÈ«Ðĸ͝Çåµ¥ÎļþÀ´×ÌÈÅÆäÕý³£ÆÊÎö¡£¡£ÓÉÓÚÇåµ¥ÎļþÔÚ¾²Ì¬ÆÊÎöÖеÄÖ÷ÒªÐÔºÍÖØ´óÐÔ£¬£¬£¬£¬£¬Ëü³ÉΪÁ˶ñÒâÈí¼þ³£Óõķ´±àÒë¶Ô¿¹ÊÖ¶ÎÖ®Ò»¡£¡£ÈôÊǶÁÕß¶ÔÇåµ¥ÎļþµÄÏêϸ½á¹¹²»Ì«Ïàʶ£¬£¬£¬£¬£¬¿ÉÒÔ×ÔÐлá¼ûÒÔÏÂÁ´½Ó£¨https://bbs.kanxue.com/thread-194206.html£©²éÔÄÏà¹ØÐÅÏ¢¡£¡£
½ÓÏÂÀ´£¬£¬£¬£¬£¬ÎÒÃǽ«ÏÈÈݼ¸ÖÖ³£¼ûµÄÇåµ¥Îļþ»ìÏýÊֶΣ¬£¬£¬£¬£¬Ì½ÌÖ¶ñÒâÈí¼þÊÇÔõÑùͨ¹ýÕâЩÊֶζԿ¹·´±àÒ빤¾ß²¢Òþ²ØÆä¶ñÒâÐÐΪµÄ£º
£¨1£©ÐÞ¸ÄXMLÎļþµÄħÊõ£º¶ñÒâÈí¼þͨ¹ý¸Ä¶¯Çåµ¥ÎļþÖеÄħÊõ×ֶΣ¬£¬£¬£¬£¬Ê¹µÃ¾²Ì¬ÆÊÎö¹¤¾ßÔÚÆÊÎöʱ·ºÆð¹ýʧ¡£¡£ÕâЩÐÞ¸Äͨ³£²»»áÓ°ÏìÓ¦ÓõÄÕý³£ÔËÐУ¬£¬£¬£¬£¬µ«»áµ¼ÖÂÆÊÎö¹¤¾ßÎÞ·¨×¼È·ÆÊÎöÇåµ¥ÎļþµÄ½á¹¹£¬£¬£¬£¬£¬ÉõÖÁ¿ÉÄÜÒý·¢·´±àÒ빤¾ßµÄÒì³£¹ýʧ£¬£¬£¬£¬£¬´Ó¶ø×èÖ¹·´±àÒëÀú³Ì£¬£¬£¬£¬£¬ÎÞ·¨ÌáȡԴ´úÂë¡£¡£

ͼ6 ×óͼΪÕý³£µÄħÊõ£¬£¬£¬£¬£¬ÓÒͼΪ»ìÏýµÄħÊõʾÀý
£¨2£©¸Ä¶¯Òªº¦×ֶΣº¶ñÒâÈí¼þ¿ÉÄÜ»á¸Ä¶¯Çåµ¥ÎļþÖеÄÒªº¦×ֶΣ¬£¬£¬£¬£¬ÀýÈçͨ¹ýÐÞ¸ÄStringPoolÖÐ×Ö·û´®µÄ¸öÊý¡£¡£ËäÈ»AndroidϵͳÔÚÔËÐÐʱ²¢²»ÒÀÀµÕâ¸ö×Ö¶ÎÀ´ÅÌËã×Ö·û´®µÄ¸öÊý£¬£¬£¬£¬£¬¶øÊÇͨ¹ý¶¯Ì¬ÅÌËãÀ´´¦Öóͷ£×Ö·û´®£¬£¬£¬£¬£¬µ«Ò»Ð©·´±àÒ빤¾ßÈ´»áÒÀÀµÕâ¸ö×Ö¶ÎÀ´ÆÊÎöXMLÎļþÖеÄÄÚÈÝ¡£¡£Í¨¹ý¸Ä¶¯Õâ¸ö×ֶΣ¬£¬£¬£¬£¬¶ñÒâÈí¼þ¿ÉÒÔ×ÌÈÅ·´±àÒ빤¾ßµÄÕý³£ÆÊÎö£¬£¬£¬£¬£¬µ¼Ö¹¤¾ß¶ÁÈ¡µ½¹ýʧµÄ×Ö·û´®¸öÊý£¬£¬£¬£¬£¬´Ó¶øÎÞ·¨×¼È·ÆÊÎöÇåµ¥ÎļþµÄ½á¹¹£¬£¬£¬£¬£¬½ø¶øÓ°Ï쾲̬ÆÊÎöµÄ׼ȷÐÔºÍÍêÕûÐÔ¡£¡£ÕâÖÖÊÖ¶ÎÓÐÓÃÔöÌíÁ˾²Ì¬ÆÊÎö¹¤¾ßµÄÆÊÎöÄѶȣ¬£¬£¬£¬£¬ÌáÉýÁ˶ñÒâÈí¼þµÄÒþ²ØÐÔ¡£¡£

ͼ7 ¸Ä¶¯StringPoolSizeµÄ»ìÏýʾÀý
ÔÚÉÏͼÖУ¬£¬£¬£¬£¬ÎÒÃÇ¿ÉÒÔ¿´µ½£¬£¬£¬£¬£¬stringCountµÄֵΪ2907£¬£¬£¬£¬£¬¶øStringOffsets×îÏÈÓÚÆ«ÒÆÎ»ÖÃ36£¬£¬£¬£¬£¬¾ÞϸΪ 11628¡£¡£StringOffsetsÊÇÒ»¸ö°üÀ¨Ã¿¸ö×Ö·û´®ÔÚ×Ö·û´®³ØÖеÄÏà¶ÔÆ«ÒÆÁ¿µÄÊý×飬£¬£¬£¬£¬Æä¾ÞϸΪ stringCount * 4£¬£¬£¬£¬£¬¼´ 11628¡£¡£·´±àÒ빤¾ßƾ֤»ìÏýºóµÄstringCountÖµÅÌËãStringOffsets¾Þϸ£¬£¬£¬£¬£¬²¢¾ÙÐÐÆÊÎö£¬£¬£¬£¬£¬Òò´ËÆÊÎöЧ¹ûÍÉ»¯¡£¡£ÕâÖַׯçÖÂÐÔÊǵ¼Ö·´±àÒ빤¾ßÆÊÎöʧ°ÜµÄÔµ¹ÊÔÓÉ¡£¡£È»¶ø£¬£¬£¬£¬£¬AndroidϵͳÔÚ´¦Öóͷ£Çåµ¥Îļþʱ²¢Î´Ö±½ÓÒÀÀµstringCount×ֶεÄÖµ¡£¡£Í¨¹ýÉó²é Android Ô´Âë¿ÉÒÔ·¢Ã÷£¬£¬£¬£¬£¬AndroidϵͳÔÚÔËÐÐʱƾ֤ÏÖʵÊý¾Ý¶¯Ì¬ÅÌËã stringPoolSize£¬£¬£¬£¬£¬¶ø·ÇÖ±½ÓʹÓÃÎļþÖÐÌṩµÄÊýÖµ¡£¡£

ͼ 8 AndroidϵͳԴÂëÖÐÅÌËãmStringPoolSizeµÄ´úÂëʾÀý
£¨3£©²åÈëÔàÊý¾Ý£ºÓÐЩ¶ñÒâÈí¼þ»á¾ÓÐÄÔÚÇåµ¥ÖвåÈëһЩÔàÊý¾Ý¡£¡£ÕâÖÖÊý¾Ý²»»á±»ÏÖʵʹÓ㬣¬£¬£¬£¬µ«»áÆÆËðÇåµ¥ÎļþµÄÃûÌ㬣¬£¬£¬£¬Ê¹µÃÆÊÎö¹¤¾ßÄÑÒÔʶ±ðÆäÖеÄÓÐÓÃÐÅÏ¢¡£¡£

ͼ9 ×óͼÏÔʾ`startEle0`ÄÚÈÝ£¬£¬£¬£¬£¬ÓÒͼչʾ`startEle0`ºÍ`startEle1`µÄÆ«ÒÆÁ¿¼°¾Þϸ
ÉÏͼչʾÁËÒ»¸ö»ìÏýºóµÄÇåµ¥Îļþ¡£¡£ÔÚ×óͼÖУ¬£¬£¬£¬£¬µÚÒ»¸östartElementµÄ¾Þϸ×Ö¶ÎΪ196£¬£¬£¬£¬£¬µ«headerÖеÄsize×Ö¶ÎΪ224£¬£¬£¬£¬£¬Òâζ×ÅstartElementºó¸½¼ÓÁË28×Ö½ÚµÄδ֪Êý¾Ý¡£¡£ÓÒͼÖУ¬£¬£¬£¬£¬µÚ¶þ¸östartElementµÄÆðʼλÖÃΪ0x15A4£¬£¬£¬£¬£¬ÕýºÃλÓÚ²åÈëµÄÕâ28×Ö½ÚÀ¬»øÊý¾ÝÖ®ºó£¨ÓÒͼÖÐÂÌÉ«²¿·ÖËùʾ£©¡£¡£ÕâЩ¶àÓàµÄ28×ֽڻᵼÖ·´±àÒ빤¾ßÔÚºóÐøÆÊÎöʱÍÉ»¯¡£¡£AndroidϵͳÄܹ»Õý³£ÆÊÎö£¬£¬£¬£¬£¬ÊÇÓÉÓÚϵͳÅÌËãÿ¸östartElementµÄλÖÃʱ£¬£¬£¬£¬£¬½öÒÀÀµÉÏÒ»¸östartElementµÄÆðʼλÖú;Þϸ×ֶΣ¬£¬£¬£¬£¬´Ó¶ø×Ô¶¯Ìø¹ýÀ¬»øÊý¾Ý¡£¡£
£¨4£©²åÈ볬³¤×Ö·û´®»òÌØÊâ×Ö·û£ºÎªÁË×ÌÈž²Ì¬ÆÊÎö¹¤¾ßµÄÕý³£ÆÊÎö£¬£¬£¬£¬£¬¶ñÒâÈí¼þ¿ÉÄÜ»áÔÚÌØ¶¨×Ö¶ÎÖвåÈ볬³¤×Ö·û´®¡¢ÌØÊâ·ûºÅ¡¢emojiÐÄÇé»ò²»¿É¼û×Ö·û¡£¡£ÕâЩ×Ö·ûËäÈ»²»»áÓ°ÏìÓ¦ÓõÄÕý³£¹¦Ð§£¬£¬£¬£¬£¬µ«ËüÃÇÏÔÖøÔöÌíÁËÆÊÎö¹¤¾ßµÄ´¦Öóͷ£ÄѶȡ£¡£ÈôÊÇ·´±àÒ빤¾ßµÄÈÝ´íÄÜÁ¦½Ï²î£¬£¬£¬£¬£¬ÕâЩÐ޸ĿÉÄܵ¼Ö¹¤¾ß±ÀÀ£»£»òÎÞ·¨×¼È·ÆÊÎöÇåµ¥Îļþ£¬£¬£¬£¬£¬´Ó¶øÊ¹¾²Ì¬ÆÊÎö±äµÃÔ½·¢ÄÑÌâ¡£¡£

ͼ10 ͨ¹ý²»¿É¼û×Ö·ûʵÏÖ³¬³¤Ó¦ÓÃÃû³Æ£¨label£©µÄʾÀý
ÉÏͼÖУ¬£¬£¬£¬£¬Çåµ¥ÎļþÖеÄlabel×ֶδÓstring.xmlÖеÄapp_name×ֶζÁÈ¡£¬£¬£¬£¬£¬¶øapp_name×Ö¶ÎÔò°üÀ¨Á˲»¿É¼û×Ö·û£¨Èç\u0000£©ºÍ³¬³¤×Ö·û´®¡£¡£Í¨¹ýÕâÖÖ·½·¨£¬£¬£¬£¬£¬¶ñÒâÈí¼þ¿ÉÒÔÓÐÓÃ×ÌÈÅ·´±àÒ빤¾ßµÄÆÊÎöÀú³Ì¡£¡£ÈôÊÇ×Ô¶¯»¯ÆÊÎöƽ̨µÄÈÝ´í»úÖÆÈ±·¦£¬£¬£¬£¬£¬ÈçÊý¾Ý¿â×ֶζÔapp_name»òversion×ֶ㤶ÈÓÐÏÞÖÆ£¬£¬£¬£¬£¬ÕâЩ¸Ä¶¯¿ÉÄܵ¼ÖÂÒì³££¬£¬£¬£¬£¬½ø¶øÊ¹¶ñÒâÈí¼þÔÚ×Ô¶¯»¯ÆÊÎöƽ̨ÉÏ¡°ÒþÉí¡±£¬£¬£¬£¬£¬ÄÑÒÔ±»¼ì²âµ½¡£¡£
ÔÚÕý³£µÄÇåµ¥ÎļþÖУ¬£¬£¬£¬£¬Start Namespace Chunkͨ³£´æ´¢ÃüÃû¿Õ¼äÐÅÏ¢£¬£¬£¬£¬£¬ÆäÖÐPrefixÊÇÒ»¸ö4×Ö½ÚµÄË÷Òý£¬£¬£¬£¬£¬Ö¸Ïò×Ö·û´®³ØÖÐÏìÓ¦µÄ×Ö·û´®£¬£¬£¬£¬£¬ÓÃÓÚ±êʶÃüÃû¿Õ¼äǰ׺£»£»UriÒ²ÊÇÒ»¸öË÷Òý£¬£¬£¬£¬£¬Ö¸Ïò×Ö·û´®³ØÖÐÌåÏÖÃüÃû¿Õ¼äURIµÄ×Ö·û´®¡£¡£ÀýÈ磬£¬£¬£¬£¬ÔÚÒ»¸öδ¾ÓÉ»ìÏýµÄÇåµ¥ÎļþÖУ¬£¬£¬£¬£¬ÎÒÃÇ¿ÉÒÔ¿´µ½PrefixµÄÖµ¶ÔÓ¦µÄ×Ö·û´®Îªandroid£¬£¬£¬£¬£¬¼´ËüÒýÓÃÁ˱ê×¼µÄAndroidÃüÃû¿Õ¼ä¡£¡£

ͼ11 Õý³£µÄprefixǰ׺ʾÀý
È»¶ø£¬£¬£¬£¬£¬Í¨¹ý¶Ô¶ñÒâÈí¼þÖз¢Prefix×ֶξÙÐжñÒâ¸Ä¶¯£¬£¬£¬£¬£¬¹¥»÷Õß¿ÉÒÔµ¼Ö·´±àÒ빤¾ßÔÚÆÊÎöʱ±¬·¢¹ýʧ¡£¡£ÕâÖÖ»ìÏý·½·¨Ê¹ÓÃÁË·´±àÒ빤¾ß¶ÔPrefixµÄÒÀÀµ£¬£¬£¬£¬£¬Ê¹µÃÆäÔÚÆÊÎöʱ±¬·¢Òì³££¬£¬£¬£¬£¬×ÌÈÅÆÊÎöÖ°Ô±¶Ô¶ñÒâÈí¼þµÄÅжϡ£¡£ÏÂͼÊÇÒ»¸ö¾ÓÉ»ìÏýµÄÇåµ¥Îļþ¡£¡£

ͼ12 »ìÏýºóµÄprefixʾÀý
´ÓͼÖпÉÒÔ¿´µ½£¬£¬£¬£¬£¬ÃüÃû¿Õ¼äµÄPrefixÏÔʾΪ·Ç±ê×¼×Ö·û´®¡£¡£PrefixµÄË÷ÒýÖµÖ¸Ïò×Ö·û´®³ØÖеÄλÖÃ67£¬£¬£¬£¬£¬¶øUriÏÔʾÕý³£¡£¡£Éó²é×Ö·û´®³ØÖÐË÷Òý67µÄÄÚÈÝ£¬£¬£¬£¬£¬ÎÒÃÇ·¢Ã÷¸Ã×Ö·û´®ÊÇÒ»¶Î³¤¶ÈΪ20470µÄÂÒÂë×Ö·û¡£¡£ÈçÏÂͼËùʾ£º

ͼ13 Ë÷ÒýÖµ67´¦µÄprefix×Ö·û´®µÄֵʾÀý
ÕâÖÖ³¬³¤×Ö·û´®»áµ¼ÖÂApktoolÔÚ·´±àÒëʱÍ߽⡣¡£ÔÚApktoolµÄ¹ýʧÈÕÖ¾ÖУ¬£¬£¬£¬£¬ÏÔʾÁË¡°Array Size¡±Òì³£ÐÅÏ¢¡£¡£
ͼ14 Apktool·´±àÒëʱ·ºÆðµÄÒì³£¹ýʧʾÀý
¾ÓɶÔÍß½âÎÊÌâµÄÈÆ¹ý´¦Öóͷ£ºó£¬£¬£¬£¬£¬ÌìÉúµÄAndroidManifest.xmlÎļþµÖ´ïÁË16.7MB£¬£¬£¬£¬£¬ÇÒ°üÀ¨´ó×ÚÂÒÂ룬£¬£¬£¬£¬ÄÑÒÔÔĶÁ¡£¡£

ͼ15 °üÀ¨´ó×ÚÀ¬»ø×Ö·ûµÄAndroidManifest.xmlÎļþʾÀý
Ò»¸öÓÐÓõĴ¦Öóͷ£ÒªÁìÊǽ«PrefixµÄË÷ÒýÖµÖ¸Ïò×Ö·û´®³ØÖн϶̵Ä×Ö·û´®£¬£¬£¬£¬£¬ÒÔ±ãÌìÉúµÄÇåµ¥ÎļþÄÚÈÝÕý³£ÏÔʾ£¬£¬£¬£¬£¬±ãÓÚºóÐøÆÊÎöºÍÔĶÁ¡£¡£
±ðµÄ£¬£¬£¬£¬£¬Ò»Ð©¶ñÒâÈí¼þ»áÔÚÇåµ¥ÖвåÈë·ûºÅ»òÐÄÇé·ûºÅ£¬£¬£¬£¬£¬Èô·´±àÒ빤¾ßÔÚÆÊÎöʱδ׼ȷ´¦Öóͷ£ÕâÐ©ÌØÊâ×Ö·û£¬£¬£¬£¬£¬Ò²¿ÉÄܵ¼Ö·´±àÒ빤¾ßÍ߽⡣¡£²åÈëÐÄÇé·ûºÅ¾ÙÐлìÏýµÄÇåµ¥ÈçÏÂͼËùʾ£º

ͼ16 ͨ¹ýÐÄÇé·ûºÅ¾ÙÐлìÏýµÄʾÀý
³ýÁËͨ¹ý¸Ä¶¯ZIPÃûÌÃ×ֶκͻìÏýÇåµ¥ÎļþÀ´¶Ô¿¹·´±àÒ빤¾ßÍ⣬£¬£¬£¬£¬¶ñÒâÈí¼þ»¹¾³£½ÓÄÉÒ»ÖÖÇ¿ÓÐÁ¦µÄÕ½ÂÔ¡ª¡ª»ìÏýresources.arscÎļþ¡£¡£resources.arscÎļþÊÇAndroidÓ¦ÓÃÖд洢×ÊÔ´Ó³Éä¹ØÏµµÄ½¹µãÎļþ£¬£¬£¬£¬£¬Ëüά»¤ÁË×ÊÔ´IDÓëÏÖʵ×ÊÔ´ÎļþÖ®¼äµÄÓ³Éä¡£¡£¶ñÒâÈí¼þͨ¹ý¸Ä¶¯Õâ¸öÎļþ£¬£¬£¬£¬£¬Äܹ»ÓÐÓÃ×ÌÈÅ·´±àÒ빤¾ß¶Ô×ÊÔ´µÄ׼ȷÆÊÎö£¬£¬£¬£¬£¬ÉõÖÁ¿ÉÄܵ¼Ö·´±àÒ빤¾ß±ÀÀ£»£»òÒì³£Í˳ö¡£¡£ÀýÈ磬£¬£¬£¬£¬BOOMSLANG£¨Ê÷òÅ£©Òƶ¯Ú²Æ¼Ò×å¾ÍʹÓÃÕâÒ»Õ½ÂÔ¶Ô¿¹ApktoolµÄ·´±àÒëÀú³Ì£¬£¬£¬£¬£¬ÏÂͼÊÇÆä·´±àÒëʧ°ÜʱApktoolÌáÐѵĹýʧÐÅÏ¢¡£¡£

ͼ17 »ìÏýºóµÄBOOMSLANGÑù±¾µ¼ÖÂApktool·´±àÒëʧ°Ü
3.2 ´úÂë»ìÏýÓë·´»ìÏýÊÖÒÕ
Ò»µ©Ñо¿Ö°Ô±Í»ÆÆÁËAPK°üµÄÆðÔ´»ìÏý£¬£¬£¬£¬£¬½ÓÏÂÀ´±ã»á½øÈëµ½´úÂë²ãÃæµÄÆÊÎö¡£¡£ÔÚÕâÒ»²ãÃæ£¬£¬£¬£¬£¬¶ñÒâÈí¼þͨ³£½ÓÄÉÖÖÖÖ»ìÏýÊÖÒÕ£¬£¬£¬£¬£¬´ó·ùµØÔöÌíÁ˾²Ì¬ºÍ¶¯Ì¬ÆÊÎöµÄÄѶȡ£¡£
3.2.1 ±êʶ·û»ìÏý
±êʶ·ûÖØÃüÃûÊÇ´úÂë»ìÏýÖÐ×î³£¼ûÇÒ×îÓÐÓõÄÊÖÒÕÖ®Ò»£¬£¬£¬£¬£¬Ö¼ÔÚͨ¹ý½«ÓÐÒâÒåµÄ°üÃû¡¢ÀàÃû¡¢ÒªÁìÃûºÍ±äÁ¿ÃûÌæ»»ÎªÎÞÒâÒåµÄ¡¢Ëæ»úÌìÉúµÄÃû³Æ£¬£¬£¬£¬£¬´Ó¶ø×ÌÈÅÄæÏò¹¤³ÌʦµÄÆÊÎöÀú³Ì¡£¡£±ðµÄ£¬£¬£¬£¬£¬±êʶ·û»ìÏý»¹ÄÜÓÐÓñܿªÒ»Ð©×Ô¶¯»¯ÆÊÎöƽ̨£¬£¬£¬£¬£¬ÕâЩƽ̨ͨ³£ÒÀÀµÓÚ±êʶ·ûÀ´Öƶ©¼ì²â¹æÔò¡£¡£Í¨¹ý»ìÏý±êʶ·û£¬£¬£¬£¬£¬¶ñÒâÈí¼þÄܹ»¹æ±Ü»ùÓÚ±êʶ·ûµÄ¼ì²â£¬£¬£¬£¬£¬ïÔ̱»Ê¶±ðµÄΣº¦¡£¡£³£¼ûµÄ±êʶ·û»ìÏýÕ½ÂÔ°üÀ¨Ê¹ÓÃËæ»ú×Ö·û×éºÏ£¨ÈçÊý×Ö¡¢×Öĸ»òÌØÊâ·ûºÅ£©¡¢½ÓÄÉ·ÇÓ¢ÓïÓïÑԵıêʶ·û£¨ÈçÖÐÎÄ¡¢ÈÕÓï¡¢º«Óï¡¢¶íÎĵȣ©¡¢Ê¹Ó󬳤×Ö·û±êʶ·û£¬£¬£¬£¬£¬»òͨ¹ýÌæ»»ÐÎ×´ÏàËÆµ«¼ÄÒå²î±ðµÄ×Ö·û£¨Èç×Öĸ¡°O¡±ÓëÊý×Ö¡°0¡±¡¢×Öĸ¡°I¡±ÓëСд×Öĸ¡°l¡±µÈ£©À´×ÌÈÅÆÊÎö¡£¡£ÕâЩ»ìÏýÕ½ÂÔʹ¶ñÒâÈí¼þÄܹ»ÓÐÓÃÒþ²ØÆä¹¦Ð§²¢ÔöÌíÄæÏòÆÊÎöµÄÄѶȣ¬£¬£¬£¬£¬´Ó¶øÑÓ»º±»¼ì²âºÍʶ±ðµÄʱ¼ä¡£¡£ÎªÁËÓ¦¶ÔÕâÖÖ»ìÏý£¬£¬£¬£¬£¬Çå¾²Ñо¿Ö°Ô±¿ÉÒÔʹÓôøÓз´»ìÏý¹¦Ð§µÄ·´±àÒ빤¾ß£¬£¬£¬£¬£¬ÈçGda¡¢Jeb¡¢JadxµÈ£¬£¬£¬£¬£¬ÕâЩ¹¤¾ßÓÐÖúÓÚ¿ìËÙ»Ö¸´±»»ìÏýµÄ´úÂë²¢×ÊÖúʶ±ð¶ñÒâÐÐΪ¡£¡£±êʶ·û»ìÏýʾÀýÈçÏÂͼËùʾ£º

3.2.2 ×Ö·û´®¼ÓÃÜ
¶ñÒâÈí¼þͨ³£½ÓÄɱàÂë»ò¼ÓÃÜÊֶζԴúÂëÖеÄÃô¸Ð×Ö·û´®¾ÙÐд¦Öóͷ££¬£¬£¬£¬£¬ÒÔ±ÜÃâ¶ñÒâÒªº¦×Ö£¨Èç¶ñÒâURL¡¢ÏÂÁî»òÆäËûÃô¸ÐÊý¾Ý£©ÔÚ·´±àÒëÀú³ÌÖб»Ö±½Ó̻¶¡£¡£ÕâЩÊÖÒÕÓÐÓõØ×èÖ¹ÁËÆÊÎöÖ°Ô±´Ó·´±àÒëЧ¹ûÖÐÌáȡҪº¦ÐÅÏ¢£¬£¬£¬£¬£¬ÓÈÆäÔÚ¶Ô¿¹×Ô¶¯»¯ÆÊÎöƽ̨µÄ¾²Ì¬ÆÊÎöʱ£¬£¬£¬£¬£¬¾ßÓнÏÇ¿µÄ·À»¤Ð§¹û¡£¡£³£¼ûµÄ×Ö·û´®»ìÏýÒªÁì°üÀ¨×Ö·û²ð·ÖºÍ±àÂë»ìÏý¡£¡£×Ö·û²ð·Ö½«Ãô¸Ð×Ö·û´®Ö§½â³É¶à¸ö²¿·Ö£¬£¬£¬£¬£¬³ÌÐòÔÚÔËÐÐʱÔÙÆ´½Ó³ÉÍêÕûµÄ×Ö·û´®£»£»¶ø±àÂë»ìÏýÔòͨ¹ý¶Ô×Ö·û´®¾ÙÐмÓÃÜ»òʹÓñàÂëÊÖÒÕ£¨ÈçBase64±àÂë¡¢¼òÆÓ¼ÓÃÜËã·¨µÈ£©£¬£¬£¬£¬£¬ÔÚ³ÌÐòÔËÐÐʱÔÙ¾ÙÐнâÂë¡£¡£ÕâЩÊֶβ»µ«ÔöÌíÁ˾²Ì¬ÆÊÎöµÄÄѶȣ¬£¬£¬£¬£¬Ò²Ê¹µÃÆÊÎö¹¤¾ßÎÞ·¨Ö±½Óʶ±ð³ö¶ñÒâÐÐΪ¡£¡£ÕâÖÖÊÖÒÕʹµÃ¾²Ì¬ÆÊÎö¹¤¾ßÎÞ·¨Ö±½Ó¿´µ½Òªº¦Êý¾Ý¡£¡£Çå¾²Ñо¿Ö°Ô±¿ÉÒÔʹÓö¯Ì¬ÆÊÎö¹¤¾ß£¬£¬£¬£¬£¬ÈçFrida£¬£¬£¬£¬£¬À´²¶»ñÔËÐÐʱµÄ½âÃÜÀú³Ì£¬£¬£¬£¬£¬Õ¹ÏÖ¶ñÒâÈí¼þÔÚÔËÐÐʱËù×öµÄ²Ù×÷¡£¡£×Ö·û´®¼ÓÃÜʾÀýÈçÏÂͼËùʾ£º

3.2.3 ¿ØÖÆÁ÷»ìÏý
¿ØÖÆÁ÷»ìÏýÊÖÒÕͨ¹ý²åÈëÎÞÒâÒåµÄ¿ØÖƽṹ£¨Èç¶àÓàµÄÌõ¼þ·ÖÖ§¡¢Ñ»·»òÈßÓà´úÂ룩£¬£¬£¬£¬£¬¾ÓÐĸıä³ÌÐòµÄÖ´Ðз¾¶£¬£¬£¬£¬£¬´úÂë¿éÖØÐÂÅÅÐòµÈÊÖ¶ÎʹµÃÆÊÎö¹¤¾ßÔÚʵÑéÆÊÎö³ÌÐòʱ£¬£¬£¬£¬£¬ÏÝÈë¹ýÓÚÖØ´óµÄ´úÂë½á¹¹ÖУ¬£¬£¬£¬£¬µ¼ÖÂÎÞ·¨×¼È·µØ»¹Ô³ÌÐòµÄÕæÊµÂß¼¡£¡£ÓÉÓÚ¿ØÖÆÁ÷»ìÏýÒýÈëÁË´ó×Ú²»ÐëÒªµÄÖ´Ðз¾¶£¬£¬£¬£¬£¬¾²Ì¬ÆÊÎö¹¤¾ß¿ÉÄÜÎÞ·¨ÓÐÓÃÌáÈ¡³ö³ÌÐòµÄÏÖʵÑéΪ¡£¡£
ΪÁËÓ¦¶ÔÕâÖÖ»ìÏý£¬£¬£¬£¬£¬Çå¾²Ñо¿Ö°Ô±Í¨³£ÐèҪͨ¹ýÄ£ÄâÖ´ÐÐÒÔ¼°¶¯Ì¬ÆÊÎöÊÖÒÕÀ´¸¨ÖúÊÖ¶¯×·×Ù³ÌÐòµÄÖ´ÐÐÁ÷£¬£¬£¬£¬£¬Öð²½»¹Ô³ÌÐòµÄÕæÊµÂß¼¡£¡£ÏÂͼչʾÁËÒ»¸ö¼òÆÓµÄ¿ØÖÆÁ÷»ìÏýʾÀý£¬£¬£¬£¬£¬Õ¹Ê¾ÁËÔÚ»ìÏýǰºóµÄ¿ØÖÆÁ÷½á¹¹²î±ð¡£¡£

ͼ20 ¿ØÖÆÁ÷»ìÏýǰºóµÄ²î±ð±ÈÕÕ
3.2.4 ·´Éä»úÖÆÓ붯̬¼ÓÔØ
¶¯Ì¬¼ÓÔØ»úÖÆÊǶñÒâÈí¼þ³£Óõķ´¾²Ì¬ÆÊÎöÊÖÒÕ£¬£¬£¬£¬£¬Ö÷Òª°üÀ¨ÍâµØ¶¯Ì¬¼ÓÔØºÍÔ¶³Ì¶¯Ì¬¼ÓÔØÁ½ÖÖ·½·¨¡£¡£ÍâµØ¶¯Ì¬¼ÓÔØÍ¨¹ý¼ÓÔØÍâµØ´æ´¢µÄ¶¯Ì¬¿â»òdexÎļþ£¬£¬£¬£¬£¬¶¯Ì¬Å²ÓÃÒªÁì»òÀ࣬£¬£¬£¬£¬Ê¹µÃ¶ñÒâÐÐΪÔÚ¾²Ì¬ÆÊÎö½×¶ÎÎÞ·¨±»·¢Ã÷¡£¡£Ô¶³Ì¶¯Ì¬¼ÓÔØÔòͨ¹ýÔÚÔËÐÐʱ´ÓÔ¶³ÌЧÀÍÆ÷ÏÂÔØ¶¯Ì¬¿â»òdexÎļþÀ´¼ÓÔØ²¢Ö´ÐжñÒâ´úÂ룬£¬£¬£¬£¬ÕâÖÖ·½·¨½øÒ»²½¹æ±ÜÁ˾²Ì¬ÆÊÎö¹¤¾ßµÄ¼ì²â£¬£¬£¬£¬£¬ÓÉÓÚ¶ñÒâ´úÂ벢δ·ºÆðÔÚapkÎļþÖС£¡£¶ñÒâÈí¼þÍùÍùͨ¹ý·´ÉäÊÖÒÕÁ¬Ïµ¶¯Ì¬¼ÓÔØ£¬£¬£¬£¬£¬Ê¹ÓÃÔËÐÐʱµÄ·´ÉäŲÓûúÖÆÒþ²Ø¶ñÒâÐÐΪ£¬£¬£¬£¬£¬Ê¹µÃ³õÆÚ¾²Ì¬ÆÊÎöÎÞ·¨Ê¶±ðÕâЩ¶ñÒâÔ˶¯¡£¡£ÎªÁËÓ¦¶ÔÕâÒ»ÌôÕ½£¬£¬£¬£¬£¬Çå¾²Ñо¿Ö°Ô±Í¨³£ÒÀÀµ¶¯Ì¬ÆÊÎöÊֶΣ¬£¬£¬£¬£¬Èçͨ¹ýFrida×¢Èë¾ç±¾¡¢Ê¹Óõ÷ÊÔ¹¤¾ß¶¯Ì¬¸ú×Ù»òͨ¹ýÈÕÖ¾ÆÊÎö²¶»ñ·´ÉäŲÓõÄÀú³Ì£¬£¬£¬£¬£¬´Ó¶øÕ¹ÏÖ¶ñÒâ´úÂëµÄÕæÊµÑéΪ¡£¡£ÕâЩ¶¯Ì¬ÆÊÎöÒªÁìÄܹ»Èƹý¾²Ì¬ÆÊÎöµÄÏÞÖÆ£¬£¬£¬£¬£¬Ê¶±ðͨ¹ý·´ÉäºÍ¶¯Ì¬¼ÓÔØÒþ²ØµÄ¶ñÒâÐÐΪ¡£¡£
½ÓÏÂÀ´£¬£¬£¬£¬£¬ÎÒÃÇÀ´¿´Ò»¸öʹÓÃÍâµØ¶¯Ì¬¼ÓÔØµÄ¶ñÒâ´úÂëʾÀý¡£¡£ÏÂͼչʾÁ˸öñÒâ´úÂëµÄĿ¼½á¹¹¡£¡£

ͼ21 Ŀ¼Ê÷ÐÅÏ¢
ËäÈ»´ÓÍâòÉÏ¿´£¬£¬£¬£¬£¬¸ÃĿ¼½ö°üÀ¨¼¸¸öÒªÁ죬£¬£¬£¬£¬µ«ÉîÈëÆÊÎöºó·¢Ã÷£¬£¬£¬£¬£¬¶ñÒâ´úÂëͨ¹ýattachBaseContextÒªÁìŲÓÃÁËÒ»¸öÃûΪbµÄÒªÁ죬£¬£¬£¬£¬½øÒ»²½ÊµÏÖÁË´ÓassetsĿ¼¼ÓÔØ¼ÓÃܵĴúÂëÎļþ¡£¡£¸ÃÎļþ¾ÓÉÒì»ò½âÃܺ󣬣¬£¬£¬£¬Í¨¹ý¶¯Ì¬Å²Óõķ½·¨±»¼ÓÔØ²¢Ö´ÐУ¬£¬£¬£¬£¬´úÂëÈçÏÂͼËùʾ£º

3.2.5 Native»ìÏý
Native»ìÏýÊÖÒÕÊÇͨ¹ý¶àÖÖÊֶμӴó¶Ô¶ñÒâÈí¼þÄæÏòÆÊÎöµÄÄѶȣ¬£¬£¬£¬£¬³£¼ûµÄÊÖÒÕ°üÀ¨ÒÔϼ¸ÖÖ£º
£¨1£©JNI½Ó¿Ú»ìÏý£º¶ñÒâÈí¼þͨ¹ýJNI£¨Java Native Interface£©½«Òªº¦Âß¼×ªÒÆµ½.soÎļþÖУ¬£¬£¬£¬£¬²¢Í¨¹ý»ìÏýµÄJNI½Ó¿ÚŲÓÃÍâµØ´úÂë¡£¡£Í¨¹ý½«Ô±¾ÇåÎúµÄÍâµØÒªÁìÃûÌæ»»ÎªÎÞÒâÒåµÄ·ûºÅ»òËæ»ú×Ö·û£¬£¬£¬£¬£¬¶ñÒâ´úÂëµÄ¹¦Ð§ºÍ½á¹¹±äµÃÔ½·¢ÄÑÒÔÃ÷È·ºÍ×·×Ù¡£¡£

ͼ23 JNI½Ó¿Ú»ìÏýʾÀý
£¨2£©Session¼ÓÃÜ£º½«Òªº¦ÒªÁì´æ´¢ÔÚ×Ô½ç˵µÄ.sectionÖУ¬£¬£¬£¬£¬²¢¶ÔÕâЩ×Ô½ç˵µÄ.sectionÄÚÈݾÙÐмÓÃÜ¡£¡£ÓÉÓÚ.soÎļþÔÚ¼ÓÔØÊ±»áÓÅÏÈÖ´ÐÐ.init_array¶Î£¬£¬£¬£¬£¬Òò´Ë½«½âÃÜÂ߼ǶÈëµ½.init_arrayÖС£¡£ÔÚÔËÐÐʱ£¬£¬£¬£¬£¬Í¨¹ý½âÃÜÒªÁì»ñÈ¡ÄÚ´æÖи÷¸ö.sectionµÄÆðʼµØµãºÍ¾Þϸ£¬£¬£¬£¬£¬¶Ô¼ÓÃܵÄ.section¾ÙÐнâÃÜ»¹Ô£¬£¬£¬£¬£¬´Ó¶ø»Ö¸´Òªº¦ÒªÁìµÄÕý³£Ö´ÐС£¡£

ͼ24 Session¼ÓÃܵÄʾÀý
£¨3£©º¯Êý¼ÓÃÜ£ºÆÊÎö.soÎļþ£¬£¬£¬£¬£¬Í¨¹ýÒªÁìÃû¶¨Î»Ä¿µÄÒªÁìºó£¬£¬£¬£¬£¬¶ÔÆä¾ÙÐмÓÃÜ¡£¡£ÔÚ¼ÓÔØ.soÎļþʱ£¬£¬£¬£¬£¬Í¨¹ýÖ¸¶¨ÒªÁìµÄµØµãŲÓýâÃÜÂß¼£¬£¬£¬£¬£¬½«¼ÓÃܵÄÒªÁ춯̬½âÃÜ»¹Ô£¬£¬£¬£¬£¬ÒÔʵÏÖ¶ÔÒªº¦Âß¼µÄ±£»£»¤¡£¡£

ͼ25 JNI¼Ó½âº¯Êý¾½âÃÜ»¹ÔµÄ²¿·Ö´úÂëʾÀý
£¨4£©×Ö·û´®¼ÓÃÜÓ붯̬½âÃÜ£º¶ñÒâÈí¼þͨ¹ý¼ÓÃÜÒªº¦×Ö·û´®£¨ÈçURL¡¢ÏÂÁî¡¢ÃÜÔ¿µÈ£©£¬£¬£¬£¬£¬²¢ÔÚÔËÐÐʱͨ¹ý¶¯Ì¬½âÃָܻ´ÆäÔʼÄÚÈÝ¡£¡£¼ÓÃܵÄ×Ö·û¹´Í¨³£´æ´¢ÔÚ¾²Ì¬Êý¾ÝÇøÓò£¬£¬£¬£¬£¬¶ø½âÃÜÔòͨ¹ýÌØ¶¨Ëã·¨»òÔÚÄÚ´æÖж¯Ì¬Íê³É£¬£¬£¬£¬£¬´Ó¶øÊ¹µÃ¾²Ì¬ÆÊÎö¹¤¾ßÎÞ·¨Ö±½ÓÌáÈ¡¶ñÒâÐÅÏ¢¡£¡£

ͼ26 Native½âÃÜ×Ö·û´®Ê¾Àý
£¨5£©»¨Ö¸ÁîÓëÀ¬»ø´úÂë²åÈ룺ͨ¹ýÔÚ´úÂëÖвåÈëαָÁî»òÎÞЧ´úÂ룬£¬£¬£¬£¬¶ñÒâÈí¼þÄܹ»»ìÏý³ÌÐòµÄÏÖʵÑéΪ¡£¡£ÕâЩ»¨Ö¸ÁîûÓÐÏÖʵ¹¦Ð§£¬£¬£¬£¬£¬µ«ÔöÌíÁËÄæÏò¹¤³ÌµÄÖØ´óÐÔ¡£¡£À¬»ø´úÂë²»µ«ÔöÌíÁ˳ÌÐòµÄÌå»ý£¬£¬£¬£¬£¬»¹Ê¹µÃ×·×ÙºÍÃ÷È·¶ñÒâ´úÂë±äµÃÔ½·¢ÄÑÌâ¡£¡£

ͼ27 Ò»¸ö¼òÆÓµÄÀ¬»øÖ¸ÁîʾÀý
£¨6£©´úÂë¼Ó¿ÇÓë×ÔÐ޸ĴúÂ룺ÔÚNative²ã£¬£¬£¬£¬£¬¶ñÒâÈí¼þ¾³£Ê¹ÓüӿÇÊÖÒÕÀ´Òþ²Ø½¹µã¶ñÒâ´úÂë¡£¡£¼Ó¿Çºó£¬£¬£¬£¬£¬¶ñÒâ´úÂëÒÔ¼ÓÃÜ»òѹËõÐÎʽ´æ´¢£¬£¬£¬£¬£¬Ö»ÓÐÔÚÔËÐÐʱ²Å»á½âÃÜ»ò½âѹ¡£¡£×ÔÐ޸ĴúÂëÊÖÒÕÔòÔÊÐí¶ñÒâÈí¼þÔÚÔËÐÐʱ¶¯Ì¬ÌìÉú¡¢Ð޸ĺÍÖ´ÐдúÂ룬£¬£¬£¬£¬½øÒ»²½×èÖ¹¾²Ì¬ÆÊÎö¹¤¾ßʶ±ðÍêÕûµÄ¶ñÒâÐÐΪ¡£¡£

ͼ28 ͨ¹ýHookÐ޸ĴúÂëµÄʾÀý
£¨7£©·´µ÷ÊÔÓëÄ£ÄâÆ÷¼ì²â£ºÎªÁ˶Կ¹¶¯Ì¬ÆÊÎö£¬£¬£¬£¬£¬¶ñÒâÈí¼þÍùÍù»áÔÚNative²ãǶÈë·´µ÷ÊÔ»úÖÆ£¬£¬£¬£¬£¬ÀýÈçͨ¹ý¼ì²âµ÷ÊÔÆ÷µÄ±£´æ£¨Èçgdb»òFrida£©À´ÖÐÖ¹ÆÊÎöÀú³Ì¡£¡£±ðµÄ£¬£¬£¬£¬£¬¶ñÒâÈí¼þÒ²»á¾ÙÐÐÄ£ÄâÆ÷¼ì²â£¬£¬£¬£¬£¬Í¨¹ý¼ì²é×°±¸ÊÇ·ñÔËÐÐÔÚÄ£ÄâÆ÷»òɳºÐÇéÐÎÖÐÀ´×èÖ¹±»¶¯Ì¬ÆÊÎö¹¤¾ß²¶»ñ¡£¡£

ͼ29 ¼ì²âÄ£ÄâÆ÷ʾÀý
£¨8£©¿ØÖÆÁ÷»ìÏý£º¿ØÖÆÁ÷»ìÏýͨ¹ý¸Ä±ä³ÌÐòµÄÖ´Ðз¾¶£¬£¬£¬£¬£¬Ê¹µÃÆÊÎöÖ°Ô±ÄÑÒÔÃ÷È·³ÌÐòµÄÏÖʵÁ÷³Ì¡£¡£³£¼ûµÄÒªÁì°üÀ¨²åÈëÎÞЧµÄ¿ØÖÆÁ÷£¨ÈçÌø×ª¡¢·ÖÖ§Óï¾ä£©¡¢ÎÞÓõÄÑ»·ºÍº¯ÊýŲÓ㬣¬£¬£¬£¬ÈÅÂÒÆÊÎö¹¤¾ß×·×ÙÖ¸ÁîµÄ˳Ðò¡£¡£

ͼ30 Ò»¶Î¿ØÖÆÁ÷»ìÏý´úÂëʾÀý
£¨9£©LLVM»ìÏý£ºLLVMÊÇÒ»ÖÖǿʢµÄ±àÒëÆ÷¿ò¼Ü£¬£¬£¬£¬£¬¶ñÒâÈí¼þͨ¹ýʹÓÃLLVMÊÖÒÕÀ´¶ÔNative´úÂë¾ÙÐÐÖØ´óµÄ»ìÏý´¦Öóͷ£¡£¡£LLVM»ìÏýÄÜͨ¹ýÓÅ»¯±àÒëÀú³Ì£¬£¬£¬£¬£¬ÌìÉúÄÑÒÔÔĶÁºÍÃ÷È·µÄ¶þ½øÖÆÎļþ£¬£¬£¬£¬£¬Í¬Ê±¶ÔÎļþ¾ÞϸӰÏì½ÏС¡£¡£ÕâÖÖÊÖÒÕÓÐÓÃÔöÌíÁËÄæÏò¹¤³ÌµÄÖØÆ¯ºó¡£¡£

ͼ31 LLVM»ìÏýǰºó±ÈÕÕʾÀý
ÕâЩNative»ìÏýÊÖÒÕͨ³£±»×éºÏʹÓ㬣¬£¬£¬£¬¹¹½¨¶àÌõÀíµÄ±£»£»¤»úÖÆ£¬£¬£¬£¬£¬´Ó¶øÊ¹¹Å°åµÄ¾²Ì¬ÆÊÎöºÍ¶¯Ì¬ÆÊÎöÒªÁìÃæÁÙÖØ´óµÄÌôÕ½¡£¡£½èÖúÕâЩÊÖÒÕ£¬£¬£¬£¬£¬¶ñÒâÈí¼þÄܹ»ÓÐÓÃÒþ²ØÆäÕæÊµÑéΪ£¬£¬£¬£¬£¬¹æ±ÜÇå¾²Ñо¿Ö°Ô±µÄ¼ì²âÒÔ¼°·À»¤ÏµÍ³µÄ×èµ²¡£¡£±ðµÄ£¬£¬£¬£¬£¬ÉÌÒµ¼Ó¹Ì±£»£»¤½øÒ»²½ÌáÉýÁË·À»¤µÄÖÜÈ«ÐÔ¡£¡£¶ñÒâÈí¼þ³£Ê¹ÓÃÉÌÒµ¼Ó¹Ì²úÆ·¶Ô×ÔÉí¾ÙÐб£»£»¤£¬£¬£¬£¬£¬ÉõÖÁºÚ»Ò²úÈí¼þҲƵÈÔ½ÓÄÉ´ËÀàÊÖÒÕ¾ÙÐзÀ»¤£¬£¬£¬£¬£¬ÈçÏÂͼËùʾ£º

3.2.6 ´úÂëÐéÄ⻯
´úÂëÐéÄ⻯ÊÇÏÖÔÚ×îÏȽøµÄ»ìÏýÊÖ¶ÎÖ®Ò»£¬£¬£¬£¬£¬Ëüͨ¹ý½«Ôʼ´úÂëת»»Îª×Ô½ç˵µÄÐéÄâ»úÖ¸Á£¬£¬£¬£¬¼«´óµØÌá¸ßÁË´úÂëÖØÆ¯ºóºÍÆÊÎöÄѶȡ£¡£Óë¹Å°åµÄ¿ØÖÆÁ÷»ìÏý²î±ð£¬£¬£¬£¬£¬ÐéÄ⻯ÊÖÒÕ½«Òªº¦´úÂëµÄÖ´ÐÐÂß¼·â×°ÔÚÐéÄâ»úÖУ¬£¬£¬£¬£¬Ê¹µÃ½¹µã¹¦Ð§ºÍ¿ØÖÆÁ÷ÏÕЩÎÞ·¨Í¨¹ýͨÀý·´±àÒëÊֶλ¹Ô¡£¡£ÒÔÏ´ÓDEXÐéÄ⻯ºÍSOÐéÄ⻯Á½¸öά¶È¾ÙÐÐÆÊÎö£º
DEXÐéÄ⻯ÊÖÒÕÖ÷ÒªÕë¶ÔAndroidÓ¦ÓÃÖеÄDalvik×Ö½ÚÂë¡£¡£ÕâÖÖÊÖÒÕͨ¹ý½«DEXÖеÄ×Ö½ÚÂëת»»³É×Ô½ç˵µÄÐéÄâ»úÖ¸Á£¬£¬£¬£¬È»ºóÓÉNative²ãÐéÄâ»úÚ¹ÊÍÖ´ÐУ¬£¬£¬£¬£¬´Ó¶ø±£»£»¤Òªº¦´úÂëºÍ½¹µãÂß¼¡£¡£ÕâÖÖת»»Ê¹µÃ¹Å°åµÄ·´±àÒ빤¾ßÄÑÒÔ»¹Ô´úÂëµÄÔʼÂß¼£¬£¬£¬£¬£¬ÓÉÓÚËüÃÇÎÞ·¨Ê¶±ðת»»ºóµÄÖ¸Á¡£¡£ÀýÈ磬£¬£¬£¬£¬Ä³µçÉÌÆ½Ì¨Í¨¹ýÎó²îÌáȨʵÑé¶ñÒâÐÐΪ£¬£¬£¬£¬£¬²¢ÎªÒþ²ØÆä½¹µã´úÂëÂß¼£¬£¬£¬£¬£¬½ÓÄÉÁËÒ»Ì×»ùÓÚJVM¹¹½¨µÄÐéÄâ»ú±£»£»¤£¨VMP£©ÊÖÒÕ¶Ô´úÂë¾ÙÐмӹ̡£¡£ÏÂͼչʾÁËÆä±£»£»¤ºóµÄ¶þ½øÖÆÄÚÈÝ£¬£¬£¬£¬£¬¿ÉÒÔÏÔ×Å¿´³ö£¬£¬£¬£¬£¬´úÂëÒѱ»ÐéÄ⻯Ϊ¸ß¶ÈÁýͳµÄÐéÄâ»úÖ¸Á£¬£¬£¬£¬Ê¹µÃ¹Å°åµÄ·´±àÒëºÍ¾²Ì¬ÆÊÎöÒªÁìÏÕЩÎÞЧ¡£¡£

ͼ33 ÆÊÎö¾vmp±£»£»¤µÄdexÎļþʾÀý
SOÐéÄ⻯ÊÖÒÕÔò¹Ø×¢ÓÚ±£»£»¤Ó¦ÓÃÖеÄNative´úÂ룬£¬£¬£¬£¬¼´SOÎļþ¡£¡£ÕâÖÖÊÖÒÕ¿ÉÒÔͨ¹ýÒþ²Ø·ûºÅ±í¡¢×ÊÔ´¼ÓÃܵȷ½·¨À´±£»£»¤SOÎļþÖеĹ¦Ð§²»±»ÈÝÒׯÊÎöºÍ¸Ä¶¯¡£¡£ÀýÈ磬£¬£¬£¬£¬Virbox ProtectorÌṩÁ˶ÔSOÎļþµÄ±£»£»¤Ñ¡Ï£¬£¬£¬£¬°üÀ¨Òþ²Ø·ûºÅ±íºÍ¶ÔÌØ¶¨SOÎļþµÄ¼ÓÃܱ£»£»¤¡£¡£Í¨¹ýÕâÖÖ·½·¨£¬£¬£¬£¬£¬×ÝÈ»¹¥»÷ÕßÄܹ»»á¼ûµ½SOÎļþ£¬£¬£¬£¬£¬Ò²ÎÞ·¨ÈÝÒ×Ã÷È·ÎļþÖеĺ¯ÊýºÍÂß¼£¬£¬£¬£¬£¬´Ó¶ø±£»£»¤ÁËÓ¦ÓõÄÇå¾²¡£¡£

ͼ34 ijÉÌÒµ¼Ó¹Ì²úÆ·¶ÔDEXºÍSOµÄÐéÄ⻯±£»£»¤ÏÈÈÝ
3.3 ÆäËû»ìÏýÊÖ¶Î
һЩ¶ñÒâÈí¼þͨ¹ýÇÉÃîʹÓÃWindowsºÍAndroidÎļþϵͳµÄ²î±ðÐÔ£¬£¬£¬£¬£¬ÓÐÓöԿ¹¾²Ì¬ÆÊÎöºÍÄæÏò¹¤³Ì¡£¡£ÔÚWindowsϵͳÖУ¬£¬£¬£¬£¬ÎļþÃû²»Çø·Ö¾Þϸд£¬£¬£¬£¬£¬µ«»á±£´æÆäÔʼÃûÌ㬣¬£¬£¬£¬¶øAndroidÎļþϵͳÔòÇø·Ö¾Þϸд¡£¡£ÕâÖÖ²î±ðʹµÃijЩÔÚWindowsϵͳÉÏ¿ÉÄÜÒý·¢³åÍ»»ò¹ýʧµÄÎļþÃû£¬£¬£¬£¬£¬Äܹ»ÔÚAndroid×°±¸ÉÏÕý³£Ê¹Óᣡ£±ðµÄ£¬£¬£¬£¬£¬Windowsϵͳ¶ÔÎļþÃûÖеÄÌØÊâ×Ö·û£¨Èç > < : " / \ | * ?£©ÓÐÑÏ¿áÏÞÖÆ£¬£¬£¬£¬£¬¶øAndroidϵͳÔÊÐíÕâЩ×Ö·ûµÄ±£´æ¡£¡£¶ñÒâÈí¼þ³£Í¨¹ýÔÚÎļþÃûÖÐǶÈëÕâÐ©ÌØÊâ×Ö·û£¬£¬£¬£¬£¬×ÌÈÅ»ùÓÚWindowsµÄÆÊÎö¹¤¾ß£¬£¬£¬£¬£¬µ¼ÖÂÎļþÎÞ·¨¶ÁÈ¡»ò´¦Öóͷ££¬£¬£¬£¬£¬´Ó¶øÔöÌíÄæÏòÆÊÎöµÄÄѶȡ£¡£
²»µ«ÔÆÔÆ£¬£¬£¬£¬£¬¶ñÒâÈí¼þ»¹¿ÉÄÜʹÓÃAndroidÎļþϵͳÔÊÐíͬÃûÎļþºÍÎļþ¼Ð¹²´æµÄÌØÕ÷£¬£¬£¬£¬£¬½øÒ»²½ÔöÌíÆÊÎöµÄÖØ´óÐÔ¡£¡£ÀýÈ磬£¬£¬£¬£¬ÔÚAndroidÖУ¬£¬£¬£¬£¬Ò»¸öÃûΪAndroidManifest.xmlµÄÎļþºÍÒ»¸öÃûΪAndroidManifest.xmlµÄÎļþ¼Ð¿ÉÒÔͬʱ±£´æ£¬£¬£¬£¬£¬µ«ÔÚWindowsϵͳÖÐÔò»áÒòÃüÃû³åÍ»¶øÎÞ·¨ÊµÏÖ¡£¡£ÕâÖÖ²î±ð¿ÉÄܵ¼Ö»ùÓÚWindowsµÄÆÊÎö¹¤¾ß´¦Öóͷ£ÕâЩ½á¹¹Ê±ÍÉ»¯»òÌø¹ýÆÊÎöÕâЩҪº¦Îļþ»òÎļþ¼Ð£¬£¬£¬£¬£¬½ø¶øÎª¶ñÒâÈí¼þÌṩαװ¡£¡£ÀýÈ磬£¬£¬£¬£¬BOOMSLANG¶ñÒâÈí¼þµÄÒ»¸öÔÚÒ°Ñù±¾½ÓÄÉÁËÌØÊâ×Ö·û»ìÏýºÍͬÃûÎļþÓëÎļþ¼Ð¹²´æµÄ¶Ô¿¹ÊÖÒÕ£¬£¬£¬£¬£¬ÆäAPKÎļþÔÚʹÓÃZIP¹¤¾ß·¿ªÊ±ÈçͼËùʾ£º

ͼ35 ͬÃûÎļþºÍÎļþ¼Ð»ìÏýʾÀý
´ÓͼÖпÉÒÔ¿´³ö£¬£¬£¬£¬£¬¶ñÒâÈí¼þ»áͬʱ½¨Éè ¡°\AndroidManifest.xml¡±ºÍ¡°AndroidManifest.xml¡±Ä¿Â¼£¬£¬£¬£¬£¬ÒÔ¼° ¡°\classes.dex¡± ºÍ¡°classes.dex¡±Ä¿Â¼¡£¡£ÕâÖÖ²Ù×÷»áÔÚWindowsϵͳÉϵ¼ÖÂÎļþ¼ÐÏ໥ÁýÕÖ£¬£¬£¬£¬£¬Ôì³ÉÎļþÄÚÈÝɥʧ£¬£¬£¬£¬£¬´Ó¶øÓ°Ïì·´±àÒëµÄÍêÕûÐÔ¡£¡£±ðµÄ£¬£¬£¬£¬£¬¶ñÒâÈí¼þ»¹»áʹÓò»·¨ÎļþÃû£¬£¬£¬£¬£¬µ¼ÖÂÕâЩÎļþÔÚʹÓÃapktool·´±àÒëʱ±»ºöÂÔ£¬£¬£¬£¬£¬ÈçÏÂͼËùʾ£º

ͼ36 apktoolºöÂÔ²»·¨ÎļþÃûµÄʾÀý
һЩ¶ñÒâÈí¼þ»¹»áÔÚÎļþÖÐǶÈëͬÃûµ«¾Þϸд²î±ðµÄÎļþ£¬£¬£¬£¬£¬Í¨¹ýʹÓÃWindowsÎļþÃû²»Çø·Ö¾ÞϸдµÄÌØÕ÷×ÌÈÅÆÊÎö¹¤¾ß£¬£¬£¬£¬£¬Ôì³ÉÆÊÎö¹ýʧ»òÒì³£¡£¡£ÒÔÏÂͼƬչʾÁËÒ»Àý°üÀ¨Í¬Ãûµ«¾Þϸд²î±ðÎļþµÄ¶ñÒâAPKʾÀý¡£¡£

ͼ37 WindowsÎļþϵͳ²»Çø·ÖÎļþÃû¾ÞϸдµÄʾÀý
ÔÚAndroid¶ñÒâÈí¼þÖУ¬£¬£¬£¬£¬×ÊÔ´»ìÏýÊÇÒ»ÖÖ³£¼ûµÄ¶Ô¿¹ÊÖÒÕ£¬£¬£¬£¬£¬ÆÕ±éÓ¦ÓÃÓÚassetsºÍresµÈÎļþ¼ÐÖеÄ×ÊÔ´Îļþ¡£¡£³£¼ûµÄ×ÊÔ´»ìÏýÊֶΰüÀ¨£º¶ÔassetsĿ¼ÖеÄ×ÊÔ´Îļþ¾ÙÐмÓÃÜ´¦Öóͷ££¬£¬£¬£¬£¬½¨ÉèÉî²ãǶÌ×µÄĿ¼½á¹¹»òʹÓûûÐÎĿ¼Ãû³Æ£¬£¬£¬£¬£¬²åÈë´ó×ÚÎÞÓÃÎļþ»òαװ×ÊÔ´Îļþ£¬£¬£¬£¬£¬½«Òªº¦×ÊÔ´ÓëÎÞЧ×ÊÔ´»ìÔÓÔÚÒ»Æð£¬£¬£¬£¬£¬´Ó¶øÔöÌíÆÊÎöÄѶȣ»£»¶ÔresĿ¼ÖеÄ×ÊÔ´Îļþ¾ÙÐлìÏý£¬£¬£¬£¬£¬ÀýÈç¸Ä¶¯×ÊÔ´Ó³Éä¹ØÏµ¡¢É¾³ý×ÊÔ´ÎļþÃû»ò¸ü¸ÄÎļþÀ©Õ¹ÃûµÈ¡£¡£ÕâЩÊÖ¶ÎÖ¼ÔÚ×ÌÈÅÆÊÎö¹¤¾ßµÄÆÊÎöÀú³Ì£¬£¬£¬£¬£¬Ê¹µÃÆÊÎöÖ°Ô±ÄÑÒÔ¿ìËÙ¶¨Î»ºÍʶ±ðÒªº¦Êý¾Ý£¬£¬£¬£¬£¬½øÒ»²½Ìá¸ßÄæÏò¹¤³ÌµÄÄѶȡ£¡£ÏÂͼÊÇÒ»¸ö²åÈëÀ¬»ø×ÊÔ´µÄʾÀý£º

ͼ38 ²åÈëÀ¬»ø×ÊԴʾÀý
һЩ¶ñÒâÈí¼þͨ¹ý½«ÔʼDEXÎļþÖ§½â³É¶à¸öСµÄDEXÎļþ»ò²åÈëÀ¬»ø´úÂ룬£¬£¬£¬£¬ÔöÌí¾²Ì¬ºÍ×Ô¶¯»¯ÆÊÎöµÄÄѶȡ£¡£Ö§½âDEXÎļþʹÆÊÎö¹¤¾ßÐèÒªÖð¸ö´¦Öóͷ££¬£¬£¬£¬£¬ÔöÌíÁËÆÊÎöʱ¼äºÍÖØÆ¯ºó£¬£¬£¬£¬£¬ÇÒÕâЩÎļþͨ³£Í¨¹ý¶¯Ì¬¼ÓÔØÊÖÒÕÔÚÔËÐÐʱ²Å»ãºÏ²¢£¬£¬£¬£¬£¬ÄÑÒÔÔÚ¾²Ì¬ÆÊÎöÖÐʶ±ð¡£¡£±ðµÄ£¬£¬£¬£¬£¬²åÈëµÄÀ¬»ø´úÂë²»Ö´ÐÐÏÖʵ²Ù×÷£¬£¬£¬£¬£¬µ«Í¨¹ýÐéαµÄÂß¼ºÍÖØ´óµÄ¿ØÖÆÁ÷×ÌÈÅÆÊÎö£¬£¬£¬£¬£¬ÑÚÊζñÒ⹦Ч¡£¡£´ËÀàÕ½ÂÔʹµÃ¶ñÒâÈí¼þµÄÐÐΪԽ·¢Òþ²Ø£¬£¬£¬£¬£¬ÆÈʹÆÊÎöÖ°Ô±½ÓÄɸüÖØ´óµÄ¶¯Ì¬ÆÊÎöºÍÊÖ¶¯ÄæÏò¹¤³ÌÒªÁì¡£¡£Ò»¸öapkÖаüÀ¨´ó×ÚdexµÄÀý×ÓÈçÏÂͼËùʾ£º

ͼ39 Ö§½â¶à¸ödexʾÀý
³ýÁËÉÏÃæÌáµ½µÄ»ìÏýÊÖÒÕ£¬£¬£¬£¬£¬ÉÐÓÐһЩÆäËû³£¼ûµ«Î´ÏêϸÏÈÈݵÄÊÖÒÕ£¬£¬£¬£¬£¬ÕâЩÊÖÒÕÄܽøÒ»²½ÔöÇ¿¶ñÒâÈí¼þµÄÄæÏòÆÊÎöÄѶȡ£¡£ÒÔÏÂÊÇÒ»ÕÅ»ìÏý¹¤¾ßµÄʾÀýͼƬ£¬£¬£¬£¬£¬ÆäÖÐչʾÁ˶àÖÖ»ìÏý¹¦Ð§£¬£¬£¬£¬£¬È磺ÔöÌí°üÌå»ý¡¢ÄÚ½¨×ÔÁ¦ÊðÃûÖ¤Êé¡¢DEX´úÂë»ìÏý¡¢×ÊÔ´»ìÏý¡¢APK·À¸Ä¶¯µÈ¶à¸ö¹¦Ð§¡£¡£

ΪÁ˸üºÃµØÃ÷È·»ìÏýÊÖÒÕµÄÏÖʵӦÓ㬣¬£¬£¬£¬ÒÔÏÂÊǼ¸¸ö³£¼ûµÄAndroid¶ñÒâÈí¼þµÄ»ìÏýÊÖÒÕ°¸Àý¡£¡£
4.1 Joker¶ñÒâÈí¼þ»ìÏýÒªÁì
Joker£¨ÖÐÎÄÃû³Æ¡°Ð¡³ó¡±£¬£¬£¬£¬£¬Ò²±»³ÆÎªBread£©ÊÇÒ»¸öÔÚGoogle PlayÊÐËÁÖм«Îª»îÔ¾µÄ¶ñÒâÈí¼þ¼Ò×å¡£¡£×Ô2016Äê12ÔÂÊ״α»¼ì²âµ½ÒÔÀ´£¬£¬£¬£¬£¬Joker¼Ò×åµÄÔ˶¯Ò»Ö±ÔÚÒ»Á¬£¬£¬£¬£¬£¬²¢ÇÒÆä¶ñÒâÈí¼þµÄ±äÖÖÊýĿҲÔÚÒ»Ö±ÔöÌí¡£¡£±¾ÔÂ×îÐÂÅû¶µÄGoogle PlayÊÐËÁÖÐJokerÑù±¾ÐÅÏ¢ÈçÏ£º

ͼ41 GooglePlayÉϵÄJokerľÂíÐÅÏ¢
Joker¼Ò×åµÄ¶ñÒâÈí¼þÄܹ»Öظ´½øÈëGoogle¹Ù·½Ó¦ÓÃÊг¡£¬£¬£¬£¬£¬ÆäÒªº¦Ôµ¹ÊÔÓÉÔÚÓÚÆä½ÓÄÉÁ˶àÖָ߼¶´úÂë»ìÏýÊÖÒÕ£¬£¬£¬£¬£¬´Ó¶øÈƹýÁËGoogle Play StoreµÄÇå¾²¼ì²âºÍÉó²é»úÖÆ¡£¡£ÕâЩ»ìÏýÊÖÒÕ°üÀ¨µ«²»ÏÞÓÚ£º
£¨1£©×Ö·û´®¼ÓÃÜ£ºÍ¨¹ý¼ÓÃÜÒªº¦×Ö·û´®£¬£¬£¬£¬£¬ÈçAPIÇëÇóºÍÉèÖÃÐÅÏ¢£¬£¬£¬£¬£¬×èÖ¹¾²Ì¬ÆÊÎö¹¤¾ßµÄÖ±½Óʶ±ð¡£¡£
£¨2£©¶¯Ì¬¼ÓÔØ£º½«¶ñÒâ´úÂëÊèÉ¢µ½µ¥¶ÀµÄPayloadÎļþÖУ¬£¬£¬£¬£¬½öÔÚÔËÐÐʱ¼ÓÔØ£¬£¬£¬£¬£¬ÒÔÌӱܾ²Ì¬´úÂëɨÃè¡£¡£
£¨3£©·´ÉäŲÓãºÊ¹Ó÷´Éä»úÖÆ¶¯Ì¬Å²ÓÃÒªÁ죬£¬£¬£¬£¬Òþ²ØÒªº¦¹¦Ð§Å²Ó÷¾¶¡£¡£
£¨4£©¶¯Ì¬Ï·¢ÉèÖãºÍ¨¹ýÍøÂçÇëÇó¶¯Ì¬»ñÈ¡ÉèÖûò¶ñÒâÖ¸Á£¬£¬£¬£¬½µµÍ±»¾²Ì¬¼ì²âµÄΣº¦¡£¡£
£¨5£©Ê¹ÓõÚÈý·½Ð§ÀÍ£ºÊ¹ÓÃGithubÒ³ÃæºÍ´æ´¢¿â´æ´¢¶ñÒâÉèÖûò´úÂ룬£¬£¬£¬£¬½øÒ»²½»ìÏýȪԴºÍÁ÷Á¿¡£¡£
ÕâЩÊÖÒÕµÄ×éºÏʹJoker¶ñÒâÈí¼þÄܹ»ÀÖªϰ±Ü¾²Ì¬ÆÊÎö¼ì²â£¬£¬£¬£¬£¬ÆäÕæÊµÑéΪÍùÍùÒþ²ØÔÚÖØ´óµÄ¶¯Ì¬Á÷³ÌÖС£¡£ÎªÁËÕ¹ÏÖÆäÐÐΪ£¬£¬£¬£¬£¬ÆÊÎöְԱͨ³£ÐèÒªÒÀÀµ¶¯Ì¬µ÷ÊÔºÍÔËÐÐʱ½âÃÜÊÖÒÕ¡£¡£Õë¶ÔÕâЩ»ìÏýÊֶΣ¬£¬£¬£¬£¬Çå¾²Ñо¿Ö°Ô±¿ÉÒÔ½èÖú¶¯Ì¬ÆÊÎö¹¤¾ß£¨ÈçFridaºÍXposed£©×·×Ù½âÃÜÀú³Ì£¬£¬£¬£¬£¬ÌáȡҪº¦Êý¾Ý²¢Ê¶±ð¶ñÒâ API ŲÓ㬣¬£¬£¬£¬´Ó¶øÖÜÈ«»¹ÔÆä¶ñÒâÐÐΪ¡£¡£
4.2 BadPackµÄ»ìÏýÊÖ¶Î
BadPackÊǶñÒâÈí¼þͨ¹ý¸Ä¶¯ZIPÎļþ½á¹¹Í·£¬£¬£¬£¬£¬Ê¹ApktoolºÍJadxÖÐÆÊÎö¹¤¾ßÎÞ·¨Õý³£ÆÊÎö¡£¡£Æäͨ¹ýʹÓ÷DZê×¼µÄѹËõËã·¨À´×ÌÈÅ·´±àÒ빤¾ßµÄÕý³£ÔËÐС£¡£¾010 EditorÆÊÎö¸ÃAPKÎļþÃûÌ㬣¬£¬£¬£¬·¢Ã÷ÆäѹËõÒªÁìֵΪ0xF753£¬£¬£¬£¬£¬ÈçÏÂͼËùʾ£º

ͼ42 ¸Ä¶¯apkÎļþѹËõËã·¨±êʶʾÀý
ÕâÒ»ÊýÖµ²¢²»ÊôÓÚÈκÎÒÑÖªµÄ±ê׼ѹËõÒªÁ죬£¬£¬£¬£¬Òò´Ëµ¼Ö·´±àÒ빤¾ßÎÞ·¨Ê¶±ðºÍ´¦Öóͷ£¸ÃÎļþ¡£¡£Æ¾Ö¤±ê×¼ZIPÃûÌù淶£¬£¬£¬£¬£¬Ñ¹ËõÒªÁìµÄȡֵͨ³£ÈçͼËùʾ¡£¡£

ͼ43 ZIPÖ§³ÖµÄ¸÷ѹËõÒªÁìµÄ±êʶֵʾÀý
ƾ֤AndroidϵͳԴ´úÂ룬£¬£¬£¬£¬µ±ÏµÍ³Óöµ½·ÇCOMP_DEFLATE£¨¼´ 0x08£©Ñ¹ËõÒªÁìʱ£¬£¬£¬£¬£¬»áĬÈϽ«ÊäÈëÎļþ°´ ¡°Î´Ñ¹Ëõ¡± £¨COMP_STORED£¬£¬£¬£¬£¬¼´ 0x00£©·½·¨´¦Öóͷ£¡£¡£Ïêϸ¶øÑÔ£¬£¬£¬£¬£¬ÏµÍ³»áÖ±½Ó¶ÁÈ¡ÎļþµÄδѹËõÊý¾Ý³¤¶È£¬£¬£¬£¬£¬²¢ÒԴ˾ÙÐÐÆÊÎö¡£¡£Òò´Ë£¬£¬£¬£¬£¬¶ñÒâÈí¼þʹÓÃÁËAndroidϵͳ¶ÔZIPÃûÌõÄÈÝ´í»úÖÆ£¬£¬£¬£¬£¬Í¨¹ýʹÓò»·¨µÄѹËõËã·¨¾ÙÐлìÏý£¬£¬£¬£¬£¬´Ó¶øµÖ´ï¹æ±Ü·´±àÒ빤¾ßµÄÄ¿µÄ¡£¡£ÕâÖÖ»ìÏýÊÖÒÕ¼òÆÓÈ´ÓÐÓᣡ£ÔÚÆÊÎöAndroid¶ñÒâÈí¼þʱ£¬£¬£¬£¬£¬ÈôÓöµ½ÀàËÆÇéÐΣ¬£¬£¬£¬£¬¿É½«Ñ¹ËõÒªÁìÐÞ¸ÄΪ0ÒÔ±ã׼ȷ½âѹºÍÆÊÎö¡£¡£
APKα¼ÓÃÜͨ¹ýÐÞ¸ÄZIPÎļþµÄÍ·²¿£¬£¬£¬£¬£¬½«¼ÓÃܱê¼ÇÉèÖÃΪtrue£¬£¬£¬£¬£¬µ«²¢Î´ÏÖʵ¶ÔÎļþÄÚÈݾÙÐмÓÃÜ¡£¡£ÕâÖÖÊÖÒÕʹÓÃÁËAndroidϵͳÔÚ´¦ ZIPÎļþʱ²»»áÑé֤ͷ²¿µÄ¼ÓÃܱê¼Ç£¬£¬£¬£¬£¬¶øÍ¨Ë׵ĽâѹÈí¼þÔò»á¼ì²â¸Ã±ê¼Ç¡£¡£ÀýÈ磬£¬£¬£¬£¬µ±Ê¹ÓÃRAR¹¤¾ß½âѹ¸ÃAPKÎļþʱ£¬£¬£¬£¬£¬»áÌáÐÑÓû§ÊäÈëÃÜÂ룬£¬£¬£¬£¬ÈçÏÂͼËùʾ£º

ͼ44 α¼ÓÃܵĻìÏýʾÀý
ÓÉÓÚJebºÍJadx¶¼Ê¹Óñê×¼µÄZIP¿â£¬£¬£¬£¬£¬Òò´ËÎÞ·¨Õý³£½âѹ²¢·´±àÒë¸ÃÎļþ¡£¡£ËüÃǵķ´±àÒë¹ýʧÐÅÏ¢ÈçÏÂͼËùʾ£º

ͼ45 ÎÞ·¨Ê¹ÓÃJadxºÍJeb·¿ªµÄ»ìÏýAPKʾÀý
ͨ¹ý½ÓÄÉBadPackÊÖÒÕ£¬£¬£¬£¬£¬¶ñÒâÈí¼þ½«×ÔÉíαװΪÒì³£ÃûÌõÄÎļþ£¬£¬£¬£¬£¬Ê¹Ó÷´±àÒ빤¾ß¶ÔÎļþÆÊÎöµÄÑÏ¿áÐÔ´¥·¢Òì³££¬£¬£¬£¬£¬´Ó¶øÏÔÖøÔöÌí¾²Ì¬ÆÊÎöµÄÄѶȡ£¡£ÕâÖÖÕ½ÂÔÓÐÓÃ×ÌÈÅÁËÇå¾²Ñо¿Ö°Ô±µÄÆÊÎöÁ÷³Ì£¬£¬£¬£¬£¬ÌáÉýÁ˶ñÒâÈí¼þµÄÒþ²ØÐÔ¡£¡£
Õë¶ÔÕâÒ»ÊÖÒÕ£¬£¬£¬£¬£¬¿ÉÒÔͨ¹ýÒÔÏÂÒªÁì¾ÙÐÐÓ¦¶Ô£º
£¨1£©Ê¹ÓÃÐÞ¶©ºóµÄZIP¿â£ºÍ¨¹ýÐÞ¸ÄZIP½âѹ¿âµÄÆÊÎöÂß¼£¬£¬£¬£¬£¬ºöÂԷDZê×¼×ֶλòÒì³£ÃûÌ㬣¬£¬£¬£¬È·±£ÎļþÄÚÈÝÄܹ»×¼È·½âѹ¡£¡£
£¨2£©±àдÐÞ¸´¾ç±¾£ºÆÊÎöBadPackÎļþµÄÒì³£×ֶΣ¬£¬£¬£¬£¬Õë¶ÔÌØÃüÃûÌÃÉè¼Æ¾ç±¾£¬£¬£¬£¬£¬×Ô¶¯ÐÞÕýÎļþ½á¹¹£¬£¬£¬£¬£¬Ê¹Æä»Ö¸´Îª±ê×¼ÃûÌÃÒÔ±ãºóÐøÆÊÎö¡£¡£
ÕâЩӦ¶Ô²½·¥Äܹ»ÓÐÓÃÈÆ¹ýBadPackÊÖÒյĻìÏýÊֶΣ¬£¬£¬£¬£¬Îª¾²Ì¬ÆÊÎöÌṩ¿É¿¿µÄÊý¾ÝÖ§³Ö¡£¡£
4.3 SpyNote¶ñÒâÈí¼þ»ìÏýÕ½ÂÔ
SpyNoteÊÇÒ»ÖÖÌØ¹¤Èí¼þ£¬£¬£¬£¬£¬³£Í¨¹ý¶ÌÐźʹ¹ÂÚÍøÕ¾µÈ·½·¨¾ÙÐÐÈö²¥¡£¡£¹¥»÷Õßͨ³£·¢ËͰüÀ¨¶ñÒâÁ´½ÓµÄSMSÐÂÎÅ»ò½¨Éèαװ³ÉÕýµ±ÍøÕ¾µÄ´¹ÂÚÒ³Ãæ£¬£¬£¬£¬£¬ÓÕµ¼Ä¿µÄÓû§µã»÷Á´½Ó²¢ÏÂÔØÎ±×°³ÉÕýµ±Ó¦ÓóÌÐòµÄ¶ñÒâÈí¼þ¡£¡£×Ô2016ÄêÔÚ¶ñÒâÈí¼þÂÛ̳Ê×´ÎÆØ¹âÒÔÀ´£¬£¬£¬£¬£¬SpyNoteÒ»Ö±×÷ΪһÖÖÒ»Á¬ÍþвµÄ¶ñÒ⹤¾ßÔÚÈ«Çò¹æÄ£ÄÚ»îÔ¾¡£¡£¹ûÕæÊý¾ÝÏÔʾ£¬£¬£¬£¬£¬½ñÄê1ÔºÍ2ÔÂʱ´ú£¬£¬£¬£¬£¬SpyNoteµÄÐÂÔöÑù±¾ÊýÄ¿ÒÑÁè¼Ý3400¸ö£¬£¬£¬£¬£¬Åú×¢ÆäÍþвÔ˶¯ÈÔÔÚ¿ìËÙÀ©É¢¡£¡£×îÐÂÅû¶µÄÍþвÇ鱨ÏÔʾ£¬£¬£¬£¬£¬SpyNoteαװ³ÉÇå¾²Ó¦ÓóÌÐòʵÑé¹¥»÷£¬£¬£¬£¬£¬ÆäÖ÷ҪĿµÄÊǼÓÃÜÇ®±ÒÕË»§£¬£¬£¬£¬£¬ÇÔȡ˽ԿºÍÓà¶îÐÅÏ¢£¬£¬£¬£¬£¬ÓÈÆäÕë±ÈÕÕÌØ±Ò¡¢ÒÔÌ«·»ºÍTetherµÈÈÈÃÅÊý×Ö×ʲú¡£¡£Ïà¹Ø¹¥»÷ÊÂÎñÈçÏÂͼËùʾ£º

ͼ46 SpyNote·ÂðÇå¾²Èí¼þʵÑé¹¥»÷
SpyNote ³ýÁËͨ¹ý¶àÖÖÇþµÀ¾ÙÐÐÈö²¥£¬£¬£¬£¬£¬»¹½ÓÄÉÁËһϵÁи߼¶»ìÏýÓëÒþ²ØÕ½ÂÔ£¬£¬£¬£¬£¬ÒÔ¹æ±Ü¼ì²âºÍÆÊÎö¡£¡£ÒÔÏÂÊÇÆäÖ÷Òª»ìÏýÊÖÒյļòÒª¸ÅÊö£º
£¨1£©¸Ä¶¯ APK ÎļþµÄ ZIP ÃûÌ㬣¬£¬£¬£¬´Ó¶øµ¼Ö·´±àÒëAPKToolÔÚÆÊÎöʱʧ°Ü£¬£¬£¬£¬£¬ÈçÏÂͼËùʾ£º

ͼ47 ÐÞ¸ÄzipÃûÌõ¼ÖÂApktool·´±àÒëʧ°ÜµÄʾÀý
£¨2£©¸Ä¶¯Çåµ¥ÎļþħÊõ¡¢²åÈëÀ¬»ø×Ö·û´®¡£¡£Ð޸ĵÄħÊõʾÀýÈçÏÂͼ£º

ͼ48 ÐÞ¸ÄħÊõ»ìÏýʾÀý
£¨3£©Ê¹ÓÃÏà½ü×Ö·ûʵÏÖ´úÂë»ìÏý£¬£¬£¬£¬£¬ÈçÏÂͼËùʾ£º

ͼ49 Ïà½ü×Ö·û´úÂë»ìÏýʾÀý
£¨4£©¶Ôresources.arscÎļþ»ìÏý£¬£¬£¬£¬£¬Ê¹jadx·´±àÒ빤¾ßÔÚÆÊÎöʱÍÉ»¯£¬£¬£¬£¬£¬ÈçÏÂͼËùʾ£º

ͼ50 JadxÎÞ·¨ÆÊÎöresources.arscÎļþ
Android¶ñÒâÈí¼þµÄ»ìÏýÊÖÒÕÒ»Ö±½ø»¯£¬£¬£¬£¬£¬´Ó¼òÆÓµÄ´úÂëÖØÃüÃûµ½ÖØ´óµÄ¶¯Ì¬¼ÓÔØÓë·´µ÷ÊÔÊÖÒÕ£¬£¬£¬£¬£¬¶ñÒâÈí¼þͨ¹ýÕâЩÊֶμ«´óµØÌáÉýÁ˶ñÒâ´úÂëµÄÒþ²ØÐÔºÍÆÊÎöÄѶȡ£¡£Ëæ×Å»ìÏýÊÖÒÕµÄÒ»Ö±Éú³¤£¬£¬£¬£¬£¬Çå¾²Ñо¿Ö°Ô±Ò²ÐèÒªÒ»Ö±¸üÐÂ×Ô¼ºµÄÆÊÎöÊֶΣ¬£¬£¬£¬£¬´Ó¾²Ì¬ÆÊÎöÀ©Õ¹µ½¶¯Ì¬ÆÊÎö¡¢ÐÐΪÆÊÎöµÈ¶àά¶ÈµÄÆÊÎöÒªÁì¡£¡£
δÀ´£¬£¬£¬£¬£¬Ëæ×Å»úеѧϰ¡¢È˹¤ÖÇÄܵÈÊÖÒÕµÄÒýÈ룬£¬£¬£¬£¬»ìÏýÊÖÒÕºÍÄæÏòÆÊÎöÊÖÒÕ½«¼ÌÐø·ºÆð³öÔ½·¢ÖØ´óºÍ¸ßЧµÄÌ¬ÊÆ¡£¡£ÔÚÕâÖÖÇéÐÎÏ£¬£¬£¬£¬£¬¿ª·¢¸üǿʢµÄ×Ô¶¯»¯¼ì²âºÍÆÊÎö¹¤¾ß½«ÊÇÆÆ½â¶ñÒâÈí¼þ·À»¤µÄÒªº¦¡£¡£Í¬Ê±£¬£¬£¬£¬£¬¿ª·¢ÕߺÍÇ徲ר¼ÒÒ²Ó¦ÔöÇ¿¶Ô»ìÏýÊÖÒÕµÄÑо¿£¬£¬£¬£¬£¬Öƶ©³ö¸ü¾ßÕë¶ÔÐÔµÄÓ¦¶ÔÕ½ÂÔ£¬£¬£¬£¬£¬ÒÔÈ·±£Androidƽ̨µÄÇå¾²ÐÔ¡£¡£
ͨ¹ýÒ»Á¬µÄÑо¿ºÍÊÖÒÕÁ¢Ò죬£¬£¬£¬£¬ÎÒÃÇÓÐÍûÄܹ»¸üºÃµØ¶Ô¿¹¶ñÒâÈí¼þµÄ»ìÏýÊÖÒÕ£¬£¬£¬£¬£¬±£»£»¤Óû§µÄÒþ˽ÓëÇå¾²¡£¡£
bevictorΰµÂÆð¾¢·ÀÓùʵÑéÊÒ£¨ADLab£©
ADLab½¨ÉèÓÚ1999Ä꣬£¬£¬£¬£¬ÊÇÖйúÇå¾²ÐÐÒµ×îÔ罨ÉèµÄ¹¥·ÀÊÖÒÕÑо¿ÊµÑéÊÒÖ®Ò»£¬£¬£¬£¬£¬Î¢ÈíMAPPÍýÏë½¹µã³ÉÔ±£¬£¬£¬£¬£¬¡°ºÚȸ¹¥»÷¡±¿´·¨Ê×ÍÆÕß¡£¡£×èÖ¹ÏÖÔÚ£¬£¬£¬£¬£¬ADLabÒÑͨ¹ý CNVD/CNNVD/NVDB/CVEÀÛ¼ÆÐû²¼Çå¾²Îó²î5000Óà¸ö£¬£¬£¬£¬£¬Ò»Á¬¼á³Ö¹ú¼ÊÍøÂçÇå¾²ÁìÓòÒ»Á÷Ë®×¼¡£¡£ÊµÑéÊÒÑо¿Æ«Ïòº¸Ç»ù´¡Çå¾²Ñо¿¡¢Êý¾ÝÇå¾²Ñо¿¡¢5GÇå¾²Ñо¿¡¢È˹¤ÖÇÄÜÇå¾²Ñо¿¡¢Òƶ¯Çå¾²Ñо¿¡¢ÎïÁªÍøÇå¾²Ñо¿¡¢³µÁªÍøÇå¾²Ñо¿¡¢¹¤¿ØÇå¾²Ñо¿¡¢ÐÅ´´Çå¾²Ñо¿¡¢ÔÆÇå¾²Ñо¿¡¢ÎÞÏßÇå¾²Ñо¿¡¢¸ß¼¶ÍþвÑо¿¡¢¹¥·Àϵͳ½¨Éè¡£¡£Ñо¿Ð§¹ûÓ¦ÓÃÓÚ²úÆ·½¹µãÊÖÒÕÑо¿¡¢¹ú¼ÒÖØµã¿Æ¼¼ÏîÄ¿¹¥¹Ø¡¢×¨ÒµÇ徲ЧÀ͵ȡ£¡£