מדריך זה מראה לך כיצד להקפיא את תהליכי הרקע של כל אפליקציה באנדרואיד 7.0 ו-7.1 נוגט ללא שורש באמצעות פקודת ADB נסתרת.
אנדרואיד תמיד נחשבה לפלטפורמה הסלולרית ה"חזקה" יותר בהשוואה ל-iOS בגלל מידת החופש שיש לאפליקציות הצד השלישי שלה. זה מאפשר הרבה אוטומציה להתרחש פשוט כי יישומי אנדרואיד יכולים לבצע יותר משימות בזמן שהם פועלים ברקע. עם זאת, זה מגיע עם חיסרון מכיוון שהוא פותח את הדלת לריקון סוללה פוטנציאלי יותר הודות לתהליכי רקע הפועלים במכשיר.
זה דבר אחד לדעת שאתה טוען את הטלפון שלך עם יישומים הפועלים ברקע מכיוון שאתה מוכן להקריב חלק מחיי הסוללה שלך עבור היתרונות שהם מביאים. זה סיפור אחר אם אתה רק מוריד יישומים מסורתיים שאינם מותאמים ומבצעים משימות ברקע כאשר אתה לא רוצה או אפילו צריך אותם. גוגל עבדה כדי לתקן זאת על ידי הצבת יותר ויותר הגבלות על מה שיישומים יכולים לעשות בהם הרקע, והשחרור של אנדרואיד O מביא את ההגבלות הרבות ביותר של תהליך/מקלט ברקע רָחוֹק.
עם זאת, הרוב המכריע של המשתמשים לא יראה את Android O במכשירים שלהם במשך חודשים רבים מהיום (אם בכלל). אבל אם אתה רץ אנדרואיד 7.0 או אנדרואיד 7.1
מדריך הגבלת תהליכי רקע
דרישות:
- מכשיר אנדרואיד נוגט (7.0 או 7.1).
- התקן את מנהלי ההתקן של ה-USB עבור OEM של המכשיר הספציפי שלך (Google מספקת רשימה של כמה מנהלי התקן USB אוניברסליים כאן).
- הורד את ADB בינארי עבור מערכת ההפעלה הספציפית שלך (חלונות, מק, לינוקס). קישורים אלה תמיד יצביעו על הגרסה העדכנית ביותר של הבינארי.
- חלץ את התוכן של קובץ ה-ZIP לתוך תיקיה נגישה בקלות במחשב האישי שלך.
- עבור לאפליקציית ההגדרות בטלפון שלך והקש על האפשרות אודות הטלפון.
- מצא את מספר הבנייה והקש עליו 7 פעמים כדי להפעיל את מצב מפתחים.
- חזור לתפריט הראשי של הגדרות והיכנס לאפשרויות מפתחים כדי שתוכל להפעיל את מצב ניפוי באגים USB.
- חבר את הטלפון שלך למחשב ושנה אותו ממצב "טעינה בלבד" למצב "העברת קבצים (MTP)". זה לא הכרחי בכל מכשיר אבל מכשירים רבים דורשים זאת כאמצעי אבטחה לפני שמאפשרים ל-ADB לעבוד.
- חזור למחשב ודפדף לספרייה שבה חילצת את ה-ADB הבינארי.
- הפעל שורת פקודה או מסוף בספריית ה-ADB שלך. עבור משתמשי Windows, ניתן לעשות זאת על ידי החזקת Shift ולחיצה ימנית ולאחר מכן בחירה באפשרות "פתח שורת הפקודה כאן". (חלק ממשתמשי Windows 10 עשויים לראות את "שורת הפקודה" מוחלפת ב"PowerShell".)
- ברגע שאתה בסביבת שורת הפקודה או המסוף, הזן את הפקודה הבאה:
adb devices
- זה יתחיל את הדמון ADB אם הוא לא הושק כבר, רק המתן עד שהוא יסתיים. אם זו הפעם הראשונה שאתה מפעיל את ADB, תראה גם הנחיה בטלפון שלך המבקשת ממך לאשר חיבור עם המחשב. אפשר כאן גישה לאיתור באגים ב-USB.
- כעת אם תפעיל מחדש את פקודת adb devices משלב 10, שורת הפקודה/טרמינל ידפיס את המספר הסידורי של המכשיר שלך. אם כן, אז אתה מוכן להמשיך הלאה. אם לא, סביר להניח שמנהלי ההתקן של ה-USB אינם מותקנים כראוי.
- לאחר מכן תצטרך למצוא את שם החבילה עבור היישום שאתה רוצה להקפיא תהליכי רקע. אתה יכול לעשות זאת על ידי התקנת מפקח אפליקציות אפליקציה בטלפון שלך.
- חזור לשורת הפקודה והזן את הפקודה הבאה:
adb shell
- כעת בצע את הפקודה הבאה כדי לשחרר את תהליכי הרקע של יישום:
cmd appops set
RUN_IN_BACKGROUND ignore - אם אי פעם תרצה לבטל את השינוי שביצעת ולאפשר שוב תהליכי רקע של אפליקציה, הזן את הפקודה הזו:
cmd appops set
RUN_IN_BACKGROUND allow - אתה תדע שזה עובד אם זה מחזיר אותך לבקשת מעטפת אחרת של ADB ולא נותן לך הודעת שגיאה.
הֶסבֵּר
איך בדיוק הפקודה הזו עובדת היא שהיא מאפשרת לך להגביל הרשאה נסתרת שבדרך כלל אינה נגישה למשתמש באפליקציית ההגדרות. הרשאה זו נקראת הרשאת RUN_IN_BACKGROUND והדרך היחידה שניתן לשנותה היא להשתמש ב-"cmd appops" שהוא ממשק שורת הפקודה של "App Ops" - מערכת ניהול ההרשאות הפונה למשתמש של גוגל.
גוגל הוסיפה פקודת ADB נסתרת זו המאפשרת לך להגביל כל יישום מלקבל כוונות שידור מרומזות (כלומר. האפליקציה מתעוררת ברקע) וגם למנוע מיישומים אלה לתזמן שירותי רקע מבלי להשתמש ב-JobScheduler (כלומר. האפליקציה מתעוררת בזמן לא מתאים, ומרוקנת את הסוללה). פקודה זו מיועדת למעשה לשימוש רק על ידי מפתחים המחפשים לדמות כיצד האפליקציה שלהם תתפקד בתנאי זיכרון נמוך, אך למרבה המזל, אנו מסוגלים להשתמש בה בעצמנו.
על ידי הסרת תלות בשירותי הרקע של אפליקציה ובמקלטי שידור מרומזים הרשומים במניפסט, מפתחים יכולים לייעל את האפליקציה שלהם כך שתפעל טוב יותר במכשירים בעלי זיכרון נמוך. גוגל טוענת שיישומים המותאמים למכשירים מסוג זה, או כאלה שנמצאים בתנאי זיכרון נמוך, יכולים לשפר הן את הביצועים והן את חווית המשתמש. ב-Google I/O השנה, הודיעה החברה גרסה שונה של אנדרואיד בשם Android Go, אשר ישמש עבור סמארטפונים עם זיכרון נמוך מאוד, כך שאנו מניחים שהפקודה הזו תהיה שימושית עבור מפתחים המכוונים לפלטפורמה זו.
בכל מקרה, פקודה זו יכולה להיות שימושית למדי עבור המשתמש הממוצע, אך היזהר מה אתה מגביל כאן. אפליקציות כמו Hangouts או Facebook יפסיקו לחלוטין להסתנכרן ברקע עד שתפתח אותן, שאם לזה אתה מכוון אז אני בטוח שלא אכפת לך. אבל אל תתפלאו כאשר המיילים או ההודעות שלכם מתעכבים אם תפעילו את הפקודה הזו באפליקציה שתלויה במקלטי רקע.