מדריך איך "לשחק" עם אפשרויות מפתחים (ולחסום אותו)
-
במדריך הזה אביא כמה דרכים לחסום את אפשרויות מפתחים, כמה מהדרכים די מצחיקות לדעתי (לכבוד פורים).
אני לא לוקח אחריות מכל דבר שקורה לטלפון שלכם, תמיד מומלץ שיהיה לכם גיבוי לקושחה לפני שתערכו האחריות עליכם.....
קודם כל בא צריך למצוא את הקובץ קוד (הsmali) של מה קורא כשלוחצים על הBUILD אני מצאתי את זה בנתיב:
MtkSettings\smali\com\android\settings\deviceinfo\BuildNumberPreferenceController.smali-|
איך עורכים smali?
פותחים את האפליקציה של הגדרות ע"י MTmanager ולוחצים על classes.dex ופותחים ע"י dex editor plus והולכים לנתיב הנ"לטיפ: לאחר עריכה, תוכלו להכריח את האפליקציה לעצור כדי לראות את השינויים (אילוץ עצירה בהגדרות)
1. הפתרון הכי קל:
למחוק את הפעולה שמורידה באחד כל לחיצה תחילת הפעולה נראת כך
.method public handlePreferenceTreeClick(Landroidx/preference/Preference;)Z .locals 8 המשך קוד
ולמחוק את השורה הזאת
sub-int/2addr p1, v1
זה יעשה שלא יראו כלום כי צריך 7 לחיצות וכל פעם שלוחצים לא יורד כלום
עוד דרך קלה היא ללכת לפעולה.method private enableDevelopmentSettings()V .locals 3 המשך קוד
ולהוסיף אחר כך return-void
.method private enableDevelopmentSettings()V .locals 3 return-void המשך קוד
זה יעשה שכן רואים toast של עוד x לחיצות אתה מפתח אבל אחרי שמגיע ל-1 שום דבר לא יקרה
יישנן אפשרויות רבות אחרות לחסימת אפשרויות מפתחים בצורה פשוטה, ניתן אפילו לערוך את הטוסטים כדי לומר "אפשרויות מפתחים אינן זמינות במכשיר הזה" ועוד.... (ניתן ג"כ לשנות שהספירה תתחיל ב1- וזה יאמר לו שהוא כבר מפתח ולא יפתח)
עכשיו בואו נגיע לשינויים המעניינים
2. להיות זבל #1:
קודם אני אסביר מה 3 שורות עושים
השורה הזו היא שגורמת לספירה לאחור לרדתsub-int/2addr p1, v1
השורה הזו היא מה שאומר למכשיר מתי להתחיל להציג טוסטים
const/4 v2, 0x5
השורה הזו היא מה שאומר למכשיר כמה לחיצות צריך כדי לפתוח אפשרויות מפתחים
const/4 v0, 0x7
עכשיו נעשה קצת שינויים.....
sub-int/2addr p1, v1 --> add-int/2addr p1, v1 const/4 v2, 0x5 --> const v2, 0xffffff const/4 v0, 0x7 --> const/4 v0, 0x1
תוצאה למי שעוד לא הבין: עכשיו במקום לספור לאחור מ-7 הספירה תתחיל ב-1 ותעלה בכל פעם שתלחץ
3. להיות זבל #2:
לשנות
const/4 v2, 0x5 --> const v2, 0xffffff const/4 v0, 0x7 --> const/4 v0, 0xffffff
תוצאה:
וודאי שנלך ג"כ לפעולה הזאת
.method private enableDevelopmentSettings()V
ונמחק את השורה שפותחת את האפשרויות מפתחים ונערוך את הstring לומר במקום "אתה עכשיו מפתח" ל "איזה אדיוט אתה?!! מה חשבת שיקרה"
4. להיות זבל #3:
לשנות
const/4 v2, 0x5 --> const v2, 0xff const/4 v0, 0x7 --> const/4 v0, 0xff
להוסיף לפני
sub-int/2addr p1, v1
const/4 v1, 0x1 if-lez p1, :cond_b const/4 v3, 0x1 if-ne p1,v3 :notequel const v3, 0xff add-int/2addr p1, v3 :notequel
תוצאה: הספירה לאחור תתחיל מ-255 וכשתגיע ל-1 היא תחזור ל-255
אני מקווה שנהנתם מהפוסט שהשקעתי בו זמן ומאמץ אשמח לקבל תגובות
פורים שמח
-
-
@EBA לא נגעתי במכשירים כאלו, אבל אנסה ליעץ מהידע שלי בשיאומי. קודם כל גיבוי של מה שחשוב לך במכשיר ולוודאות שיש לך קושחה מלאה למכשיר.
באנדרויד גבוה אי אפשר למצוק את הxml אז צריך לערוך אותו לדוג' שהbuild יהיה disabled.
לערוך סמאלי אמור להיות אותו רעיון כמו במדריך למצוא את הקובץ האחראי והפעולה האחראית ולגרום שלא יעבוד, אם תשלח לי את האפליקציה של ההגדרות אשמח להסתכל.