דילוג לתוכן
  • חוקי הפורום
  • פופולרי
  • לא נפתר
  • משתמשים
  • חיפוש גוגל בפורום
  • צור קשר
עיצובים
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • ברירת מחדל (ללא עיצוב (ברירת מחדל))
  • ללא עיצוב (ברירת מחדל)
כיווץ
מתמחים טופ
ר

ר יעקב עייפים

@ר יעקב עייפים
אודות
פוסטים
44
נושאים
3
שיתופים
0
קבוצות
0
עוקבים
0
עוקב אחרי
0

פוסטים

פוסטים אחרונים הגבוה ביותר שנוי במחלוקת

  • המלצה | לרגל תחילת הזמן יצרתי עבורי תוסף לTampermonkey מה שיעזור לכם לא להיות על המחשב
    ר ר יעקב עייפים

    אין לי זמן כרגע לפרט אז אני מעלה פירוט מ ai. מה שרציתי זה למנוע מעצמי גלישה ובזבוז זמן אשמח למשוב ממכם אם זה עזר גם לכם.

    אם אתם רוצים שינויים או שיש לכם הערות אתם לא צריכים אותי - תכתבו לai שלכם את הקוד ואת ההערות הוא כבר יסתדר...

    גם לגבי ההתקנה של התוסף אין לי זמן כרגע לפרט תשאלו את ה ai הקרוב אליכם הוא יסביר לכם יותר טוב ממני.
    העליתי לבקשת חבר.

    כמה מילים על התוסף - יצא לי לאחרונה מלא פעמים לשבת על המחשב ולהימרח שעות בצ'אט מייל עם חברים או סתם ככה לעבור שעות באינטרנט בי לשים לב אז יצרתי לעצמי תוסף שגם יתן לי רקע שיגרום לתזכורת ולהפרעה קטנה בגלישה מה שיגרום לי לצמצם את השימוש וגם באתרים שלקחו לי הכי הרבה זמן ביממה האחרונה מייל והפורום עשיתי שבכניסה אליהם אצטרך לענות על כמה חידות וגם זה יפתח אותם ל5 דקות כאשר לאחר מכן הם יסגרו לשעה וכך למעשה אני ימנע בעז"ה מלגלוש מכיוון שלא נוח שיהיו הרבה תוספי כרום אז עשיתי את זה כתוסף שבשביל להתקין אותו צריך להיכנס לפה להתקין את התוסף לאחר מכן ללחוץ על סמל התוסף ואז ללחוץ על Create a new script... ואז למחוק את כל התוכן הקיים להדביק את הקוד מהספוילר ולשמור על ידי לחיצה ctrl + s מייד לאחר מכן תרעננו את הדף של הפורום למשל ותראו ישועות... אולי תצטרכו לתת הרשאות לתוסף Tampermonkey אצלכם לגשת לאתרים לא יודע אצלי יש לו כבר
    בהצלחה!
    הקוד בספוילר:

    // ==UserScript==
    // @name         Ultimate Global Blocker - Extreme Editor Lock & Timer
    // @namespace    http://tampermonkey.net/
    // @version      32.0
    // @description  Original timings (5m/60m), original keys, NO black screen on AI, visual timer, INVISIBLE button.
    // @match        *://*/*
    // @match        chrome-extension://dhdgffkkebhmkfjojejmpbldmpobfkfo/*
    // @run-at       document-start
    // @grant        GM_addStyle
    // ==/UserScript==
    
    (function() {
        'use strict';
    
        // זמנים מקוריים
        const ACCESS_DURATION = 5 * 60 * 1000; // 5 דקות
        const COOLDOWN_DURATION = 60 * 60 * 1000; // 60 דקות צינון
        const EDITOR_LOCK_DURATION = 120 * 60 * 1000; // שעתיים המתנה לעריכה
        const GRACE_PERIOD = 15 * 1000; 
    
        // מפתחות מקוריים
        const STORAGE_KEY = 'focus_access_data';
        const SESSION_KEY = 'shteygen_session_unlocked'; 
        const LAST_UNLOCK_KEY = 'shteygen_last_unlock_time';
        const EDITOR_UNLOCK_TIME_KEY = 'shteygen_editor_unlock_time';
        const BG_IMAGE_URL = 'https://lh3.googleusercontent.com/gps-cs-s/APNQkAGjf7ZRnX5Zi_LcMWrfBXR4jt-Ood3AHFInk63ZafZzv0o_dKdElR0NRLdkgYORMt6zMUVlHYeAIHAsSarovARTsBKE7voRM2fpFapyKL5gDbnZcbUZdhcPxBBz9hWtCCyRWAWC=w141-h101-n-k-no-nu';
    
        const currentUrl = window.location.href.toLowerCase();
        
        // זיהוי דפים ספציפיים
        const isMail = currentUrl.includes('mail.google.com');
        const isChat = currentUrl.includes('chat.google.com');
        const isForum = currentUrl.includes('forum') || currentUrl.includes('mitmachim.top') || currentUrl.includes('tchumim'); 
        const isEditor = currentUrl.includes('dhdgffkkebhmkfjojejmpbldmpobfkfo');
    
        const needsBlackScreen = isMail || isForum || isChat; 
        const needsDisturbance = !isMail && !isChat && !isEditor;
    
        if (window.performance && performance.navigation.type === performance.navigation.TYPE_RELOAD) {
            const lastUnlock = parseInt(sessionStorage.getItem(LAST_UNLOCK_KEY) || '0');
            if (Date.now() - lastUnlock > GRACE_PERIOD) {
                sessionStorage.removeItem(SESSION_KEY);
            }
        }
    
        const getStatus = () => {
            const data = JSON.parse(localStorage.getItem(STORAGE_KEY) || '{}');
            const sessionUnlocked = sessionStorage.getItem(SESSION_KEY) === 'true';
            const now = Date.now();
    
            if (data.expiry && now < data.expiry) {
                if (needsBlackScreen && !sessionUnlocked) return { state: 'LOCKED_REAUTHENTICATE', timeLeft: data.expiry - now };
                return { state: 'UNLOCKED', timeLeft: data.expiry - now };
            }
            if (data.cooldownUntil && now < data.cooldownUntil) return { state: 'COOLDOWN', waitTime: data.cooldownUntil - now };
            return { state: 'LOCKED' };
        };
    
        GM_addStyle(`
            html.blocked-mode > body > *:not(#shteygen-host-overlay):not(#shteygen-timer-host) { display: none !important; }
            html.apply-disturbance::after {
                content: ''; position: fixed; top: 0; left: 0; width: 100vw; height: 100vh;
                background-image: url("${BG_IMAGE_URL}"); background-size: cover; background-position: center;
                opacity: 0.20 !important; z-index: 2147483645; pointer-events: none;
            }
            html.apply-disturbance body::after {
                content: 'לך ללמוד!'; position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%) rotate(-15deg);
                font-size: 18vw; color: rgba(150, 0, 0, 0.15); z-index: 2147483646; pointer-events: none;
                white-space: nowrap; font-weight: bold;
            }
        `);
    
        // חסימת עורך התוסף
        if (isEditor) {
            const checkEditorStatus = () => {
                const unlockTime = localStorage.getItem(EDITOR_UNLOCK_TIME_KEY);
                const now = Date.now();
    
                if (!unlockTime) {
                    showEditorOverlay("הגישה לעריכת הסקריפט חסומה.", true);
                } else if (now < parseInt(unlockTime)) {
                    const remainingMinutes = Math.ceil((parseInt(unlockTime) - now) / 60000);
                    showEditorOverlay(`מנגנון השהיה פעיל.<br>העורך ייפתח בעוד ${remainingMinutes} דקות של המתנה.`, false);
                    setTimeout(checkEditorStatus, 30000);
                } else {
                    const overlay = document.getElementById('hardcore-editor-overlay');
                    if (overlay) overlay.remove();
                    document.documentElement.classList.remove('blocked-mode');
                }
            };
    
            const showEditorOverlay = (msg, showButton) => {
                document.documentElement.classList.add('blocked-mode');
                let overlay = document.getElementById('hardcore-editor-overlay');
                if (!overlay) {
                    overlay = document.createElement('div');
                    overlay.id = 'hardcore-editor-overlay';
                    overlay.style.cssText = 'position: fixed !important; top: 0; left: 0; width: 100vw; height: 100vh; background-color: #000 !important; color: #fff !important; z-index: 2147483647 !important; display: flex; flex-direction: column; align-items: center; justify-content: center; font-size: 25px; font-weight: bold; text-align: center; direction: rtl; font-family: sans-serif; padding: 20px;';
                    document.documentElement.appendChild(overlay);
                }
                overlay.innerHTML = `<div>${msg}</div>`;
                if (showButton) {
                    const btn = document.createElement('button');
                    btn.innerText = "התחל המתנה של שעתיים לעריכה";
                    btn.style.cssText = "margin-top: 20px; padding: 15px 30px; background: #ce0000; color: white; border: none; border-radius: 5px; cursor: pointer; font-size: 18px; font-weight: bold;";
                    btn.onclick = () => {
                        if(confirm("האם אתה בטוח? תצטרך לחכות שעתיים עד שהדף ייפתח.")) {
                            localStorage.setItem(EDITOR_UNLOCK_TIME_KEY, Date.now() + EDITOR_LOCK_DURATION);
                            checkEditorStatus();
                        }
                    };
                    overlay.appendChild(btn);
                }
            };
    
            checkEditorStatus();
            return; 
        }
    
        if (needsDisturbance) document.documentElement.classList.add('apply-disturbance');
    
        const startUnlockProcess = () => {
            const d = new Date();
            if (parseInt(prompt(`כמה זה ${d.getHours()} + ${d.getMinutes()}?`)) !== (d.getHours() + d.getMinutes())) return;
            
            const word = ["התמדה", "לימוד", "ריכוז"][Math.floor(Math.random() * 3)];
            if (prompt(`הקלד '${word}' מהסוף להתחלה:`) !== word.split('').reverse().join('')) return;
    
            if (prompt("הקלד: 'אישור כניסה קצרה'") === "אישור כניסה קצרה") {
                const now = Date.now();
                const data = JSON.parse(localStorage.getItem(STORAGE_KEY) || '{}');
                if (!data.expiry || now > data.expiry) {
                    localStorage.setItem(STORAGE_KEY, JSON.stringify({
                        expiry: now + ACCESS_DURATION,
                        cooldownUntil: now + ACCESS_DURATION + COOLDOWN_DURATION
                    }));
                }
                sessionStorage.setItem(SESSION_KEY, 'true');
                sessionStorage.setItem(LAST_UNLOCK_KEY, now.toString());
                location.reload();
            }
        };
    
        const renderShadowOverlay = (status) => {
            document.documentElement.classList.add('blocked-mode');
            let host = document.getElementById('shteygen-host-overlay');
            
            if (!host) {
                host = document.createElement('div');
                host.id = 'shteygen-host-overlay';
                host.style.cssText = 'position: fixed !important; top: 0 !important; left: 0 !important; width: 100vw !important; height: 100vh !important; z-index: 2147483647 !important;';
                document.documentElement.appendChild(host);
                
                const shadow = host.attachShadow({mode: 'open'});
                const container = document.createElement('div');
                container.id = 'shadow-content';
                shadow.appendChild(container);
            }
    
            const shadow = host.shadowRoot;
            const container = shadow.getElementById('shadow-content');
            
            container.style.cssText = 'position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #000; display: flex; flex-direction: column; align-items: center; justify-content: center; font-family: sans-serif; direction: rtl; color: white;';
    
            if (status.state === 'COOLDOWN') {
                const minLeft = Math.ceil(status.waitTime / 60000);
                container.innerHTML = `<div style="text-align: center;"><span style="font-size: 30px; font-weight: bold;">תם הזמן.</span><br><br><span style="font-size: 22px; color: #ff4444; font-weight: bold;">נא לחזור ללימודים.<br>הגישה תתאפשר בעוד ${minLeft} דקות.</span></div>`;
            } else {
                container.innerHTML = `<div style="text-align: center;"><span style="font-size: 30px; font-weight: bold;">עצור.</span><br><br><span style="font-size: 22px; color: #888888; font-weight: bold;">האם זה הכרחי עכשיו?</span></div>`;
                
                const btn = document.createElement('button');
                btn.innerText = '⚙️';
                // הכפתור חזר להיות כמעט בלתי נראה לחלוטין (שקוף)
                btn.style.cssText = 'position: absolute; bottom: 15px; left: 15px; background: transparent; border: none; color: rgba(255, 255, 255, 0.05); cursor: pointer; font-size: 20px; padding: 0; margin: 0; outline: none;';
                btn.onclick = startUnlockProcess;
                container.appendChild(btn);
            }
        };
    
        const renderShadowTimer = (timeLeft) => {
            let host = document.getElementById('shteygen-timer-host');
            if (!host) {
                host = document.createElement('div');
                host.id = 'shteygen-timer-host';
                host.style.cssText = 'position: fixed !important; top: 15px !important; right: 15px !important; z-index: 2147483647 !important; pointer-events: none !important;';
                document.documentElement.appendChild(host);
    
                const shadow = host.attachShadow({mode: 'open'});
                
                const style = document.createElement('style');
                style.textContent = `@keyframes urgentBlink { 0% { opacity: 1; } 50% { opacity: 0.5; } 100% { opacity: 1; } }`;
                shadow.appendChild(style);
    
                const timerDiv = document.createElement('div');
                timerDiv.id = 'timer-content';
                shadow.appendChild(timerDiv);
            }
    
            const shadow = host.shadowRoot;
            const timerDiv = shadow.getElementById('timer-content');
    
            const mins = Math.floor(timeLeft / 60000);
            const secs = Math.floor((timeLeft % 60000) / 1000);
            const timeString = `${mins}:${secs.toString().padStart(2, '0')}`;
    
            let bgColor = '#2ecc71';
            let animation = 'none';
    
            if (timeLeft <= 30 * 1000) {
                bgColor = '#e74c3c'; 
                animation = 'urgentBlink 1s infinite';
            } else if (timeLeft <= 90 * 1000) {
                bgColor = '#f39c12'; 
            }
    
            timerDiv.style.cssText = `background-color: ${bgColor}; color: #fff; padding: 10px 20px; font-size: 24px; font-weight: bold; font-family: monospace; border-radius: 8px; box-shadow: 0 4px 6px rgba(0,0,0,0.3); border: 2px solid rgba(255,255,255,0.5); direction: ltr; animation: ${animation};`;
            timerDiv.innerText = timeString;
        };
    
        if (needsBlackScreen) {
            setInterval(() => {
                const status = getStatus();
                
                if (status.state === 'UNLOCKED') {
                    document.documentElement.classList.remove('blocked-mode');
                    const overlayHost = document.getElementById('shteygen-host-overlay');
                    if (overlayHost) overlayHost.remove();
                    
                    renderShadowTimer(status.timeLeft);
                    
                    if (status.timeLeft <= 0) location.reload();
                    
                } else {
                    const timerHost = document.getElementById('shteygen-timer-host');
                    if (timerHost) timerHost.remove();
                    
                    renderShadowOverlay(status);
                }
            }, 500);
        }
    })();
    

    סיכום על התוסף מ ai

    הכירו את ה-Ultimate Focus Script: המערכת שתכריח אתכם ללמוד
    הסקריפט הזה נולד מתוך צורך אמיתי: להפסיק לבזבז זמן. הוא מיועד לאנשים שרוצים שהמחשב שלהם יהפוך מכלי של הסחת דעת לכלי של עבודה ולימוד בלבד. הוא לא מבקש מכם יפה – הוא פשוט לא משאיר לכם ברירה.

    1. הקונספט המרכזי: חוק ה-5/60
      הסקריפט פועל לפי לוגיקה פשוטה וחסרת רחמים:

    5 דקות של חסד: פעם בשעה, ניתן לפתוח גישה לאתרים "רגישים" (מייל, צ'אט, פורומים) למשך 5 דקות בלבד.

    60 דקות של נעילה: ברגע שהחמש דקות נגמרו, האתרים הללו ננעלים הרמטית למשך שעה שלמה. אין כפתור "ביטול", ואין אפשרות להיכנס שוב עד שהשעון מסיים לספור.

    1. מחסום הכניסה: "המבוך הקוגניטיבי"
      כדי לפתוח את אותן 5 דקות, אתם צריכים להוכיח ריכוז. הסקריפט מציג מסך שחור אטום עם משימות משתנות (רנדומליות):

    תרגיל חשבון: חישובים דינמיים (למשל: השעה הנוכחית + הדקות כפול 2).

    אתגר מילולי: הקלדת מילים מהסוף להתחלה (כדי לוודא שהמוח שלכם עובד).

    התחייבות: הקלדת משפט הצהרה ("אני נכנס רק לזמן קצר").

    מנגנון רענון: אם תנסו לרענן את הדף כדי "לברוח" מהמסך השחור – הוא יופיע שוב וידרוש את המשימות מחדש.

    1. ההפרעה הויזואלית (Visual Disturbance)
      בכל שאר האתרים ברשת (אלו שלא נחסמים ב-5/60 כמו גימיני או אתרי חיפוש), הסקריפט יוצר אווירה של עבודה:

    תמונה ברורה ברקע: רקע של סביבת לימוד רצינית שמונח מעל האתר בשקיפות מסוימת.

    טקסט מעורר: הכיתוב "לך ללמוד!" מופיע בגודל ענק על כל המסך.

    מטרה: להזכיר לכם בכל שנייה שאתם לא שם בשביל הכיף, אלא בשביל מטרה ספציפית.

    1. החרגת המייל (היעילות קודמת לכל)
      כדי לא לפגוע בעבודה השוטפת, בתוך ה-5 דקות של המייל, הרקע והכיתוב המפריע נעלמים. המטרה היא לתת לכם 5 דקות של עבודה נקייה ומהירה, ומיד אחרי זה – חזרה ללימודים.

    2. ההגנה מפני עקיפה (Anti-Cheat)
      כאן נמצא ה"קאץ'" האמיתי. מה ימנע מכם פשוט לכבות את התוסף או לערוך את הקוד?

    נעילת עורך הסקריפטים: אם תנסו להיכנס לדף העריכה של הסקריפט כדי לשנות את הזמנים או למחוק אותו, תיתקלו במסך שחור.

    המתנה של שעתיים: כדי לגשת לקוד העריכה, תצטרכו ללחוץ על כפתור שמפעיל ספירה לאחור של 120 דקות. רק אחרי שעתיים של המתנה אקטיבית, הקוד ייפתח לעריכה.

    סיכום טכני:
    שפת תכנות: JavaScript (Tampermonkey).

    אתרים כלולים: מייל, צ'אט, פורומים ספציפיים (כולל מתמחים טופ).

    זמנים: 5 דקות עבודה / 60 דקות צינון / שעתיים נעילת עריכה.

    סיכום בקצרה על התוסף מ ai

    הסקריפט שינצח את הסחות הדעת: סיכום בחמש נקודות
    חוק ה-5/60: גישה מוגבלת ל-5 דקות בלבד למייל ולפורומים, ולאחריהן חסימה מוחלטת ל-60 דקות (ללא יוצא מן הכלל).

    מבחני ריכוז בכניסה: כדי לפתוח את הגישה, עליכם לעבור אתגרים משתנים של חשבון, הגיון והקלדה.

    הפרעה חזותית קבועה: בכל שאר האתרים מופיע רקע של בית מדרש עם הכיתוב "לך ללמוד!" בגודל ענק, כדי להזכיר לכם מה העיקר.

    מנגנון "אנטי-רמאות": הסקריפט מזהה ריענוני דף (F5) ונועל אתכם מחדש, מה שמכריח אתכם להישאר מרוכזים בתוך ה-5 דקות.

    חסימת עריכה: ניסיון לשנות את הקוד או לכבות אותו דורש המתנה אקטיבית של שעתיים לפני שהגישה לעריכה נפתחת.

    בשורה התחתונה: זה לא "תוסף חסימה", זו מערכת שלמה שכופה עליכם משמעת עצמית ברזל.

    תמונות בספוילר

    e4a20287-d027-4bd7-b576-46df30470e03-image.png 86194ef3-a77a-4f2b-9833-4d0d957fa75f-image.png 512bfc88-ebe7-45a2-8990-cd5807c80ed4-image.png
    אם אתם רוצים להמשיך תלחצו כאן 758fc74d-d7d7-41bd-b64c-c68eab0ab2dc-image.png 2f1a7c2d-7533-45e0-b888-bb6411cc0ea6-image.png 9fafe697-a1a6-44c5-8659-598640eaae05-image.png

    בהצלחה!!
    זמן פורה ומוצלח!!

    אם אתם רוצים שאני יערוך לכם משהו בכ"א תכתבו

    וכן אשמח לשמוע אם יש עניין להפוך את זה לתוסף כרום...

    טוב אני זזתי לישיבה כדי לא לאבד את האפקט... תעשו אם זה מה שאתם רוצים מי שרוצה לשפר את זה או לא יודע מה אין לי שום בעיה! העיקר שאצלי הדפדפן מגביל...

    עזרה הדדית - מחשבים וטכנולוגיה

  • בקשה | ווייז עם חתימה של גוגל תמונות
    ר ר יעקב עייפים

    @חיים100 אם הוא חסום איך תוכל להתקין את האפליקציה?
    בכ"א תוכל לעשות עם התוכנה הזו https://github.com/kefir500/apk-editor-studio

    עזרה הדדית אפליקציות

  • בקשה | באג בנגני האנדרואיד שתמיד גם כשמצב מפתחים כבוי המכשיר מתחבר רגיל לadb
    ר ר יעקב עייפים

    אמרו לי שזה קשור ל services.jar.
    ראיתי בתוכו בנתיב

    com/android/server/adb/AdbDebuggingManager.smali
    

    את הקוד הבא:

    .class public Lcom/android/server/adb/AdbDebuggingManager;
    .super Ljava/lang/Object;
    .source "AdbDebuggingManager.java"
     
     
    # annotations
    .annotation system Ldalvik/annotation/MemberClasses;
        value = {
            Lcom/android/server/adb/AdbDebuggingManager$Ticker;,
            Lcom/android/server/adb/AdbDebuggingManager$AdbKeyStore;,
            Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;,
            Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;,
            Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;,
            Lcom/android/server/adb/AdbDebuggingManager$PortListenerImpl;,
            Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionPortPoller;,
            Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionPortListener;,
            Lcom/android/server/adb/AdbDebuggingManager$PairingThread;
        }
    .end annotation
     
     
    # static fields
    .field private static final ADBD_SOCKET:Ljava/lang/String; = "adbd"
     
    .field private static final ADB_DIRECTORY:Ljava/lang/String; = "misc/adb"
     
    .field private static final ADB_KEYS_FILE:Ljava/lang/String; = "adb_keys"
     
    .field private static final ADB_TEMP_KEYS_FILE:Ljava/lang/String; = "adb_temp_keys.xml"
     
    .field private static final BUFFER_SIZE:I = 0x10000
     
    .field private static final DEBUG:Z = false
     
    .field private static final MDNS_DEBUG:Z = false
     
    .field private static final PAIRING_CODE_LENGTH:I = 0x6
     
    .field private static final SYSTEM_TICKER:Lcom/android/server/adb/AdbDebuggingManager$Ticker;
     
    .field private static final TAG:Ljava/lang/String;
     
    .field private static final WIFI_PERSISTENT_CONFIG_PROPERTY:Ljava/lang/String; = "persist.adb.tls_server.enable"
     
    .field private static final WIFI_PERSISTENT_GUID:Ljava/lang/String; = "persist.adb.wifi.guid"
     
     
    # instance fields
    .field private mAdbConnectionInfo:Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
     
    .field private mAdbUsbEnabled:Z
     
    .field private mAdbWifiEnabled:Z
     
    .field private final mConfirmComponent:Ljava/lang/String;
     
    .field private final mConnectedKeys:Ljava/util/Map;
        .annotation system Ldalvik/annotation/Signature;
            value = {
                "Ljava/util/Map<",
                "Ljava/lang/String;",
                "Ljava/lang/Integer;",
                ">;"
            }
        .end annotation
    .end field
     
    .field private mConnectionPortPoller:Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionPortPoller;
     
    .field private final mContentResolver:Landroid/content/ContentResolver;
     
    .field private final mContext:Landroid/content/Context;
     
    .field private mFingerprints:Ljava/lang/String;
     
    .field final mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
     
    .field private mPairingThread:Lcom/android/server/adb/AdbDebuggingManager$PairingThread;
     
    .field private final mPortListener:Lcom/android/server/adb/AdbDebuggingManager$PortListenerImpl;
     
    .field private final mTempKeysFile:Ljava/io/File;
     
    .field private mThread:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;
     
    .field private final mTicker:Lcom/android/server/adb/AdbDebuggingManager$Ticker;
     
    .field private final mUserKeyFile:Ljava/io/File;
     
    .field private final mWifiConnectedKeys:Ljava/util/Set;
        .annotation system Ldalvik/annotation/Signature;
            value = {
                "Ljava/util/Set<",
                "Ljava/lang/String;",
                ">;"
            }
        .end annotation
    .end field
     
     
    # direct methods
    .method static bridge synthetic -$$Nest$fgetmAdbConnectionInfo(Lcom/android/server/adb/AdbDebuggingManager;)Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
        .registers 1
     
        iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbConnectionInfo:Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
     
        return-object p0
    .end method
     
    .method static bridge synthetic -$$Nest$fgetmAdbUsbEnabled(Lcom/android/server/adb/AdbDebuggingManager;)Z
        .registers 1
     
        iget-boolean p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbUsbEnabled:Z
     
        return p0
    .end method
     
    .method static bridge synthetic -$$Nest$fgetmAdbWifiEnabled(Lcom/android/server/adb/AdbDebuggingManager;)Z
        .registers 1
     
        iget-boolean p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbWifiEnabled:Z
     
        return p0
    .end method
     
    .method static bridge synthetic -$$Nest$fgetmConnectedKeys(Lcom/android/server/adb/AdbDebuggingManager;)Ljava/util/Map;
        .registers 1
     
        iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mConnectedKeys:Ljava/util/Map;
     
        return-object p0
    .end method
     
    .method static bridge synthetic -$$Nest$fgetmConnectionPortPoller(Lcom/android/server/adb/AdbDebuggingManager;)Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionPortPoller;
        .registers 1
     
        iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mConnectionPortPoller:Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionPortPoller;
     
        return-object p0
    .end method
     
    .method static bridge synthetic -$$Nest$fgetmContentResolver(Lcom/android/server/adb/AdbDebuggingManager;)Landroid/content/ContentResolver;
        .registers 1
     
        iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mContentResolver:Landroid/content/ContentResolver;
     
        return-object p0
    .end method
     
    .method static bridge synthetic -$$Nest$fgetmContext(Lcom/android/server/adb/AdbDebuggingManager;)Landroid/content/Context;
        .registers 1
     
        iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mContext:Landroid/content/Context;
     
        return-object p0
    .end method
     
    .method static bridge synthetic -$$Nest$fgetmFingerprints(Lcom/android/server/adb/AdbDebuggingManager;)Ljava/lang/String;
        .registers 1
     
        iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mFingerprints:Ljava/lang/String;
     
        return-object p0
    .end method
     
    .method static bridge synthetic -$$Nest$fgetmPairingThread(Lcom/android/server/adb/AdbDebuggingManager;)Lcom/android/server/adb/AdbDebuggingManager$PairingThread;
        .registers 1
     
        iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mPairingThread:Lcom/android/server/adb/AdbDebuggingManager$PairingThread;
     
        return-object p0
    .end method
     
    .method static bridge synthetic -$$Nest$fgetmPortListener(Lcom/android/server/adb/AdbDebuggingManager;)Lcom/android/server/adb/AdbDebuggingManager$PortListenerImpl;
        .registers 1
     
        iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mPortListener:Lcom/android/server/adb/AdbDebuggingManager$PortListenerImpl;
     
        return-object p0
    .end method
     
    .method static bridge synthetic -$$Nest$fgetmTempKeysFile(Lcom/android/server/adb/AdbDebuggingManager;)Ljava/io/File;
        .registers 1
     
        iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mTempKeysFile:Ljava/io/File;
     
        return-object p0
    .end method
     
    .method static bridge synthetic -$$Nest$fgetmThread(Lcom/android/server/adb/AdbDebuggingManager;)Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;
        .registers 1
     
        iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mThread:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;
     
        return-object p0
    .end method
     
    .method static bridge synthetic -$$Nest$fgetmTicker(Lcom/android/server/adb/AdbDebuggingManager;)Lcom/android/server/adb/AdbDebuggingManager$Ticker;
        .registers 1
     
        iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mTicker:Lcom/android/server/adb/AdbDebuggingManager$Ticker;
     
        return-object p0
    .end method
     
    .method static bridge synthetic -$$Nest$fgetmUserKeyFile(Lcom/android/server/adb/AdbDebuggingManager;)Ljava/io/File;
        .registers 1
     
        iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mUserKeyFile:Ljava/io/File;
     
        return-object p0
    .end method
     
    .method static bridge synthetic -$$Nest$fgetmWifiConnectedKeys(Lcom/android/server/adb/AdbDebuggingManager;)Ljava/util/Set;
        .registers 1
     
        iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mWifiConnectedKeys:Ljava/util/Set;
     
        return-object p0
    .end method
     
    .method static bridge synthetic -$$Nest$fputmAdbUsbEnabled(Lcom/android/server/adb/AdbDebuggingManager;Z)V
        .registers 2
     
        iput-boolean p1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbUsbEnabled:Z
     
        return-void
    .end method
     
    .method static bridge synthetic -$$Nest$fputmAdbWifiEnabled(Lcom/android/server/adb/AdbDebuggingManager;Z)V
        .registers 2
     
        iput-boolean p1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbWifiEnabled:Z
     
        return-void
    .end method
     
    .method static bridge synthetic -$$Nest$fputmConnectionPortPoller(Lcom/android/server/adb/AdbDebuggingManager;Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionPortPoller;)V
        .registers 2
     
        iput-object p1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mConnectionPortPoller:Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionPortPoller;
     
        return-void
    .end method
     
    .method static bridge synthetic -$$Nest$fputmFingerprints(Lcom/android/server/adb/AdbDebuggingManager;Ljava/lang/String;)V
        .registers 2
     
        iput-object p1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mFingerprints:Ljava/lang/String;
     
        return-void
    .end method
     
    .method static bridge synthetic -$$Nest$fputmPairingThread(Lcom/android/server/adb/AdbDebuggingManager;Lcom/android/server/adb/AdbDebuggingManager$PairingThread;)V
        .registers 2
     
        iput-object p1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mPairingThread:Lcom/android/server/adb/AdbDebuggingManager$PairingThread;
     
        return-void
    .end method
     
    .method static bridge synthetic -$$Nest$fputmThread(Lcom/android/server/adb/AdbDebuggingManager;Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;)V
        .registers 2
     
        iput-object p1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mThread:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;
     
        return-void
    .end method
     
    .method static bridge synthetic -$$Nest$mgetFingerprints(Lcom/android/server/adb/AdbDebuggingManager;Ljava/lang/String;)Ljava/lang/String;
        .registers 2
     
        invoke-direct {p0, p1}, Lcom/android/server/adb/AdbDebuggingManager;->getFingerprints(Ljava/lang/String;)Ljava/lang/String;
     
        move-result-object p0
     
        return-object p0
    .end method
     
    .method static bridge synthetic -$$Nest$msendPersistKeyStoreMessage(Lcom/android/server/adb/AdbDebuggingManager;)V
        .registers 1
     
        invoke-direct {p0}, Lcom/android/server/adb/AdbDebuggingManager;->sendPersistKeyStoreMessage()V
     
        return-void
    .end method
     
    .method static bridge synthetic -$$Nest$msetAdbConnectionInfo(Lcom/android/server/adb/AdbDebuggingManager;Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;)V
        .registers 2
     
        invoke-direct {p0, p1}, Lcom/android/server/adb/AdbDebuggingManager;->setAdbConnectionInfo(Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;)V
     
        return-void
    .end method
     
    .method static bridge synthetic -$$Nest$mstartConfirmationForKey(Lcom/android/server/adb/AdbDebuggingManager;Ljava/lang/String;Ljava/lang/String;)V
        .registers 3
     
        invoke-direct {p0, p1, p2}, Lcom/android/server/adb/AdbDebuggingManager;->startConfirmationForKey(Ljava/lang/String;Ljava/lang/String;)V
     
        return-void
    .end method
     
    .method static bridge synthetic -$$Nest$mstartConfirmationForNetwork(Lcom/android/server/adb/AdbDebuggingManager;Ljava/lang/String;Ljava/lang/String;)V
        .registers 3
     
        invoke-direct {p0, p1, p2}, Lcom/android/server/adb/AdbDebuggingManager;->startConfirmationForNetwork(Ljava/lang/String;Ljava/lang/String;)V
     
        return-void
    .end method
     
    .method static bridge synthetic -$$Nest$mwriteKeys(Lcom/android/server/adb/AdbDebuggingManager;Ljava/lang/Iterable;)V
        .registers 2
     
        invoke-direct {p0, p1}, Lcom/android/server/adb/AdbDebuggingManager;->writeKeys(Ljava/lang/Iterable;)V
     
        return-void
    .end method
     
    .method static bridge synthetic -$$Nest$sfgetTAG()Ljava/lang/String;
        .registers 1
     
        sget-object v0, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
     
        return-object v0
    .end method
     
    .method static constructor <clinit>()V
        .registers 1
     
        .line 124
        const-class v0, Lcom/android/server/adb/AdbDebuggingManager;
     
        invoke-virtual {v0}, Ljava/lang/Class;->getSimpleName()Ljava/lang/String;
     
        move-result-object v0
     
        sput-object v0, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
     
        .line 136
        new-instance v0, Lcom/android/server/adb/AdbDebuggingManager$$ExternalSyntheticLambda0;
     
        invoke-direct {v0}, Lcom/android/server/adb/AdbDebuggingManager$$ExternalSyntheticLambda0;-><init>()V
     
        sput-object v0, Lcom/android/server/adb/AdbDebuggingManager;->SYSTEM_TICKER:Lcom/android/server/adb/AdbDebuggingManager$Ticker;
     
        return-void
    .end method
     
    .method public constructor <init>(Landroid/content/Context;)V
        .registers 10
        .param p1, "context"    # Landroid/content/Context;
     
        .line 167
        nop
    
        .line 170
        const-string v0, "adb_keys"
     
        invoke-static {v0}, Lcom/android/server/adb/AdbDebuggingManager;->getAdbFile(Ljava/lang/String;)Ljava/io/File;
     
        move-result-object v4
     
        .line 171
        const-string v0, "adb_temp_keys.xml"
     
        invoke-static {v0}, Lcom/android/server/adb/AdbDebuggingManager;->getAdbFile(Ljava/lang/String;)Ljava/io/File;
     
        move-result-object v5
     
        sget-object v7, Lcom/android/server/adb/AdbDebuggingManager;->SYSTEM_TICKER:Lcom/android/server/adb/AdbDebuggingManager$Ticker;
     
        .line 167
        const/4 v3, 0x0
     
        const/4 v6, 0x0
     
        move-object v1, p0
     
        move-object v2, p1
     
        invoke-direct/range {v1 .. v7}, Lcom/android/server/adb/AdbDebuggingManager;-><init>(Landroid/content/Context;Ljava/lang/String;Ljava/io/File;Ljava/io/File;Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;Lcom/android/server/adb/AdbDebuggingManager$Ticker;)V
     
        .line 174
        return-void
    .end method
     
    .method constructor <init>(Landroid/content/Context;Ljava/lang/String;Ljava/io/File;Ljava/io/File;Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;Lcom/android/server/adb/AdbDebuggingManager$Ticker;)V
        .registers 10
        .param p1, "context"    # Landroid/content/Context;
        .param p2, "confirmComponent"    # Ljava/lang/String;
        .param p3, "testUserKeyFile"    # Ljava/io/File;
        .param p4, "tempKeysFile"    # Ljava/io/File;
        .param p5, "adbDebuggingThread"    # Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;
        .param p6, "ticker"    # Lcom/android/server/adb/AdbDebuggingManager$Ticker;
     
        .line 187
        invoke-direct {p0}, Ljava/lang/Object;-><init>()V
     
        .line 142
        const/4 v0, 0x0
     
        iput-boolean v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbUsbEnabled:Z
     
        .line 143
        iput-boolean v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbWifiEnabled:Z
     
        .line 146
        new-instance v0, Ljava/util/HashMap;
     
        invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
     
        iput-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mConnectedKeys:Ljava/util/Map;
     
        .line 156
        const/4 v0, 0x0
     
        iput-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mPairingThread:Lcom/android/server/adb/AdbDebuggingManager$PairingThread;
     
        .line 158
        new-instance v0, Ljava/util/HashSet;
     
        invoke-direct {v0}, Ljava/util/HashSet;-><init>()V
     
        iput-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mWifiConnectedKeys:Ljava/util/Set;
     
        .line 160
        new-instance v0, Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
     
        invoke-direct {v0}, Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;-><init>()V
     
        iput-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbConnectionInfo:Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
     
        .line 163
        new-instance v0, Lcom/android/server/adb/AdbDebuggingManager$PortListenerImpl;
     
        invoke-direct {v0, p0}, Lcom/android/server/adb/AdbDebuggingManager$PortListenerImpl;-><init>(Lcom/android/server/adb/AdbDebuggingManager;)V
     
        iput-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mPortListener:Lcom/android/server/adb/AdbDebuggingManager$PortListenerImpl;
     
        .line 188
        iput-object p1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mContext:Landroid/content/Context;
     
        .line 189
        invoke-virtual {p1}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
     
        move-result-object v0
     
        iput-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mContentResolver:Landroid/content/ContentResolver;
     
        .line 190
        iput-object p2, p0, Lcom/android/server/adb/AdbDebuggingManager;->mConfirmComponent:Ljava/lang/String;
     
        .line 191
        iput-object p3, p0, Lcom/android/server/adb/AdbDebuggingManager;->mUserKeyFile:Ljava/io/File;
     
        .line 192
        iput-object p4, p0, Lcom/android/server/adb/AdbDebuggingManager;->mTempKeysFile:Ljava/io/File;
     
        .line 193
        iput-object p5, p0, Lcom/android/server/adb/AdbDebuggingManager;->mThread:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;
     
        .line 194
        iput-object p6, p0, Lcom/android/server/adb/AdbDebuggingManager;->mTicker:Lcom/android/server/adb/AdbDebuggingManager$Ticker;
     
        .line 195
        new-instance v0, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
     
        invoke-static {}, Lcom/android/server/FgThread;->get()Lcom/android/server/FgThread;
     
        move-result-object v1
     
        invoke-virtual {v1}, Lcom/android/server/FgThread;->getLooper()Landroid/os/Looper;
     
        move-result-object v1
     
        iget-object v2, p0, Lcom/android/server/adb/AdbDebuggingManager;->mThread:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;
     
        invoke-direct {v0, p0, v1, v2}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;-><init>(Lcom/android/server/adb/AdbDebuggingManager;Landroid/os/Looper;Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;)V
     
        iput-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
     
        .line 196
        return-void
    .end method
     
    .method private createConfirmationIntent(Landroid/content/ComponentName;Ljava/util/List;)Landroid/content/Intent;
        .registers 8
        .param p1, "componentName"    # Landroid/content/ComponentName;
        .annotation system Ldalvik/annotation/Signature;
            value = {
                "(",
                "Landroid/content/ComponentName;",
                "Ljava/util/List<",
                "Ljava/util/Map$Entry<",
                "Ljava/lang/String;",
                "Ljava/lang/String;",
                ">;>;)",
                "Landroid/content/Intent;"
            }
        .end annotation
     
        .line 1563
        .local p2, "extras":Ljava/util/List;, "Ljava/util/List<Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;>;"
        new-instance v0, Landroid/content/Intent;
     
        invoke-direct {v0}, Landroid/content/Intent;-><init>()V
     
        .line 1564
        .local v0, "intent":Landroid/content/Intent;
        invoke-virtual {p1}, Landroid/content/ComponentName;->getPackageName()Ljava/lang/String;
     
        move-result-object v1
     
        invoke-virtual {p1}, Landroid/content/ComponentName;->getClassName()Ljava/lang/String;
     
        move-result-object v2
     
        invoke-virtual {v0, v1, v2}, Landroid/content/Intent;->setClassName(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
     
        .line 1565
        invoke-interface {p2}, Ljava/util/List;->iterator()Ljava/util/Iterator;
     
        move-result-object v1
     
        :goto_14
        invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
     
        move-result v2
     
        if-eqz v2, :cond_30
     
        invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
     
        move-result-object v2
     
        check-cast v2, Ljava/util/Map$Entry;
     
        .line 1566
        .local v2, "entry":Ljava/util/Map$Entry;, "Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;"
        invoke-interface {v2}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object;
     
        move-result-object v3
     
        check-cast v3, Ljava/lang/String;
     
        invoke-interface {v2}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
     
        move-result-object v4
     
        check-cast v4, Ljava/lang/String;
     
        invoke-virtual {v0, v3, v4}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
     
        .line 1567
        .end local v2    # "entry":Ljava/util/Map$Entry;, "Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;"
        goto :goto_14
     
        .line 1568
        :cond_30
        return-object v0
    .end method
     
    .method private getAdbConnectionInfo()Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
        .registers 4
     
        .line 626
        iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbConnectionInfo:Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
     
        monitor-enter v0
     
        .line 627
        :try_start_3
        new-instance v1, Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
     
        iget-object v2, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbConnectionInfo:Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
     
        invoke-direct {v1, v2}, Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;-><init>(Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;)V
     
        monitor-exit v0
     
        return-object v1
     
        .line 628
        :catchall_c
        move-exception v1
     
        monitor-exit v0
        :try_end_e
        .catchall {:try_start_3 .. :try_end_e} :catchall_c
     
        throw v1
    .end method
     
    .method private static getAdbFile(Ljava/lang/String;)Ljava/io/File;
        .registers 5
        .param p0, "fileName"    # Ljava/lang/String;
     
        .line 1575
        invoke-static {}, Landroid/os/Environment;->getDataDirectory()Ljava/io/File;
     
        move-result-object v0
     
        .line 1576
        .local v0, "dataDir":Ljava/io/File;
        new-instance v1, Ljava/io/File;
     
        const-string/jumbo v2, "misc/adb"
     
        invoke-direct {v1, v0, v2}, Ljava/io/File;-><init>(Ljava/io/File;Ljava/lang/String;)V
     
        .line 1578
        .local v1, "adbDir":Ljava/io/File;
        invoke-virtual {v1}, Ljava/io/File;->exists()Z
     
        move-result v2
     
        if-nez v2, :cond_1b
     
        .line 1579
        sget-object v2, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
     
        const-string v3, "ADB data directory does not exist"
     
        invoke-static {v2, v3}, Landroid/util/Slog;->e(Ljava/lang/String;Ljava/lang/String;)I
     
        .line 1580
        const/4 v2, 0x0
     
        return-object v2
     
        .line 1583
        :cond_1b
        new-instance v2, Ljava/io/File;
     
        invoke-direct {v2, v1, p0}, Ljava/io/File;-><init>(Ljava/io/File;Ljava/lang/String;)V
     
        return-object v2
    .end method
     
    .method private getFingerprints(Ljava/lang/String;)Ljava/lang/String;
        .registers 10
        .param p1, "key"    # Ljava/lang/String;
     
        .line 1448
        const-string v0, "0123456789ABCDEF"
     
        .line 1449
        .local v0, "hex":Ljava/lang/String;
        new-instance v1, Ljava/lang/StringBuilder;
     
        invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
     
        .line 1452
        .local v1, "sb":Ljava/lang/StringBuilder;
        const-string v2, ""
     
        if-nez p1, :cond_c
     
        .line 1453
        return-object v2
     
        .line 1457
        :cond_c
        :try_start_c
        const-string v3, "MD5"
     
        invoke-static {v3}, Ljava/security/MessageDigest;->getInstance(Ljava/lang/String;)Ljava/security/MessageDigest;
     
        move-result-object v3
        :try_end_12
        .catch Ljava/lang/Exception; {:try_start_c .. :try_end_12} :catch_60
     
        .line 1461
        .local v3, "digester":Ljava/security/MessageDigest;
        nop
    
        .line 1463
        const-string v4, "\\s+"
     
        invoke-virtual {p1, v4}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String;
     
        move-result-object v4
     
        const/4 v5, 0x0
     
        aget-object v4, v4, v5
     
        invoke-virtual {v4}, Ljava/lang/String;->getBytes()[B
     
        move-result-object v4
     
        .line 1466
        .local v4, "base64_data":[B
        :try_start_20
        invoke-static {v4, v5}, Landroid/util/Base64;->decode([BI)[B
     
        move-result-object v5
     
        invoke-virtual {v3, v5}, Ljava/security/MessageDigest;->digest([B)[B
     
        move-result-object v2
        :try_end_28
        .catch Ljava/lang/IllegalArgumentException; {:try_start_20 .. :try_end_28} :catch_57
     
        .line 1470
        .local v2, "digest":[B
        nop
    
        .line 1471
        const/4 v5, 0x0
     
        .local v5, "i":I
        :goto_2a
        array-length v6, v2
     
        if-ge v5, v6, :cond_52
     
        .line 1472
        aget-byte v6, v2, v5
     
        shr-int/lit8 v6, v6, 0x4
     
        and-int/lit8 v6, v6, 0xf
     
        invoke-virtual {v0, v6}, Ljava/lang/String;->charAt(I)C
     
        move-result v6
     
        invoke-virtual {v1, v6}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
     
        .line 1473
        aget-byte v6, v2, v5
     
        and-int/lit8 v6, v6, 0xf
     
        invoke-virtual {v0, v6}, Ljava/lang/String;->charAt(I)C
     
        move-result v6
     
        invoke-virtual {v1, v6}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
     
        .line 1474
        array-length v6, v2
     
        add-int/lit8 v6, v6, -0x1
     
        if-ge v5, v6, :cond_4f
     
        .line 1475
        const-string v6, ":"
     
        invoke-virtual {v1, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
     
        .line 1471
        :cond_4f
        add-int/lit8 v5, v5, 0x1
     
        goto :goto_2a
     
        .line 1478
        .end local v5    # "i":I
        :cond_52
        invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
     
        move-result-object v5
     
        return-object v5
     
        .line 1467
        .end local v2    # "digest":[B
        :catch_57
        move-exception v5
     
        .line 1468
        .local v5, "e":Ljava/lang/IllegalArgumentException;
        sget-object v6, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
     
        const-string v7, "error doing base64 decoding"
     
        invoke-static {v6, v7, v5}, Landroid/util/Slog;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
     
        .line 1469
        return-object v2
     
        .line 1458
        .end local v3    # "digester":Ljava/security/MessageDigest;
        .end local v4    # "base64_data":[B
        .end local v5    # "e":Ljava/lang/IllegalArgumentException;
        :catch_60
        move-exception v3
     
        .line 1459
        .local v3, "ex":Ljava/lang/Exception;
        sget-object v4, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
     
        const-string v5, "Error getting digester"
     
        invoke-static {v4, v5, v3}, Landroid/util/Slog;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
     
        .line 1460
        return-object v2
    .end method
     
    .method static synthetic lambda$static$0()J
        .registers 2
     
        .line 136
        invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
     
        move-result-wide v0
     
        return-wide v0
    .end method
     
    .method static sendBroadcastWithDebugPermission(Landroid/content/Context;Landroid/content/Intent;Landroid/os/UserHandle;)V
        .registers 4
        .param p0, "context"    # Landroid/content/Context;
        .param p1, "intent"    # Landroid/content/Intent;
        .param p2, "userHandle"    # Landroid/os/UserHandle;
     
        .line 200
        const-string v0, "android.permission.MANAGE_DEBUGGING"
     
        invoke-virtual {p0, p1, p2, v0}, Landroid/content/Context;->sendBroadcastAsUser(Landroid/content/Intent;Landroid/os/UserHandle;Ljava/lang/String;)V
     
        .line 202
        return-void
    .end method
     
    .method private sendPersistKeyStoreMessage()V
        .registers 3
     
        .line 1758
        iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
     
        const/16 v1, 0x8
     
        invoke-virtual {v0, v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->obtainMessage(I)Landroid/os/Message;
     
        move-result-object v0
     
        .line 1759
        .local v0, "msg":Landroid/os/Message;
        iget-object v1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
     
        invoke-virtual {v1, v0}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendMessage(Landroid/os/Message;)Z
     
        .line 1760
        return-void
    .end method
     
    .method private setAdbConnectionInfo(Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;)V
        .registers 4
        .param p1, "info"    # Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
     
        .line 616
        iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbConnectionInfo:Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
     
        monitor-enter v0
     
        .line 617
        if-nez p1, :cond_c
     
        .line 618
        :try_start_5
        iget-object v1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbConnectionInfo:Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
     
        invoke-virtual {v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;->clear()V
     
        .line 619
        monitor-exit v0
     
        return-void
    
        .line 621
        :cond_c
        iput-object p1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbConnectionInfo:Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
     
        .line 622
        monitor-exit v0
     
        .line 623
        return-void
    
        .line 622
        :catchall_10
        move-exception v1
     
        monitor-exit v0
        :try_end_12
        .catchall {:try_start_5 .. :try_end_12} :catchall_10
     
        throw v1
    .end method
     
    .method private startConfirmationActivity(Landroid/content/ComponentName;Landroid/os/UserHandle;Ljava/util/List;)Z
        .registers 10
        .param p1, "componentName"    # Landroid/content/ComponentName;
        .param p2, "userHandle"    # Landroid/os/UserHandle;
        .annotation system Ldalvik/annotation/Signature;
            value = {
                "(",
                "Landroid/content/ComponentName;",
                "Landroid/os/UserHandle;",
                "Ljava/util/List<",
                "Ljava/util/Map$Entry<",
                "Ljava/lang/String;",
                "Ljava/lang/String;",
                ">;>;)Z"
            }
        .end annotation
     
        .line 1531
        .local p3, "extras":Ljava/util/List;, "Ljava/util/List<Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;>;"
        iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mContext:Landroid/content/Context;
     
        invoke-virtual {v0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
     
        move-result-object v0
     
        .line 1532
        .local v0, "packageManager":Landroid/content/pm/PackageManager;
        invoke-direct {p0, p1, p3}, Lcom/android/server/adb/AdbDebuggingManager;->createConfirmationIntent(Landroid/content/ComponentName;Ljava/util/List;)Landroid/content/Intent;
     
        move-result-object v1
     
        .line 1533
        .local v1, "intent":Landroid/content/Intent;
        const/high16 v2, 0x10000000
     
        invoke-virtual {v1, v2}, Landroid/content/Intent;->addFlags(I)Landroid/content/Intent;
     
        .line 1534
        const/high16 v2, 0x10000
     
        invoke-virtual {v0, v1, v2}, Landroid/content/pm/PackageManager;->resolveActivity(Landroid/content/Intent;I)Landroid/content/pm/ResolveInfo;
     
        move-result-object v2
     
        if-eqz v2, :cond_38
     
        .line 1536
        :try_start_17
        iget-object v2, p0, Lcom/android/server/adb/AdbDebuggingManager;->mContext:Landroid/content/Context;
     
        invoke-virtual {v2, v1, p2}, Landroid/content/Context;->startActivityAsUser(Landroid/content/Intent;Landroid/os/UserHandle;)V
        :try_end_1c
        .catch Landroid/content/ActivityNotFoundException; {:try_start_17 .. :try_end_1c} :catch_1e
     
        .line 1537
        const/4 v2, 0x1
     
        return v2
     
        .line 1538
        :catch_1e
        move-exception v2
     
        .line 1539
        .local v2, "e":Landroid/content/ActivityNotFoundException;
        sget-object v3, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
     
        new-instance v4, Ljava/lang/StringBuilder;
     
        invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
     
        const-string/jumbo v5, "unable to start adb whitelist activity: "
     
        invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
     
        move-result-object v4
     
        invoke-virtual {v4, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
     
        move-result-object v4
     
        invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
     
        move-result-object v4
     
        invoke-static {v3, v4, v2}, Landroid/util/Slog;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
     
        .line 1542
        .end local v2    # "e":Landroid/content/ActivityNotFoundException;
        :cond_38
        const/4 v2, 0x0
     
        return v2
    .end method
     
    .method private startConfirmationForKey(Ljava/lang/String;Ljava/lang/String;)V
        .registers 11
        .param p1, "key"    # Ljava/lang/String;
        .param p2, "fingerprints"    # Ljava/lang/String;
     
        .line 1500
        new-instance v0, Ljava/util/ArrayList;
     
        invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
     
        .line 1501
        .local v0, "extras":Ljava/util/List;, "Ljava/util/List<Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;>;"
        new-instance v1, Ljava/util/AbstractMap$SimpleEntry;
     
        const-string/jumbo v2, "key"
     
        invoke-direct {v1, v2, p1}, Ljava/util/AbstractMap$SimpleEntry;-><init>(Ljava/lang/Object;Ljava/lang/Object;)V
     
        invoke-interface {v0, v1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
     
        .line 1502
        new-instance v1, Ljava/util/AbstractMap$SimpleEntry;
     
        const-string v2, "fingerprints"
     
        invoke-direct {v1, v2, p2}, Ljava/util/AbstractMap$SimpleEntry;-><init>(Ljava/lang/Object;Ljava/lang/Object;)V
     
        invoke-interface {v0, v1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
     
        .line 1503
        invoke-static {}, Landroid/app/ActivityManager;->getCurrentUser()I
     
        move-result v1
     
        .line 1504
        .local v1, "currentUserId":I
        iget-object v2, p0, Lcom/android/server/adb/AdbDebuggingManager;->mContext:Landroid/content/Context;
     
        invoke-static {v2}, Landroid/os/UserManager;->get(Landroid/content/Context;)Landroid/os/UserManager;
     
        move-result-object v2
     
        invoke-virtual {v2, v1}, Landroid/os/UserManager;->getUserInfo(I)Landroid/content/pm/UserInfo;
     
        move-result-object v2
     
        .line 1506
        .local v2, "userInfo":Landroid/content/pm/UserInfo;
        invoke-virtual {v2}, Landroid/content/pm/UserInfo;->isAdmin()Z
     
        move-result v3
     
        if-eqz v3, :cond_3f
     
        .line 1507
        iget-object v3, p0, Lcom/android/server/adb/AdbDebuggingManager;->mConfirmComponent:Ljava/lang/String;
     
        if-eqz v3, :cond_33
     
        .line 1508
        goto :goto_3e
     
        :cond_33
        invoke-static {}, Landroid/content/res/Resources;->getSystem()Landroid/content/res/Resources;
     
        move-result-object v3
     
        const v4, 0x1040221
     
        invoke-virtual {v3, v4}, Landroid/content/res/Resources;->getString(I)Ljava/lang/String;
     
        move-result-object v3
     
        .local v3, "componentString":Ljava/lang/String;
        :goto_3e
        goto :goto_4a
     
        .line 1513
        .end local v3    # "componentString":Ljava/lang/String;
        :cond_3f
        invoke-static {}, Landroid/content/res/Resources;->getSystem()Landroid/content/res/Resources;
     
        move-result-object v3
     
        const v4, 0x1040222
     
        invoke-virtual {v3, v4}, Landroid/content/res/Resources;->getString(I)Ljava/lang/String;
     
        move-result-object v3
     
        .line 1516
        .restart local v3    # "componentString":Ljava/lang/String;
        :goto_4a
        invoke-static {v3}, Landroid/content/ComponentName;->unflattenFromString(Ljava/lang/String;)Landroid/content/ComponentName;
     
        move-result-object v4
     
        .line 1517
        .local v4, "componentName":Landroid/content/ComponentName;
        invoke-virtual {v2}, Landroid/content/pm/UserInfo;->getUserHandle()Landroid/os/UserHandle;
     
        move-result-object v5
     
        invoke-direct {p0, v4, v5, v0}, Lcom/android/server/adb/AdbDebuggingManager;->startConfirmationActivity(Landroid/content/ComponentName;Landroid/os/UserHandle;Ljava/util/List;)Z
     
        move-result v5
     
        if-nez v5, :cond_83
     
        .line 1518
        invoke-virtual {v2}, Landroid/content/pm/UserInfo;->getUserHandle()Landroid/os/UserHandle;
     
        move-result-object v5
     
        invoke-direct {p0, v4, v5, v0}, Lcom/android/server/adb/AdbDebuggingManager;->startConfirmationService(Landroid/content/ComponentName;Landroid/os/UserHandle;Ljava/util/List;)Z
     
        move-result v5
     
        if-eqz v5, :cond_63
     
        goto :goto_83
     
        .line 1522
        :cond_63
        sget-object v5, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
     
        new-instance v6, Ljava/lang/StringBuilder;
     
        invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
     
        const-string/jumbo v7, "unable to start customAdbPublicKeyConfirmation[SecondaryUser]Component "
     
        invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
     
        move-result-object v6
     
        invoke-virtual {v6, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
     
        move-result-object v6
     
        const-string v7, " as an Activity or a Service"
     
        invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
     
        move-result-object v6
     
        invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
     
        move-result-object v6
     
        invoke-static {v5, v6}, Landroid/util/Slog;->e(Ljava/lang/String;Ljava/lang/String;)I
     
        .line 1524
        return-void
    
        .line 1520
        :cond_83
        :goto_83
        return-void
    .end method
     
    .method private startConfirmationForNetwork(Ljava/lang/String;Ljava/lang/String;)V
        .registers 11
        .param p1, "ssid"    # Ljava/lang/String;
        .param p2, "bssid"    # Ljava/lang/String;
     
        .line 1482
        new-instance v0, Ljava/util/ArrayList;
     
        invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
     
        .line 1483
        .local v0, "extras":Ljava/util/List;, "Ljava/util/List<Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;>;"
        new-instance v1, Ljava/util/AbstractMap$SimpleEntry;
     
        const-string/jumbo v2, "ssid"
     
        invoke-direct {v1, v2, p1}, Ljava/util/AbstractMap$SimpleEntry;-><init>(Ljava/lang/Object;Ljava/lang/Object;)V
     
        invoke-interface {v0, v1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
     
        .line 1484
        new-instance v1, Ljava/util/AbstractMap$SimpleEntry;
     
        const-string v2, "bssid"
     
        invoke-direct {v1, v2, p2}, Ljava/util/AbstractMap$SimpleEntry;-><init>(Ljava/lang/Object;Ljava/lang/Object;)V
     
        invoke-interface {v0, v1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
     
        .line 1485
        invoke-static {}, Landroid/app/ActivityManager;->getCurrentUser()I
     
        move-result v1
     
        .line 1487
        .local v1, "currentUserId":I
        invoke-static {}, Landroid/content/res/Resources;->getSystem()Landroid/content/res/Resources;
     
        move-result-object v2
     
        const v3, 0x1040223
     
        invoke-virtual {v2, v3}, Landroid/content/res/Resources;->getString(I)Ljava/lang/String;
     
        move-result-object v2
     
        .line 1489
        .local v2, "componentString":Ljava/lang/String;
        invoke-static {v2}, Landroid/content/ComponentName;->unflattenFromString(Ljava/lang/String;)Landroid/content/ComponentName;
     
        move-result-object v3
     
        .line 1490
        .local v3, "componentName":Landroid/content/ComponentName;
        iget-object v4, p0, Lcom/android/server/adb/AdbDebuggingManager;->mContext:Landroid/content/Context;
     
        invoke-static {v4}, Landroid/os/UserManager;->get(Landroid/content/Context;)Landroid/os/UserManager;
     
        move-result-object v4
     
        invoke-virtual {v4, v1}, Landroid/os/UserManager;->getUserInfo(I)Landroid/content/pm/UserInfo;
     
        move-result-object v4
     
        .line 1491
        .local v4, "userInfo":Landroid/content/pm/UserInfo;
        invoke-virtual {v4}, Landroid/content/pm/UserInfo;->getUserHandle()Landroid/os/UserHandle;
     
        move-result-object v5
     
        invoke-direct {p0, v3, v5, v0}, Lcom/android/server/adb/AdbDebuggingManager;->startConfirmationActivity(Landroid/content/ComponentName;Landroid/os/UserHandle;Ljava/util/List;)Z
     
        move-result v5
     
        if-nez v5, :cond_6b
     
        .line 1492
        invoke-virtual {v4}, Landroid/content/pm/UserInfo;->getUserHandle()Landroid/os/UserHandle;
     
        move-result-object v5
     
        invoke-direct {p0, v3, v5, v0}, Lcom/android/server/adb/AdbDebuggingManager;->startConfirmationService(Landroid/content/ComponentName;Landroid/os/UserHandle;Ljava/util/List;)Z
     
        move-result v5
     
        if-eqz v5, :cond_4c
     
        goto :goto_6b
     
        .line 1495
        :cond_4c
        sget-object v5, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
     
        new-instance v6, Ljava/lang/StringBuilder;
     
        invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
     
        const-string v7, "Unable to start customAdbWifiNetworkConfirmation[SecondaryUser]Component "
     
        invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
     
        move-result-object v6
     
        invoke-virtual {v6, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
     
        move-result-object v6
     
        const-string v7, " as an Activity or a Service"
     
        invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
     
        move-result-object v6
     
        invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
     
        move-result-object v6
     
        invoke-static {v5, v6}, Landroid/util/Slog;->e(Ljava/lang/String;Ljava/lang/String;)I
     
        .line 1497
        return-void
    
        .line 1493
        :cond_6b
        :goto_6b
        return-void
    .end method
     
    .method private startConfirmationService(Landroid/content/ComponentName;Landroid/os/UserHandle;Ljava/util/List;)Z
        .registers 9
        .param p1, "componentName"    # Landroid/content/ComponentName;
        .param p2, "userHandle"    # Landroid/os/UserHandle;
        .annotation system Ldalvik/annotation/Signature;
            value = {
                "(",
                "Landroid/content/ComponentName;",
                "Landroid/os/UserHandle;",
                "Ljava/util/List<",
                "Ljava/util/Map$Entry<",
                "Ljava/lang/String;",
                "Ljava/lang/String;",
                ">;>;)Z"
            }
        .end annotation
     
        .line 1550
        .local p3, "extras":Ljava/util/List;, "Ljava/util/List<Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;>;"
        invoke-direct {p0, p1, p3}, Lcom/android/server/adb/AdbDebuggingManager;->createConfirmationIntent(Landroid/content/ComponentName;Ljava/util/List;)Landroid/content/Intent;
     
        move-result-object v0
     
        .line 1552
        .local v0, "intent":Landroid/content/Intent;
        :try_start_4
        iget-object v1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mContext:Landroid/content/Context;
     
        invoke-virtual {v1, v0, p2}, Landroid/content/Context;->startServiceAsUser(Landroid/content/Intent;Landroid/os/UserHandle;)Landroid/content/ComponentName;
     
        move-result-object v1
        :try_end_a
        .catch Ljava/lang/SecurityException; {:try_start_4 .. :try_end_a} :catch_f
     
        if-eqz v1, :cond_e
     
        .line 1553
        const/4 v1, 0x1
     
        return v1
     
        .line 1557
        :cond_e
        goto :goto_29
     
        .line 1555
        :catch_f
        move-exception v1
     
        .line 1556
        .local v1, "e":Ljava/lang/SecurityException;
        sget-object v2, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
     
        new-instance v3, Ljava/lang/StringBuilder;
     
        invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
     
        const-string/jumbo v4, "unable to start adb whitelist service: "
     
        invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
     
        move-result-object v3
     
        invoke-virtual {v3, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
     
        move-result-object v3
     
        invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
     
        move-result-object v3
     
        invoke-static {v2, v3, v1}, Landroid/util/Slog;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
     
        .line 1558
        .end local v1    # "e":Ljava/lang/SecurityException;
        :goto_29
        const/4 v1, 0x0
     
        return v1
    .end method
     
    .method private writeKeys(Ljava/lang/Iterable;)V
        .registers 8
        .annotation system Ldalvik/annotation/Signature;
            value = {
                "(",
                "Ljava/lang/Iterable<",
                "Ljava/lang/String;",
                ">;)V"
            }
        .end annotation
     
        .line 1595
        .local p1, "keys":Ljava/lang/Iterable;, "Ljava/lang/Iterable<Ljava/lang/String;>;"
        iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mUserKeyFile:Ljava/io/File;
     
        if-nez v0, :cond_5
     
        .line 1596
        return-void
    
        .line 1599
        :cond_5
        new-instance v0, Landroid/util/AtomicFile;
     
        iget-object v1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mUserKeyFile:Ljava/io/File;
     
        invoke-direct {v0, v1}, Landroid/util/AtomicFile;-><init>(Ljava/io/File;)V
     
        .line 1602
        .local v0, "atomicKeyFile":Landroid/util/AtomicFile;
        const/4 v1, 0x0
     
        .line 1604
        .local v1, "fo":Ljava/io/FileOutputStream;
        :try_start_d
        invoke-virtual {v0}, Landroid/util/AtomicFile;->startWrite()Ljava/io/FileOutputStream;
     
        move-result-object v2
     
        move-object v1, v2
     
        .line 1605
        invoke-interface {p1}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator;
     
        move-result-object v2
     
        :goto_16
        invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
     
        move-result v3
     
        if-eqz v3, :cond_2f
     
        invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
     
        move-result-object v3
     
        check-cast v3, Ljava/lang/String;
     
        .line 1606
        .local v3, "key":Ljava/lang/String;
        invoke-virtual {v3}, Ljava/lang/String;->getBytes()[B
     
        move-result-object v4
     
        invoke-virtual {v1, v4}, Ljava/io/FileOutputStream;->write([B)V
     
        .line 1607
        const/16 v4, 0xa
     
        invoke-virtual {v1, v4}, Ljava/io/FileOutputStream;->write(I)V
     
        .line 1608
        .end local v3    # "key":Ljava/lang/String;
        goto :goto_16
     
        .line 1609
        :cond_2f
        invoke-virtual {v0, v1}, Landroid/util/AtomicFile;->finishWrite(Ljava/io/FileOutputStream;)V
        :try_end_32
        .catch Ljava/io/IOException; {:try_start_d .. :try_end_32} :catch_40
     
        .line 1614
        nop
    
        .line 1616
        iget-object v2, p0, Lcom/android/server/adb/AdbDebuggingManager;->mUserKeyFile:Ljava/io/File;
     
        .line 1617
        invoke-virtual {v2}, Ljava/io/File;->toString()Ljava/lang/String;
     
        move-result-object v2
     
        const/16 v3, 0x1a0
     
        .line 1616
        const/4 v4, -0x1
     
        invoke-static {v2, v3, v4, v4}, Landroid/os/FileUtils;->setPermissions(Ljava/lang/String;III)I
     
        .line 1619
        return-void
    
        .line 1610
        :catch_40
        move-exception v2
     
        .line 1611
        .local v2, "ex":Ljava/io/IOException;
        sget-object v3, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
     
        new-instance v4, Ljava/lang/StringBuilder;
     
        invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
     
        const-string v5, "Error writing keys: "
     
        invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
     
        move-result-object v4
     
        invoke-virtual {v4, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
     
        move-result-object v4
     
        invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
     
        move-result-object v4
     
        invoke-static {v3, v4}, Landroid/util/Slog;->e(Ljava/lang/String;Ljava/lang/String;)I
     
        .line 1612
        invoke-virtual {v0, v1}, Landroid/util/AtomicFile;->failWrite(Ljava/io/FileOutputStream;)V
     
        .line 1613
        return-void
    .end method
     
     
    # virtual methods
    .method public allowDebugging(ZLjava/lang/String;)V
        .registers 5
        .param p1, "alwaysAllow"    # Z
        .param p2, "publicKey"    # Ljava/lang/String;
     
        .line 1645
        iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
     
        const/4 v1, 0x3
     
        invoke-virtual {v0, v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->obtainMessage(I)Landroid/os/Message;
     
        move-result-object v0
     
        .line 1646
        .local v0, "msg":Landroid/os/Message;
        iput p1, v0, Landroid/os/Message;->arg1:I
     
        .line 1647
        iput-object p2, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
     
        .line 1648
        iget-object v1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
     
        invoke-virtual {v1, v0}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendMessage(Landroid/os/Message;)Z
     
        .line 1649
        return-void
    .end method
     
    .method public allowWirelessDebugging(ZLjava/lang/String;)V
        .registers 5
        .param p1, "alwaysAllow"    # Z
        .param p2, "bssid"    # Ljava/lang/String;
     
        .line 1671
        iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
     
        const/16 v1, 0x12
     
        invoke-virtual {v0, v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->obtainMessage(I)Landroid/os/Message;
     
        move-result-object v0
     
        .line 1672
        .local v0, "msg":Landroid/os/Message;
        iput p1, v0, Landroid/os/Message;->arg1:I
     
        .line 1673
        iput-object p2, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
     
        .line 1674
        iget-object v1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
     
        invoke-virtual {v1, v0}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendMessage(Landroid/os/Message;)Z
     
        .line 1675
        return-void
    .end method
     
    .method public clearDebuggingKeys()V
        .registers 3
     
        .line 1663
        iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
     
        const/4 v1, 0x6
     
        invoke-virtual {v0, v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendEmptyMessage(I)Z
     
        .line 1664
        return-void
    .end method
     
    .method public denyDebugging()V
        .registers 3
     
        .line 1655
        iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
     
        const/4 v1, 0x4
     
        invoke-virtual {v0, v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendEmptyMessage(I)Z
     
        .line 1656
        return-void
    .end method
     
    .method public denyWirelessDebugging()V
        .registers 3
     
        .line 1681
        iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
     
        const/16 v1, 0x13
     
        invoke-virtual {v0, v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendEmptyMessage(I)Z
     
        .line 1682
        return-void
    .end method
     
    .method public disablePairing()V
        .registers 3
     
        .line 1737
        iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
     
        const/16 v1, 0xe
     
        invoke-virtual {v0, v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendEmptyMessage(I)Z
     
        .line 1738
        return-void
    .end method
     
    .method public dump(Lcom/android/internal/util/dump/DualDumpOutputStream;Ljava/lang/String;J)V
        .registers 14
        .param p1, "dump"    # Lcom/android/internal/util/dump/DualDumpOutputStream;
        .param p2, "idName"    # Ljava/lang/String;
        .param p3, "id"    # J
     
        .line 1766
        invoke-virtual {p1, p2, p3, p4}, Lcom/android/internal/util/dump/DualDumpOutputStream;->start(Ljava/lang/String;J)J
     
        move-result-wide v0
     
        .line 1768
        .local v0, "token":J
        iget-object v2, p0, Lcom/android/server/adb/AdbDebuggingManager;->mThread:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;
     
        const/4 v3, 0x0
     
        if-eqz v2, :cond_b
     
        const/4 v2, 0x1
     
        goto :goto_c
     
        :cond_b
        move v2, v3
     
        :goto_c
        const-string v4, "connected_to_adb"
     
        const-wide v5, 0x10800000001L
     
        invoke-virtual {p1, v4, v5, v6, v2}, Lcom/android/internal/util/dump/DualDumpOutputStream;->write(Ljava/lang/String;JZ)V
     
        .line 1769
        const-wide v4, 0x10900000002L
     
        iget-object v2, p0, Lcom/android/server/adb/AdbDebuggingManager;->mFingerprints:Ljava/lang/String;
     
        const-string/jumbo v6, "last_key_received"
     
        invoke-static {p1, v6, v4, v5, v2}, Lcom/android/internal/util/dump/DumpUtils;->writeStringIfNotNull(Lcom/android/internal/util/dump/DualDumpOutputStream;Ljava/lang/String;JLjava/lang/String;)V
     
        .line 1773
        const/4 v2, 0x0
     
        :try_start_24
        const-string/jumbo v4, "user_keys"
     
        const-wide v5, 0x10900000003L
     
        new-instance v7, Ljava/io/File;
     
        const-string v8, "/data/misc/adb/adb_keys"
     
        invoke-direct {v7, v8}, Ljava/io/File;-><init>(Ljava/lang/String;)V
     
        .line 1774
        invoke-static {v7, v3, v2}, Landroid/os/FileUtils;->readTextFile(Ljava/io/File;ILjava/lang/String;)Ljava/lang/String;
     
        move-result-object v7
     
        .line 1773
        invoke-virtual {p1, v4, v5, v6, v7}, Lcom/android/internal/util/dump/DualDumpOutputStream;->write(Ljava/lang/String;JLjava/lang/String;)V
        :try_end_3a
        .catch Ljava/io/IOException; {:try_start_24 .. :try_end_3a} :catch_3b
     
        .line 1777
        goto :goto_43
     
        .line 1775
        :catch_3b
        move-exception v4
     
        .line 1776
        .local v4, "e":Ljava/io/IOException;
        sget-object v5, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
     
        const-string v6, "Cannot read user keys"
     
        invoke-static {v5, v6, v4}, Landroid/util/Slog;->i(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
     
        .line 1780
        .end local v4    # "e":Ljava/io/IOException;
        :goto_43
        :try_start_43
        const-string/jumbo v4, "system_keys"
     
        const-wide v5, 0x10900000004L
     
        new-instance v7, Ljava/io/File;
     
        const-string v8, "/adb_keys"
     
        invoke-direct {v7, v8}, Ljava/io/File;-><init>(Ljava/lang/String;)V
     
        .line 1781
        invoke-static {v7, v3, v2}, Landroid/os/FileUtils;->readTextFile(Ljava/io/File;ILjava/lang/String;)Ljava/lang/String;
     
        move-result-object v7
     
        .line 1780
        invoke-virtual {p1, v4, v5, v6, v7}, Lcom/android/internal/util/dump/DualDumpOutputStream;->write(Ljava/lang/String;JLjava/lang/String;)V
        :try_end_59
        .catch Ljava/io/IOException; {:try_start_43 .. :try_end_59} :catch_5a
     
        .line 1784
        goto :goto_62
     
        .line 1782
        :catch_5a
        move-exception v4
     
        .line 1783
        .restart local v4    # "e":Ljava/io/IOException;
        sget-object v5, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
     
        const-string v6, "Cannot read system keys"
     
        invoke-static {v5, v6, v4}, Landroid/util/Slog;->i(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
     
        .line 1787
        .end local v4    # "e":Ljava/io/IOException;
        :goto_62
        :try_start_62
        const-string/jumbo v4, "keystore"
     
        const-wide v5, 0x10900000005L
     
        iget-object v7, p0, Lcom/android/server/adb/AdbDebuggingManager;->mTempKeysFile:Ljava/io/File;
     
        .line 1788
        invoke-static {v7, v3, v2}, Landroid/os/FileUtils;->readTextFile(Ljava/io/File;ILjava/lang/String;)Ljava/lang/String;
     
        move-result-object v2
     
        .line 1787
        invoke-virtual {p1, v4, v5, v6, v2}, Lcom/android/internal/util/dump/DualDumpOutputStream;->write(Ljava/lang/String;JLjava/lang/String;)V
        :try_end_73
        .catch Ljava/io/IOException; {:try_start_62 .. :try_end_73} :catch_74
     
        .line 1791
        goto :goto_7c
     
        .line 1789
        :catch_74
        move-exception v2
     
        .line 1790
        .local v2, "e":Ljava/io/IOException;
        sget-object v3, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
     
        const-string v4, "Cannot read keystore: "
     
        invoke-static {v3, v4, v2}, Landroid/util/Slog;->i(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
     
        .line 1793
        .end local v2    # "e":Ljava/io/IOException;
        :goto_7c
        invoke-virtual {p1, v0, v1}, Lcom/android/internal/util/dump/DualDumpOutputStream;->end(J)V
     
        .line 1794
        return-void
    .end method
     
    .method public enablePairingByPairingCode()V
        .registers 3
     
        .line 1717
        iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
     
        const/16 v1, 0xf
     
        invoke-virtual {v0, v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendEmptyMessage(I)Z
     
        .line 1718
        return-void
    .end method
     
    .method public enablePairingByQrCode(Ljava/lang/String;Ljava/lang/String;)V
        .registers 6
        .param p1, "serviceName"    # Ljava/lang/String;
        .param p2, "password"    # Ljava/lang/String;
     
        .line 1724
        new-instance v0, Landroid/os/Bundle;
     
        invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
     
        .line 1725
        .local v0, "bundle":Landroid/os/Bundle;
        const-string/jumbo v1, "serviceName"
     
        invoke-virtual {v0, v1, p1}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
     
        .line 1726
        const-string/jumbo v1, "password"
     
        invoke-virtual {v0, v1, p2}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
     
        .line 1727
        iget-object v1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
     
        const/16 v2, 0x10
     
        invoke-static {v1, v2, v0}, Landroid/os/Message;->obtain(Landroid/os/Handler;ILjava/lang/Object;)Landroid/os/Message;
     
        move-result-object v1
     
        .line 1730
        .local v1, "message":Landroid/os/Message;
        iget-object v2, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
     
        invoke-virtual {v2, v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendMessage(Landroid/os/Message;)Z
     
        .line 1731
        return-void
    .end method
     
    .method getAdbTempKeysFile()Ljava/io/File;
        .registers 2
     
        .line 1587
        iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mTempKeysFile:Ljava/io/File;
     
        return-object v0
    .end method
     
    .method public getAdbWirelessPort()I
        .registers 3
     
        .line 1688
        invoke-direct {p0}, Lcom/android/server/adb/AdbDebuggingManager;->getAdbConnectionInfo()Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
     
        move-result-object v0
     
        .line 1689
        .local v0, "info":Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
        if-nez v0, :cond_8
     
        .line 1690
        const/4 v1, 0x0
     
        return v1
     
        .line 1692
        :cond_8
        invoke-virtual {v0}, Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;->getPort()I
     
        move-result v1
     
        return v1
    .end method
     
    .method public getPairedDevices()Ljava/util/Map;
        .registers 3
        .annotation system Ldalvik/annotation/Signature;
            value = {
                "()",
                "Ljava/util/Map<",
                "Ljava/lang/String;",
                "Landroid/debug/PairDevice;",
                ">;"
            }
        .end annotation
     
        .line 1699
        new-instance v0, Lcom/android/server/adb/AdbDebuggingManager$AdbKeyStore;
     
        invoke-direct {v0, p0}, Lcom/android/server/adb/AdbDebuggingManager$AdbKeyStore;-><init>(Lcom/android/server/adb/AdbDebuggingManager;)V
     
        .line 1700
        .local v0, "keystore":Lcom/android/server/adb/AdbDebuggingManager$AdbKeyStore;
        invoke-virtual {v0}, Lcom/android/server/adb/AdbDebuggingManager$AdbKeyStore;->getPairedDevices()Ljava/util/Map;
     
        move-result-object v1
     
        return-object v1
    .end method
     
    .method getUserKeyFile()Ljava/io/File;
        .registers 2
     
        .line 1591
        iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mUserKeyFile:Ljava/io/File;
     
        return-object v0
    .end method
     
    .method public isAdbWifiEnabled()Z
        .registers 2
     
        .line 1744
        iget-boolean v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbWifiEnabled:Z
     
        return v0
    .end method
     
    .method public notifyKeyFilesUpdated()V
        .registers 3
     
        .line 1751
        iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
     
        const/16 v1, 0x1c
     
        invoke-virtual {v0, v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendEmptyMessage(I)Z
     
        .line 1752
        return-void
    .end method
     
    .method public setAdbEnabled(ZB)V
        .registers 6
        .param p1, "enabled"    # Z
        .param p2, "transportType"    # B
     
        .line 1628
        const/4 v0, 0x1
     
        if-nez p2, :cond_d
     
        .line 1629
        iget-object v1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
     
        if-eqz p1, :cond_8
     
        goto :goto_9
     
        .line 1630
        :cond_8
        const/4 v0, 0x2
     
        .line 1629
        :goto_9
        invoke-virtual {v1, v0}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendEmptyMessage(I)Z
     
        goto :goto_1b
     
        .line 1631
        :cond_d
        if-ne p2, v0, :cond_1c
     
        .line 1632
        iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
     
        if-eqz p1, :cond_16
     
        const/16 v1, 0xb
     
        goto :goto_18
     
        .line 1633
        :cond_16
        const/16 v1, 0xc
     
        .line 1632
        :goto_18
        invoke-virtual {v0, v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendEmptyMessage(I)Z
     
        .line 1638
        :goto_1b
        return-void
    
        .line 1635
        :cond_1c
        new-instance v0, Ljava/lang/IllegalArgumentException;
     
        new-instance v1, Ljava/lang/StringBuilder;
     
        invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
     
        const-string/jumbo v2, "setAdbEnabled called with unimplemented transport type="
     
        invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
     
        move-result-object v1
     
        invoke-virtual {v1, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
     
        move-result-object v1
     
        invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
     
        move-result-object v1
     
        invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
     
        throw v0
    .end method
     
    .method public unpairDevice(Ljava/lang/String;)V
        .registers 4
        .param p1, "fingerprint"    # Ljava/lang/String;
     
        .line 1707
        iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
     
        const/16 v1, 0x11
     
        invoke-static {v0, v1, p1}, Landroid/os/Message;->obtain(Landroid/os/Handler;ILjava/lang/Object;)Landroid/os/Message;
     
        move-result-object v0
     
        .line 1710
        .local v0, "message":Landroid/os/Message;
        iget-object v1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
     
        invoke-virtual {v1, v0}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendMessage(Landroid/os/Message;)Z
     
        .line 1711
        return-void
    .end method
     
    

    גימיני טוען שזה הסמיילי לעריכה אבל ממש הסתבכתי עם העריכה וכל זה כי אני לא מבין בזה ממש זה הכניס לי לבוטלופ את המכשיר.
    אם מישהו יכול לעזור לי אשמח מאד.
    המכשיר הוא m393.
    מעלה את הסרויס ג'אר הערוך למניעת הבאג של 3 אפליקציות נערך על ידי @עדלאידע .
    services (3).jar

    יצויין שהוא נבדק ותקין רק שיש בו את הבעיה של ה adb.

    @אלוף-תימן @10110000 @פראירי @בניית-גרסאות @ezerphone @שניאור-שמח

    סליחה אם תייגתי מישהו שלא מעוניין בכך.

    כללי - עזרה הדדית

  • המלצה | לרגל תחילת הזמן יצרתי עבורי תוסף לTampermonkey מה שיעזור לכם לא להיות על המחשב
    ר ר יעקב עייפים

    @לשכת-הרב e1697246-e073-47ca-81ca-bbf177dbf23d-image.png
    הרעיון שונה כאן העניין הוא להיכנס אבל למנוע את העוד 5 דקות או את הכניסות שאתה נכנס כי אתה סתם משועמם...

    עזרה הדדית - מחשבים וטכנולוגיה

  • המלצה | לרגל תחילת הזמן יצרתי עבורי תוסף לTampermonkey מה שיעזור לכם לא להיות על המחשב
    ר ר יעקב עייפים

    עדכנתי את הקוד

    // ==UserScript==
    // @name         Ultimate Global Blocker - Extreme Editor Lock & Timer
    // @namespace    http://tampermonkey.net/
    // @version      32.0
    // @description  Original timings (5m/60m), original keys, NO black screen on AI, visual timer, INVISIBLE button.
    // @match        *://*/*
    // @match        chrome-extension://dhdgffkkebhmkfjojejmpbldmpobfkfo/*
    // @run-at       document-start
    // @grant        GM_addStyle
    // ==/UserScript==
    
    (function() {
        'use strict';
    
        // זמנים מקוריים
        const ACCESS_DURATION = 5 * 60 * 1000; // 5 דקות
        const COOLDOWN_DURATION = 60 * 60 * 1000; // 60 דקות צינון
        const EDITOR_LOCK_DURATION = 120 * 60 * 1000; // שעתיים המתנה לעריכה
        const GRACE_PERIOD = 15 * 1000; 
    
        // מפתחות מקוריים
        const STORAGE_KEY = 'focus_access_data';
        const SESSION_KEY = 'shteygen_session_unlocked'; 
        const LAST_UNLOCK_KEY = 'shteygen_last_unlock_time';
        const EDITOR_UNLOCK_TIME_KEY = 'shteygen_editor_unlock_time';
        const BG_IMAGE_URL = 'https://lh3.googleusercontent.com/gps-cs-s/APNQkAGjf7ZRnX5Zi_LcMWrfBXR4jt-Ood3AHFInk63ZafZzv0o_dKdElR0NRLdkgYORMt6zMUVlHYeAIHAsSarovARTsBKE7voRM2fpFapyKL5gDbnZcbUZdhcPxBBz9hWtCCyRWAWC=w141-h101-n-k-no-nu';
    
        const currentUrl = window.location.href.toLowerCase();
        
        // זיהוי דפים ספציפיים
        const isMail = currentUrl.includes('mail.google.com');
        const isChat = currentUrl.includes('chat.google.com');
        const isForum = currentUrl.includes('forum') || currentUrl.includes('mitmachim.top') || currentUrl.includes('tchumim'); 
        const isEditor = currentUrl.includes('dhdgffkkebhmkfjojejmpbldmpobfkfo');
    
        const needsBlackScreen = isMail || isForum || isChat; 
        const needsDisturbance = !isMail && !isChat && !isEditor;
    
        if (window.performance && performance.navigation.type === performance.navigation.TYPE_RELOAD) {
            const lastUnlock = parseInt(sessionStorage.getItem(LAST_UNLOCK_KEY) || '0');
            if (Date.now() - lastUnlock > GRACE_PERIOD) {
                sessionStorage.removeItem(SESSION_KEY);
            }
        }
    
        const getStatus = () => {
            const data = JSON.parse(localStorage.getItem(STORAGE_KEY) || '{}');
            const sessionUnlocked = sessionStorage.getItem(SESSION_KEY) === 'true';
            const now = Date.now();
    
            if (data.expiry && now < data.expiry) {
                if (needsBlackScreen && !sessionUnlocked) return { state: 'LOCKED_REAUTHENTICATE', timeLeft: data.expiry - now };
                return { state: 'UNLOCKED', timeLeft: data.expiry - now };
            }
            if (data.cooldownUntil && now < data.cooldownUntil) return { state: 'COOLDOWN', waitTime: data.cooldownUntil - now };
            return { state: 'LOCKED' };
        };
    
        GM_addStyle(`
            html.blocked-mode > body > *:not(#shteygen-host-overlay):not(#shteygen-timer-host) { display: none !important; }
            html.apply-disturbance::after {
                content: ''; position: fixed; top: 0; left: 0; width: 100vw; height: 100vh;
                background-image: url("${BG_IMAGE_URL}"); background-size: cover; background-position: center;
                opacity: 0.20 !important; z-index: 2147483645; pointer-events: none;
            }
            html.apply-disturbance body::after {
                content: 'לך ללמוד!'; position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%) rotate(-15deg);
                font-size: 18vw; color: rgba(150, 0, 0, 0.15); z-index: 2147483646; pointer-events: none;
                white-space: nowrap; font-weight: bold;
            }
        `);
    
        // חסימת עורך התוסף
        if (isEditor) {
            const checkEditorStatus = () => {
                const unlockTime = localStorage.getItem(EDITOR_UNLOCK_TIME_KEY);
                const now = Date.now();
    
                if (!unlockTime) {
                    showEditorOverlay("הגישה לעריכת הסקריפט חסומה.", true);
                } else if (now < parseInt(unlockTime)) {
                    const remainingMinutes = Math.ceil((parseInt(unlockTime) - now) / 60000);
                    showEditorOverlay(`מנגנון השהיה פעיל.<br>העורך ייפתח בעוד ${remainingMinutes} דקות של המתנה.`, false);
                    setTimeout(checkEditorStatus, 30000);
                } else {
                    const overlay = document.getElementById('hardcore-editor-overlay');
                    if (overlay) overlay.remove();
                    document.documentElement.classList.remove('blocked-mode');
                }
            };
    
            const showEditorOverlay = (msg, showButton) => {
                document.documentElement.classList.add('blocked-mode');
                let overlay = document.getElementById('hardcore-editor-overlay');
                if (!overlay) {
                    overlay = document.createElement('div');
                    overlay.id = 'hardcore-editor-overlay';
                    overlay.style.cssText = 'position: fixed !important; top: 0; left: 0; width: 100vw; height: 100vh; background-color: #000 !important; color: #fff !important; z-index: 2147483647 !important; display: flex; flex-direction: column; align-items: center; justify-content: center; font-size: 25px; font-weight: bold; text-align: center; direction: rtl; font-family: sans-serif; padding: 20px;';
                    document.documentElement.appendChild(overlay);
                }
                overlay.innerHTML = `<div>${msg}</div>`;
                if (showButton) {
                    const btn = document.createElement('button');
                    btn.innerText = "התחל המתנה של שעתיים לעריכה";
                    btn.style.cssText = "margin-top: 20px; padding: 15px 30px; background: #ce0000; color: white; border: none; border-radius: 5px; cursor: pointer; font-size: 18px; font-weight: bold;";
                    btn.onclick = () => {
                        if(confirm("האם אתה בטוח? תצטרך לחכות שעתיים עד שהדף ייפתח.")) {
                            localStorage.setItem(EDITOR_UNLOCK_TIME_KEY, Date.now() + EDITOR_LOCK_DURATION);
                            checkEditorStatus();
                        }
                    };
                    overlay.appendChild(btn);
                }
            };
    
            checkEditorStatus();
            return; 
        }
    
        if (needsDisturbance) document.documentElement.classList.add('apply-disturbance');
    
        const startUnlockProcess = () => {
            const d = new Date();
            if (parseInt(prompt(`כמה זה ${d.getHours()} + ${d.getMinutes()}?`)) !== (d.getHours() + d.getMinutes())) return;
            
            const word = ["התמדה", "לימוד", "ריכוז"][Math.floor(Math.random() * 3)];
            if (prompt(`הקלד '${word}' מהסוף להתחלה:`) !== word.split('').reverse().join('')) return;
    
            if (prompt("הקלד: 'אישור כניסה קצרה'") === "אישור כניסה קצרה") {
                const now = Date.now();
                const data = JSON.parse(localStorage.getItem(STORAGE_KEY) || '{}');
                if (!data.expiry || now > data.expiry) {
                    localStorage.setItem(STORAGE_KEY, JSON.stringify({
                        expiry: now + ACCESS_DURATION,
                        cooldownUntil: now + ACCESS_DURATION + COOLDOWN_DURATION
                    }));
                }
                sessionStorage.setItem(SESSION_KEY, 'true');
                sessionStorage.setItem(LAST_UNLOCK_KEY, now.toString());
                location.reload();
            }
        };
    
        const renderShadowOverlay = (status) => {
            document.documentElement.classList.add('blocked-mode');
            let host = document.getElementById('shteygen-host-overlay');
            
            if (!host) {
                host = document.createElement('div');
                host.id = 'shteygen-host-overlay';
                host.style.cssText = 'position: fixed !important; top: 0 !important; left: 0 !important; width: 100vw !important; height: 100vh !important; z-index: 2147483647 !important;';
                document.documentElement.appendChild(host);
                
                const shadow = host.attachShadow({mode: 'open'});
                const container = document.createElement('div');
                container.id = 'shadow-content';
                shadow.appendChild(container);
            }
    
            const shadow = host.shadowRoot;
            const container = shadow.getElementById('shadow-content');
            
            container.style.cssText = 'position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #000; display: flex; flex-direction: column; align-items: center; justify-content: center; font-family: sans-serif; direction: rtl; color: white;';
    
            if (status.state === 'COOLDOWN') {
                const minLeft = Math.ceil(status.waitTime / 60000);
                container.innerHTML = `<div style="text-align: center;"><span style="font-size: 30px; font-weight: bold;">תם הזמן.</span><br><br><span style="font-size: 22px; color: #ff4444; font-weight: bold;">נא לחזור ללימודים.<br>הגישה תתאפשר בעוד ${minLeft} דקות.</span></div>`;
            } else {
                container.innerHTML = `<div style="text-align: center;"><span style="font-size: 30px; font-weight: bold;">עצור.</span><br><br><span style="font-size: 22px; color: #888888; font-weight: bold;">האם זה הכרחי עכשיו?</span></div>`;
                
                const btn = document.createElement('button');
                btn.innerText = '⚙️';
                // הכפתור חזר להיות כמעט בלתי נראה לחלוטין (שקוף)
                btn.style.cssText = 'position: absolute; bottom: 15px; left: 15px; background: transparent; border: none; color: rgba(255, 255, 255, 0.05); cursor: pointer; font-size: 20px; padding: 0; margin: 0; outline: none;';
                btn.onclick = startUnlockProcess;
                container.appendChild(btn);
            }
        };
    
        const renderShadowTimer = (timeLeft) => {
            let host = document.getElementById('shteygen-timer-host');
            if (!host) {
                host = document.createElement('div');
                host.id = 'shteygen-timer-host';
                host.style.cssText = 'position: fixed !important; top: 15px !important; right: 15px !important; z-index: 2147483647 !important; pointer-events: none !important;';
                document.documentElement.appendChild(host);
    
                const shadow = host.attachShadow({mode: 'open'});
                
                const style = document.createElement('style');
                style.textContent = `@keyframes urgentBlink { 0% { opacity: 1; } 50% { opacity: 0.5; } 100% { opacity: 1; } }`;
                shadow.appendChild(style);
    
                const timerDiv = document.createElement('div');
                timerDiv.id = 'timer-content';
                shadow.appendChild(timerDiv);
            }
    
            const shadow = host.shadowRoot;
            const timerDiv = shadow.getElementById('timer-content');
    
            const mins = Math.floor(timeLeft / 60000);
            const secs = Math.floor((timeLeft % 60000) / 1000);
            const timeString = `${mins}:${secs.toString().padStart(2, '0')}`;
    
            let bgColor = '#2ecc71';
            let animation = 'none';
    
            if (timeLeft <= 30 * 1000) {
                bgColor = '#e74c3c'; 
                animation = 'urgentBlink 1s infinite';
            } else if (timeLeft <= 90 * 1000) {
                bgColor = '#f39c12'; 
            }
    
            timerDiv.style.cssText = `background-color: ${bgColor}; color: #fff; padding: 10px 20px; font-size: 24px; font-weight: bold; font-family: monospace; border-radius: 8px; box-shadow: 0 4px 6px rgba(0,0,0,0.3); border: 2px solid rgba(255,255,255,0.5); direction: ltr; animation: ${animation};`;
            timerDiv.innerText = timeString;
        };
    
        if (needsBlackScreen) {
            setInterval(() => {
                const status = getStatus();
                
                if (status.state === 'UNLOCKED') {
                    document.documentElement.classList.remove('blocked-mode');
                    const overlayHost = document.getElementById('shteygen-host-overlay');
                    if (overlayHost) overlayHost.remove();
                    
                    renderShadowTimer(status.timeLeft);
                    
                    if (status.timeLeft <= 0) location.reload();
                    
                } else {
                    const timerHost = document.getElementById('shteygen-timer-host');
                    if (timerHost) timerHost.remove();
                    
                    renderShadowOverlay(status);
                }
            }, 500);
        }
    })();
    

    גם בפוסט הראשי.
    יש בכלל טעם בזה? מישהו ישתמש בזה? אשמח לדעת ממש!!
    שאני ידע אם עזרתי בכלל למישהו...

    עזרה הדדית - מחשבים וטכנולוגיה

  • בקשת מידע | נגן M400 בבריק, אשמח לעזרה!
    ר ר יעקב עייפים

    @HEB1000

    @HEB1000 כתב בבקשת מידע | נגן M400 בבריק, אשמח לעזרה!:

    @שלמה רביבו (

    התכוונת כנראה ל @ שלמה רביב.
    בכ"א יש לך את המייל שלו?
    איך מזכירים אותו כאן? ניסיתי @שלמה-רביב וזה לא עובד בין עם מקף ובין בלעדיו...

    צריבת root

  • בקשת מידע | תיקון הבאג של אפליקציות אחרונות בנגנים הסיניים
    ר ר יעקב עייפים

    services.jar

    עזרה הדדית - אנדרואיד

  • שאלה | למה צריך צריבת גרסה אם יש תוכנות ממש טובות כמו קיידרואיד וכו'?
    ר ר יעקב עייפים

    @מה-זה-משנה-אה לא הבנתי מה המצב לא משנה אתה צריך גיבוי גירסה...

    נגנים ותוכנותיהם

  • המלצה | לרגל תחילת הזמן יצרתי עבורי תוסף לTampermonkey מה שיעזור לכם לא להיות על המחשב
    ר ר יעקב עייפים

    @בנימין-מחשבים

    @בנימין-מחשבים כתב בהמלצה | לרגל תחילת הזמן יצרתי עבורי תוסף לTampermonkey מה שיעזור לכם לא להיות על המחשב:

    הקוד הוא ai קומפלט

    כן חוץ מנקודונת קטנטנה

    @בנימין-מחשבים כתב בהמלצה | לרגל תחילת הזמן יצרתי עבורי תוסף לTampermonkey מה שיעזור לכם לא להיות על המחשב:

    פשוט אתה חדש בפורום (ברוך הבא!)

    תודה רבה! רק שאני לא יודע עדיין לערוך פוסטים נורמלי חבל...

    @בנימין-מחשבים כתב בהמלצה | לרגל תחילת הזמן יצרתי עבורי תוסף לTampermonkey מה שיעזור לכם לא להיות על המחשב:

    בהחלט! יתכן מאוד שאשתמש, ואני בטוח שיש עוד רבים שאם הפוסט הראשי יהיה מונגש להם יותר הם יהנו מזה מאוד!

    תודה רבה זה נותן תחושה ממש טובה...

    אתה לא חושב שחבל על הזמן לכתוב קוד כזה לבד?

    לא שאני יכול...

    עזרה הדדית - מחשבים וטכנולוגיה

  • בקשת מידע | תיקון הבאג של אפליקציות אחרונות בנגנים הסיניים
    ר ר יעקב עייפים

    @נחלס-דון כתב בבקשת מידע | תיקון הבאג של אפליקציות אחרונות בנגנים הסיניים:

    אין לי מושג איפה בדיוק, אבל אני חושד שזה בנתיב com/android/server/policy/PhoneWindowMansger

    אנסה לבדוק.

    אגב למה נראה לך?

    תודה.

    @עדלאידע כתב בבקשת מידע | תיקון הבאג של אפליקציות אחרונות בנגנים הסיניים:

    בקובץ:
    services\smali_classes2\com\android\server\wm\RecentTasks.smali

    במתודה:

    תודה!

    עזרה הדדית - אנדרואיד

  • בקשת מידע | תיקון הבאג של אפליקציות אחרונות בנגנים הסיניים
    ר ר יעקב עייפים

    @נחלס-דון זה לא שם.
    אני נראה לי מצאתי איפה זה כן.
    ב- AdbDebuggingManager.smali
    התוכן הוא :

    .class public Lcom/android/server/adb/AdbDebuggingManager;
    .super Ljava/lang/Object;
    .source "AdbDebuggingManager.java"
    
    
    # annotations
    .annotation system Ldalvik/annotation/MemberClasses;
        value = {
            Lcom/android/server/adb/AdbDebuggingManager$Ticker;,
            Lcom/android/server/adb/AdbDebuggingManager$AdbKeyStore;,
            Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;,
            Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;,
            Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;,
            Lcom/android/server/adb/AdbDebuggingManager$PortListenerImpl;,
            Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionPortPoller;,
            Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionPortListener;,
            Lcom/android/server/adb/AdbDebuggingManager$PairingThread;
        }
    .end annotation
    
    
    # static fields
    .field private static final ADBD_SOCKET:Ljava/lang/String; = "adbd"
    
    .field private static final ADB_DIRECTORY:Ljava/lang/String; = "misc/adb"
    
    .field private static final ADB_KEYS_FILE:Ljava/lang/String; = "adb_keys"
    
    .field private static final ADB_TEMP_KEYS_FILE:Ljava/lang/String; = "adb_temp_keys.xml"
    
    .field private static final BUFFER_SIZE:I = 0x10000
    
    .field private static final DEBUG:Z = false
    
    .field private static final MDNS_DEBUG:Z = false
    
    .field private static final PAIRING_CODE_LENGTH:I = 0x6
    
    .field private static final SYSTEM_TICKER:Lcom/android/server/adb/AdbDebuggingManager$Ticker;
    
    .field private static final TAG:Ljava/lang/String;
    
    .field private static final WIFI_PERSISTENT_CONFIG_PROPERTY:Ljava/lang/String; = "persist.adb.tls_server.enable"
    
    .field private static final WIFI_PERSISTENT_GUID:Ljava/lang/String; = "persist.adb.wifi.guid"
    
    
    # instance fields
    .field private mAdbConnectionInfo:Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
    
    .field private mAdbUsbEnabled:Z
    
    .field private mAdbWifiEnabled:Z
    
    .field private final mConfirmComponent:Ljava/lang/String;
    
    .field private final mConnectedKeys:Ljava/util/Map;
        .annotation system Ldalvik/annotation/Signature;
            value = {
                "Ljava/util/Map<",
                "Ljava/lang/String;",
                "Ljava/lang/Integer;",
                ">;"
            }
        .end annotation
    .end field
    
    .field private mConnectionPortPoller:Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionPortPoller;
    
    .field private final mContentResolver:Landroid/content/ContentResolver;
    
    .field private final mContext:Landroid/content/Context;
    
    .field private mFingerprints:Ljava/lang/String;
    
    .field final mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
    
    .field private mPairingThread:Lcom/android/server/adb/AdbDebuggingManager$PairingThread;
    
    .field private final mPortListener:Lcom/android/server/adb/AdbDebuggingManager$PortListenerImpl;
    
    .field private final mTempKeysFile:Ljava/io/File;
    
    .field private mThread:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;
    
    .field private final mTicker:Lcom/android/server/adb/AdbDebuggingManager$Ticker;
    
    .field private final mUserKeyFile:Ljava/io/File;
    
    .field private final mWifiConnectedKeys:Ljava/util/Set;
        .annotation system Ldalvik/annotation/Signature;
            value = {
                "Ljava/util/Set<",
                "Ljava/lang/String;",
                ">;"
            }
        .end annotation
    .end field
    
    
    # direct methods
    .method static bridge synthetic -$$Nest$fgetmAdbConnectionInfo(Lcom/android/server/adb/AdbDebuggingManager;)Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
        .registers 1
    
        iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbConnectionInfo:Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
    
        return-object p0
    .end method
    
    .method static bridge synthetic -$$Nest$fgetmAdbUsbEnabled(Lcom/android/server/adb/AdbDebuggingManager;)Z
        .registers 1
    
        iget-boolean p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbUsbEnabled:Z
    
        return p0
    .end method
    
    .method static bridge synthetic -$$Nest$fgetmAdbWifiEnabled(Lcom/android/server/adb/AdbDebuggingManager;)Z
        .registers 1
    
        iget-boolean p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbWifiEnabled:Z
    
        return p0
    .end method
    
    .method static bridge synthetic -$$Nest$fgetmConnectedKeys(Lcom/android/server/adb/AdbDebuggingManager;)Ljava/util/Map;
        .registers 1
    
        iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mConnectedKeys:Ljava/util/Map;
    
        return-object p0
    .end method
    
    .method static bridge synthetic -$$Nest$fgetmConnectionPortPoller(Lcom/android/server/adb/AdbDebuggingManager;)Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionPortPoller;
        .registers 1
    
        iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mConnectionPortPoller:Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionPortPoller;
    
        return-object p0
    .end method
    
    .method static bridge synthetic -$$Nest$fgetmContentResolver(Lcom/android/server/adb/AdbDebuggingManager;)Landroid/content/ContentResolver;
        .registers 1
    
        iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mContentResolver:Landroid/content/ContentResolver;
    
        return-object p0
    .end method
    
    .method static bridge synthetic -$$Nest$fgetmContext(Lcom/android/server/adb/AdbDebuggingManager;)Landroid/content/Context;
        .registers 1
    
        iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mContext:Landroid/content/Context;
    
        return-object p0
    .end method
    
    .method static bridge synthetic -$$Nest$fgetmFingerprints(Lcom/android/server/adb/AdbDebuggingManager;)Ljava/lang/String;
        .registers 1
    
        iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mFingerprints:Ljava/lang/String;
    
        return-object p0
    .end method
    
    .method static bridge synthetic -$$Nest$fgetmPairingThread(Lcom/android/server/adb/AdbDebuggingManager;)Lcom/android/server/adb/AdbDebuggingManager$PairingThread;
        .registers 1
    
        iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mPairingThread:Lcom/android/server/adb/AdbDebuggingManager$PairingThread;
    
        return-object p0
    .end method
    
    .method static bridge synthetic -$$Nest$fgetmPortListener(Lcom/android/server/adb/AdbDebuggingManager;)Lcom/android/server/adb/AdbDebuggingManager$PortListenerImpl;
        .registers 1
    
        iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mPortListener:Lcom/android/server/adb/AdbDebuggingManager$PortListenerImpl;
    
        return-object p0
    .end method
    
    .method static bridge synthetic -$$Nest$fgetmTempKeysFile(Lcom/android/server/adb/AdbDebuggingManager;)Ljava/io/File;
        .registers 1
    
        iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mTempKeysFile:Ljava/io/File;
    
        return-object p0
    .end method
    
    .method static bridge synthetic -$$Nest$fgetmThread(Lcom/android/server/adb/AdbDebuggingManager;)Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;
        .registers 1
    
        iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mThread:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;
    
        return-object p0
    .end method
    
    .method static bridge synthetic -$$Nest$fgetmTicker(Lcom/android/server/adb/AdbDebuggingManager;)Lcom/android/server/adb/AdbDebuggingManager$Ticker;
        .registers 1
    
        iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mTicker:Lcom/android/server/adb/AdbDebuggingManager$Ticker;
    
        return-object p0
    .end method
    
    .method static bridge synthetic -$$Nest$fgetmUserKeyFile(Lcom/android/server/adb/AdbDebuggingManager;)Ljava/io/File;
        .registers 1
    
        iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mUserKeyFile:Ljava/io/File;
    
        return-object p0
    .end method
    
    .method static bridge synthetic -$$Nest$fgetmWifiConnectedKeys(Lcom/android/server/adb/AdbDebuggingManager;)Ljava/util/Set;
        .registers 1
    
        iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mWifiConnectedKeys:Ljava/util/Set;
    
        return-object p0
    .end method
    
    .method static bridge synthetic -$$Nest$fputmAdbUsbEnabled(Lcom/android/server/adb/AdbDebuggingManager;Z)V
        .registers 2
    
        iput-boolean p1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbUsbEnabled:Z
    
        return-void
    .end method
    
    .method static bridge synthetic -$$Nest$fputmAdbWifiEnabled(Lcom/android/server/adb/AdbDebuggingManager;Z)V
        .registers 2
    
        iput-boolean p1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbWifiEnabled:Z
    
        return-void
    .end method
    
    .method static bridge synthetic -$$Nest$fputmConnectionPortPoller(Lcom/android/server/adb/AdbDebuggingManager;Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionPortPoller;)V
        .registers 2
    
        iput-object p1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mConnectionPortPoller:Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionPortPoller;
    
        return-void
    .end method
    
    .method static bridge synthetic -$$Nest$fputmFingerprints(Lcom/android/server/adb/AdbDebuggingManager;Ljava/lang/String;)V
        .registers 2
    
        iput-object p1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mFingerprints:Ljava/lang/String;
    
        return-void
    .end method
    
    .method static bridge synthetic -$$Nest$fputmPairingThread(Lcom/android/server/adb/AdbDebuggingManager;Lcom/android/server/adb/AdbDebuggingManager$PairingThread;)V
        .registers 2
    
        iput-object p1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mPairingThread:Lcom/android/server/adb/AdbDebuggingManager$PairingThread;
    
        return-void
    .end method
    
    .method static bridge synthetic -$$Nest$fputmThread(Lcom/android/server/adb/AdbDebuggingManager;Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;)V
        .registers 2
    
        iput-object p1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mThread:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;
    
        return-void
    .end method
    
    .method static bridge synthetic -$$Nest$mgetFingerprints(Lcom/android/server/adb/AdbDebuggingManager;Ljava/lang/String;)Ljava/lang/String;
        .registers 2
    
        invoke-direct {p0, p1}, Lcom/android/server/adb/AdbDebuggingManager;->getFingerprints(Ljava/lang/String;)Ljava/lang/String;
    
        move-result-object p0
    
        return-object p0
    .end method
    
    .method static bridge synthetic -$$Nest$msendPersistKeyStoreMessage(Lcom/android/server/adb/AdbDebuggingManager;)V
        .registers 1
    
        invoke-direct {p0}, Lcom/android/server/adb/AdbDebuggingManager;->sendPersistKeyStoreMessage()V
    
        return-void
    .end method
    
    .method static bridge synthetic -$$Nest$msetAdbConnectionInfo(Lcom/android/server/adb/AdbDebuggingManager;Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;)V
        .registers 2
    
        invoke-direct {p0, p1}, Lcom/android/server/adb/AdbDebuggingManager;->setAdbConnectionInfo(Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;)V
    
        return-void
    .end method
    
    .method static bridge synthetic -$$Nest$mstartConfirmationForKey(Lcom/android/server/adb/AdbDebuggingManager;Ljava/lang/String;Ljava/lang/String;)V
        .registers 3
    
        invoke-direct {p0, p1, p2}, Lcom/android/server/adb/AdbDebuggingManager;->startConfirmationForKey(Ljava/lang/String;Ljava/lang/String;)V
    
        return-void
    .end method
    
    .method static bridge synthetic -$$Nest$mstartConfirmationForNetwork(Lcom/android/server/adb/AdbDebuggingManager;Ljava/lang/String;Ljava/lang/String;)V
        .registers 3
    
        invoke-direct {p0, p1, p2}, Lcom/android/server/adb/AdbDebuggingManager;->startConfirmationForNetwork(Ljava/lang/String;Ljava/lang/String;)V
    
        return-void
    .end method
    
    .method static bridge synthetic -$$Nest$mwriteKeys(Lcom/android/server/adb/AdbDebuggingManager;Ljava/lang/Iterable;)V
        .registers 2
    
        invoke-direct {p0, p1}, Lcom/android/server/adb/AdbDebuggingManager;->writeKeys(Ljava/lang/Iterable;)V
    
        return-void
    .end method
    
    .method static bridge synthetic -$$Nest$sfgetTAG()Ljava/lang/String;
        .registers 1
    
        sget-object v0, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
    
        return-object v0
    .end method
    
    .method static constructor <clinit>()V
        .registers 1
    
        .line 124
        const-class v0, Lcom/android/server/adb/AdbDebuggingManager;
    
        invoke-virtual {v0}, Ljava/lang/Class;->getSimpleName()Ljava/lang/String;
    
        move-result-object v0
    
        sput-object v0, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
    
        .line 136
        new-instance v0, Lcom/android/server/adb/AdbDebuggingManager$$ExternalSyntheticLambda0;
    
        invoke-direct {v0}, Lcom/android/server/adb/AdbDebuggingManager$$ExternalSyntheticLambda0;-><init>()V
    
        sput-object v0, Lcom/android/server/adb/AdbDebuggingManager;->SYSTEM_TICKER:Lcom/android/server/adb/AdbDebuggingManager$Ticker;
    
        return-void
    .end method
    
    .method public constructor <init>(Landroid/content/Context;)V
        .registers 10
        .param p1, "context"    # Landroid/content/Context;
    
        .line 167
        nop
    
        .line 170
        const-string v0, "adb_keys"
    
        invoke-static {v0}, Lcom/android/server/adb/AdbDebuggingManager;->getAdbFile(Ljava/lang/String;)Ljava/io/File;
    
        move-result-object v4
    
        .line 171
        const-string v0, "adb_temp_keys.xml"
    
        invoke-static {v0}, Lcom/android/server/adb/AdbDebuggingManager;->getAdbFile(Ljava/lang/String;)Ljava/io/File;
    
        move-result-object v5
    
        sget-object v7, Lcom/android/server/adb/AdbDebuggingManager;->SYSTEM_TICKER:Lcom/android/server/adb/AdbDebuggingManager$Ticker;
    
        .line 167
        const/4 v3, 0x0
    
        const/4 v6, 0x0
    
        move-object v1, p0
    
        move-object v2, p1
    
        invoke-direct/range {v1 .. v7}, Lcom/android/server/adb/AdbDebuggingManager;-><init>(Landroid/content/Context;Ljava/lang/String;Ljava/io/File;Ljava/io/File;Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;Lcom/android/server/adb/AdbDebuggingManager$Ticker;)V
    
        .line 174
        return-void
    .end method
    
    .method constructor <init>(Landroid/content/Context;Ljava/lang/String;Ljava/io/File;Ljava/io/File;Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;Lcom/android/server/adb/AdbDebuggingManager$Ticker;)V
        .registers 10
        .param p1, "context"    # Landroid/content/Context;
        .param p2, "confirmComponent"    # Ljava/lang/String;
        .param p3, "testUserKeyFile"    # Ljava/io/File;
        .param p4, "tempKeysFile"    # Ljava/io/File;
        .param p5, "adbDebuggingThread"    # Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;
        .param p6, "ticker"    # Lcom/android/server/adb/AdbDebuggingManager$Ticker;
    
        .line 187
        invoke-direct {p0}, Ljava/lang/Object;-><init>()V
    
        .line 142
        const/4 v0, 0x0
    
        iput-boolean v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbUsbEnabled:Z
    
        .line 143
        iput-boolean v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbWifiEnabled:Z
    
        .line 146
        new-instance v0, Ljava/util/HashMap;
    
        invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
    
        iput-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mConnectedKeys:Ljava/util/Map;
    
        .line 156
        const/4 v0, 0x0
    
        iput-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mPairingThread:Lcom/android/server/adb/AdbDebuggingManager$PairingThread;
    
        .line 158
        new-instance v0, Ljava/util/HashSet;
    
        invoke-direct {v0}, Ljava/util/HashSet;-><init>()V
    
        iput-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mWifiConnectedKeys:Ljava/util/Set;
    
        .line 160
        new-instance v0, Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
    
        invoke-direct {v0}, Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;-><init>()V
    
        iput-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbConnectionInfo:Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
    
        .line 163
        new-instance v0, Lcom/android/server/adb/AdbDebuggingManager$PortListenerImpl;
    
        invoke-direct {v0, p0}, Lcom/android/server/adb/AdbDebuggingManager$PortListenerImpl;-><init>(Lcom/android/server/adb/AdbDebuggingManager;)V
    
        iput-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mPortListener:Lcom/android/server/adb/AdbDebuggingManager$PortListenerImpl;
    
        .line 188
        iput-object p1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mContext:Landroid/content/Context;
    
        .line 189
        invoke-virtual {p1}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
    
        move-result-object v0
    
        iput-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mContentResolver:Landroid/content/ContentResolver;
    
        .line 190
        iput-object p2, p0, Lcom/android/server/adb/AdbDebuggingManager;->mConfirmComponent:Ljava/lang/String;
    
        .line 191
        iput-object p3, p0, Lcom/android/server/adb/AdbDebuggingManager;->mUserKeyFile:Ljava/io/File;
    
        .line 192
        iput-object p4, p0, Lcom/android/server/adb/AdbDebuggingManager;->mTempKeysFile:Ljava/io/File;
    
        .line 193
        iput-object p5, p0, Lcom/android/server/adb/AdbDebuggingManager;->mThread:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;
    
        .line 194
        iput-object p6, p0, Lcom/android/server/adb/AdbDebuggingManager;->mTicker:Lcom/android/server/adb/AdbDebuggingManager$Ticker;
    
        .line 195
        new-instance v0, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
    
        invoke-static {}, Lcom/android/server/FgThread;->get()Lcom/android/server/FgThread;
    
        move-result-object v1
    
        invoke-virtual {v1}, Lcom/android/server/FgThread;->getLooper()Landroid/os/Looper;
    
        move-result-object v1
    
        iget-object v2, p0, Lcom/android/server/adb/AdbDebuggingManager;->mThread:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;
    
        invoke-direct {v0, p0, v1, v2}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;-><init>(Lcom/android/server/adb/AdbDebuggingManager;Landroid/os/Looper;Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;)V
    
        iput-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
    
        .line 196
        return-void
    .end method
    
    .method private createConfirmationIntent(Landroid/content/ComponentName;Ljava/util/List;)Landroid/content/Intent;
        .registers 8
        .param p1, "componentName"    # Landroid/content/ComponentName;
        .annotation system Ldalvik/annotation/Signature;
            value = {
                "(",
                "Landroid/content/ComponentName;",
                "Ljava/util/List<",
                "Ljava/util/Map$Entry<",
                "Ljava/lang/String;",
                "Ljava/lang/String;",
                ">;>;)",
                "Landroid/content/Intent;"
            }
        .end annotation
    
        .line 1563
        .local p2, "extras":Ljava/util/List;, "Ljava/util/List<Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;>;"
        new-instance v0, Landroid/content/Intent;
    
        invoke-direct {v0}, Landroid/content/Intent;-><init>()V
    
        .line 1564
        .local v0, "intent":Landroid/content/Intent;
        invoke-virtual {p1}, Landroid/content/ComponentName;->getPackageName()Ljava/lang/String;
    
        move-result-object v1
    
        invoke-virtual {p1}, Landroid/content/ComponentName;->getClassName()Ljava/lang/String;
    
        move-result-object v2
    
        invoke-virtual {v0, v1, v2}, Landroid/content/Intent;->setClassName(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
    
        .line 1565
        invoke-interface {p2}, Ljava/util/List;->iterator()Ljava/util/Iterator;
    
        move-result-object v1
    
        :goto_14
        invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
    
        move-result v2
    
        if-eqz v2, :cond_30
    
        invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
    
        move-result-object v2
    
        check-cast v2, Ljava/util/Map$Entry;
    
        .line 1566
        .local v2, "entry":Ljava/util/Map$Entry;, "Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;"
        invoke-interface {v2}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object;
    
        move-result-object v3
    
        check-cast v3, Ljava/lang/String;
    
        invoke-interface {v2}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
    
        move-result-object v4
    
        check-cast v4, Ljava/lang/String;
    
        invoke-virtual {v0, v3, v4}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
    
        .line 1567
        .end local v2    # "entry":Ljava/util/Map$Entry;, "Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;"
        goto :goto_14
    
        .line 1568
        :cond_30
        return-object v0
    .end method
    
    .method private getAdbConnectionInfo()Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
        .registers 4
    
        .line 626
        iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbConnectionInfo:Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
    
        monitor-enter v0
    
        .line 627
        :try_start_3
        new-instance v1, Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
    
        iget-object v2, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbConnectionInfo:Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
    
        invoke-direct {v1, v2}, Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;-><init>(Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;)V
    
        monitor-exit v0
    
        return-object v1
    
        .line 628
        :catchall_c
        move-exception v1
    
        monitor-exit v0
        :try_end_e
        .catchall {:try_start_3 .. :try_end_e} :catchall_c
    
        throw v1
    .end method
    
    .method private static getAdbFile(Ljava/lang/String;)Ljava/io/File;
        .registers 5
        .param p0, "fileName"    # Ljava/lang/String;
    
        .line 1575
        invoke-static {}, Landroid/os/Environment;->getDataDirectory()Ljava/io/File;
    
        move-result-object v0
    
        .line 1576
        .local v0, "dataDir":Ljava/io/File;
        new-instance v1, Ljava/io/File;
    
        const-string/jumbo v2, "misc/adb"
    
        invoke-direct {v1, v0, v2}, Ljava/io/File;-><init>(Ljava/io/File;Ljava/lang/String;)V
    
        .line 1578
        .local v1, "adbDir":Ljava/io/File;
        invoke-virtual {v1}, Ljava/io/File;->exists()Z
    
        move-result v2
    
        if-nez v2, :cond_1b
    
        .line 1579
        sget-object v2, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
    
        const-string v3, "ADB data directory does not exist"
    
        invoke-static {v2, v3}, Landroid/util/Slog;->e(Ljava/lang/String;Ljava/lang/String;)I
    
        .line 1580
        const/4 v2, 0x0
    
        return-object v2
    
        .line 1583
        :cond_1b
        new-instance v2, Ljava/io/File;
    
        invoke-direct {v2, v1, p0}, Ljava/io/File;-><init>(Ljava/io/File;Ljava/lang/String;)V
    
        return-object v2
    .end method
    
    .method private getFingerprints(Ljava/lang/String;)Ljava/lang/String;
        .registers 10
        .param p1, "key"    # Ljava/lang/String;
    
        .line 1448
        const-string v0, "0123456789ABCDEF"
    
        .line 1449
        .local v0, "hex":Ljava/lang/String;
        new-instance v1, Ljava/lang/StringBuilder;
    
        invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
    
        .line 1452
        .local v1, "sb":Ljava/lang/StringBuilder;
        const-string v2, ""
    
        if-nez p1, :cond_c
    
        .line 1453
        return-object v2
    
        .line 1457
        :cond_c
        :try_start_c
        const-string v3, "MD5"
    
        invoke-static {v3}, Ljava/security/MessageDigest;->getInstance(Ljava/lang/String;)Ljava/security/MessageDigest;
    
        move-result-object v3
        :try_end_12
        .catch Ljava/lang/Exception; {:try_start_c .. :try_end_12} :catch_60
    
        .line 1461
        .local v3, "digester":Ljava/security/MessageDigest;
        nop
    
        .line 1463
        const-string v4, "\\s+"
    
        invoke-virtual {p1, v4}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String;
    
        move-result-object v4
    
        const/4 v5, 0x0
    
        aget-object v4, v4, v5
    
        invoke-virtual {v4}, Ljava/lang/String;->getBytes()[B
    
        move-result-object v4
    
        .line 1466
        .local v4, "base64_data":[B
        :try_start_20
        invoke-static {v4, v5}, Landroid/util/Base64;->decode([BI)[B
    
        move-result-object v5
    
        invoke-virtual {v3, v5}, Ljava/security/MessageDigest;->digest([B)[B
    
        move-result-object v2
        :try_end_28
        .catch Ljava/lang/IllegalArgumentException; {:try_start_20 .. :try_end_28} :catch_57
    
        .line 1470
        .local v2, "digest":[B
        nop
    
        .line 1471
        const/4 v5, 0x0
    
        .local v5, "i":I
        :goto_2a
        array-length v6, v2
    
        if-ge v5, v6, :cond_52
    
        .line 1472
        aget-byte v6, v2, v5
    
        shr-int/lit8 v6, v6, 0x4
    
        and-int/lit8 v6, v6, 0xf
    
        invoke-virtual {v0, v6}, Ljava/lang/String;->charAt(I)C
    
        move-result v6
    
        invoke-virtual {v1, v6}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
    
        .line 1473
        aget-byte v6, v2, v5
    
        and-int/lit8 v6, v6, 0xf
    
        invoke-virtual {v0, v6}, Ljava/lang/String;->charAt(I)C
    
        move-result v6
    
        invoke-virtual {v1, v6}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
    
        .line 1474
        array-length v6, v2
    
        add-int/lit8 v6, v6, -0x1
    
        if-ge v5, v6, :cond_4f
    
        .line 1475
        const-string v6, ":"
    
        invoke-virtual {v1, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    
        .line 1471
        :cond_4f
        add-int/lit8 v5, v5, 0x1
    
        goto :goto_2a
    
        .line 1478
        .end local v5    # "i":I
        :cond_52
        invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
    
        move-result-object v5
    
        return-object v5
    
        .line 1467
        .end local v2    # "digest":[B
        :catch_57
        move-exception v5
    
        .line 1468
        .local v5, "e":Ljava/lang/IllegalArgumentException;
        sget-object v6, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
    
        const-string v7, "error doing base64 decoding"
    
        invoke-static {v6, v7, v5}, Landroid/util/Slog;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
    
        .line 1469
        return-object v2
    
        .line 1458
        .end local v3    # "digester":Ljava/security/MessageDigest;
        .end local v4    # "base64_data":[B
        .end local v5    # "e":Ljava/lang/IllegalArgumentException;
        :catch_60
        move-exception v3
    
        .line 1459
        .local v3, "ex":Ljava/lang/Exception;
        sget-object v4, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
    
        const-string v5, "Error getting digester"
    
        invoke-static {v4, v5, v3}, Landroid/util/Slog;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
    
        .line 1460
        return-object v2
    .end method
    
    .method static synthetic lambda$static$0()J
        .registers 2
    
        .line 136
        invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
    
        move-result-wide v0
    
        return-wide v0
    .end method
    
    .method static sendBroadcastWithDebugPermission(Landroid/content/Context;Landroid/content/Intent;Landroid/os/UserHandle;)V
        .registers 4
        .param p0, "context"    # Landroid/content/Context;
        .param p1, "intent"    # Landroid/content/Intent;
        .param p2, "userHandle"    # Landroid/os/UserHandle;
    
        .line 200
        const-string v0, "android.permission.MANAGE_DEBUGGING"
    
        invoke-virtual {p0, p1, p2, v0}, Landroid/content/Context;->sendBroadcastAsUser(Landroid/content/Intent;Landroid/os/UserHandle;Ljava/lang/String;)V
    
        .line 202
        return-void
    .end method
    
    .method private sendPersistKeyStoreMessage()V
        .registers 3
    
        .line 1758
        iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
    
        const/16 v1, 0x8
    
        invoke-virtual {v0, v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->obtainMessage(I)Landroid/os/Message;
    
        move-result-object v0
    
        .line 1759
        .local v0, "msg":Landroid/os/Message;
        iget-object v1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
    
        invoke-virtual {v1, v0}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendMessage(Landroid/os/Message;)Z
    
        .line 1760
        return-void
    .end method
    
    .method private setAdbConnectionInfo(Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;)V
        .registers 4
        .param p1, "info"    # Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
    
        .line 616
        iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbConnectionInfo:Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
    
        monitor-enter v0
    
        .line 617
        if-nez p1, :cond_c
    
        .line 618
        :try_start_5
        iget-object v1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbConnectionInfo:Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
    
        invoke-virtual {v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;->clear()V
    
        .line 619
        monitor-exit v0
    
        return-void
    
        .line 621
        :cond_c
        iput-object p1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbConnectionInfo:Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
    
        .line 622
        monitor-exit v0
    
        .line 623
        return-void
    
        .line 622
        :catchall_10
        move-exception v1
    
        monitor-exit v0
        :try_end_12
        .catchall {:try_start_5 .. :try_end_12} :catchall_10
    
        throw v1
    .end method
    
    .method private startConfirmationActivity(Landroid/content/ComponentName;Landroid/os/UserHandle;Ljava/util/List;)Z
        .registers 10
        .param p1, "componentName"    # Landroid/content/ComponentName;
        .param p2, "userHandle"    # Landroid/os/UserHandle;
        .annotation system Ldalvik/annotation/Signature;
            value = {
                "(",
                "Landroid/content/ComponentName;",
                "Landroid/os/UserHandle;",
                "Ljava/util/List<",
                "Ljava/util/Map$Entry<",
                "Ljava/lang/String;",
                "Ljava/lang/String;",
                ">;>;)Z"
            }
        .end annotation
    
        .line 1531
        .local p3, "extras":Ljava/util/List;, "Ljava/util/List<Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;>;"
        iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mContext:Landroid/content/Context;
    
        invoke-virtual {v0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
    
        move-result-object v0
    
        .line 1532
        .local v0, "packageManager":Landroid/content/pm/PackageManager;
        invoke-direct {p0, p1, p3}, Lcom/android/server/adb/AdbDebuggingManager;->createConfirmationIntent(Landroid/content/ComponentName;Ljava/util/List;)Landroid/content/Intent;
    
        move-result-object v1
    
        .line 1533
        .local v1, "intent":Landroid/content/Intent;
        const/high16 v2, 0x10000000
    
        invoke-virtual {v1, v2}, Landroid/content/Intent;->addFlags(I)Landroid/content/Intent;
    
        .line 1534
        const/high16 v2, 0x10000
    
        invoke-virtual {v0, v1, v2}, Landroid/content/pm/PackageManager;->resolveActivity(Landroid/content/Intent;I)Landroid/content/pm/ResolveInfo;
    
        move-result-object v2
    
        if-eqz v2, :cond_38
    
        .line 1536
        :try_start_17
        iget-object v2, p0, Lcom/android/server/adb/AdbDebuggingManager;->mContext:Landroid/content/Context;
    
        invoke-virtual {v2, v1, p2}, Landroid/content/Context;->startActivityAsUser(Landroid/content/Intent;Landroid/os/UserHandle;)V
        :try_end_1c
        .catch Landroid/content/ActivityNotFoundException; {:try_start_17 .. :try_end_1c} :catch_1e
    
        .line 1537
        const/4 v2, 0x1
    
        return v2
    
        .line 1538
        :catch_1e
        move-exception v2
    
        .line 1539
        .local v2, "e":Landroid/content/ActivityNotFoundException;
        sget-object v3, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
    
        new-instance v4, Ljava/lang/StringBuilder;
    
        invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
    
        const-string/jumbo v5, "unable to start adb whitelist activity: "
    
        invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    
        move-result-object v4
    
        invoke-virtual {v4, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
    
        move-result-object v4
    
        invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
    
        move-result-object v4
    
        invoke-static {v3, v4, v2}, Landroid/util/Slog;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
    
        .line 1542
        .end local v2    # "e":Landroid/content/ActivityNotFoundException;
        :cond_38
        const/4 v2, 0x0
    
        return v2
    .end method
    
    .method private startConfirmationForKey(Ljava/lang/String;Ljava/lang/String;)V
        .registers 11
        .param p1, "key"    # Ljava/lang/String;
        .param p2, "fingerprints"    # Ljava/lang/String;
    
        .line 1500
        new-instance v0, Ljava/util/ArrayList;
    
        invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
    
        .line 1501
        .local v0, "extras":Ljava/util/List;, "Ljava/util/List<Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;>;"
        new-instance v1, Ljava/util/AbstractMap$SimpleEntry;
    
        const-string/jumbo v2, "key"
    
        invoke-direct {v1, v2, p1}, Ljava/util/AbstractMap$SimpleEntry;-><init>(Ljava/lang/Object;Ljava/lang/Object;)V
    
        invoke-interface {v0, v1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
    
        .line 1502
        new-instance v1, Ljava/util/AbstractMap$SimpleEntry;
    
        const-string v2, "fingerprints"
    
        invoke-direct {v1, v2, p2}, Ljava/util/AbstractMap$SimpleEntry;-><init>(Ljava/lang/Object;Ljava/lang/Object;)V
    
        invoke-interface {v0, v1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
    
        .line 1503
        invoke-static {}, Landroid/app/ActivityManager;->getCurrentUser()I
    
        move-result v1
    
        .line 1504
        .local v1, "currentUserId":I
        iget-object v2, p0, Lcom/android/server/adb/AdbDebuggingManager;->mContext:Landroid/content/Context;
    
        invoke-static {v2}, Landroid/os/UserManager;->get(Landroid/content/Context;)Landroid/os/UserManager;
    
        move-result-object v2
    
        invoke-virtual {v2, v1}, Landroid/os/UserManager;->getUserInfo(I)Landroid/content/pm/UserInfo;
    
        move-result-object v2
    
        .line 1506
        .local v2, "userInfo":Landroid/content/pm/UserInfo;
        invoke-virtual {v2}, Landroid/content/pm/UserInfo;->isAdmin()Z
    
        move-result v3
    
        if-eqz v3, :cond_3f
    
        .line 1507
        iget-object v3, p0, Lcom/android/server/adb/AdbDebuggingManager;->mConfirmComponent:Ljava/lang/String;
    
        if-eqz v3, :cond_33
    
        .line 1508
        goto :goto_3e
    
        :cond_33
        invoke-static {}, Landroid/content/res/Resources;->getSystem()Landroid/content/res/Resources;
    
        move-result-object v3
    
        const v4, 0x1040221
    
        invoke-virtual {v3, v4}, Landroid/content/res/Resources;->getString(I)Ljava/lang/String;
    
        move-result-object v3
    
        .local v3, "componentString":Ljava/lang/String;
        :goto_3e
        goto :goto_4a
    
        .line 1513
        .end local v3    # "componentString":Ljava/lang/String;
        :cond_3f
        invoke-static {}, Landroid/content/res/Resources;->getSystem()Landroid/content/res/Resources;
    
        move-result-object v3
    
        const v4, 0x1040222
    
        invoke-virtual {v3, v4}, Landroid/content/res/Resources;->getString(I)Ljava/lang/String;
    
        move-result-object v3
    
        .line 1516
        .restart local v3    # "componentString":Ljava/lang/String;
        :goto_4a
        invoke-static {v3}, Landroid/content/ComponentName;->unflattenFromString(Ljava/lang/String;)Landroid/content/ComponentName;
    
        move-result-object v4
    
        .line 1517
        .local v4, "componentName":Landroid/content/ComponentName;
        invoke-virtual {v2}, Landroid/content/pm/UserInfo;->getUserHandle()Landroid/os/UserHandle;
    
        move-result-object v5
    
        invoke-direct {p0, v4, v5, v0}, Lcom/android/server/adb/AdbDebuggingManager;->startConfirmationActivity(Landroid/content/ComponentName;Landroid/os/UserHandle;Ljava/util/List;)Z
    
        move-result v5
    
        if-nez v5, :cond_83
    
        .line 1518
        invoke-virtual {v2}, Landroid/content/pm/UserInfo;->getUserHandle()Landroid/os/UserHandle;
    
        move-result-object v5
    
        invoke-direct {p0, v4, v5, v0}, Lcom/android/server/adb/AdbDebuggingManager;->startConfirmationService(Landroid/content/ComponentName;Landroid/os/UserHandle;Ljava/util/List;)Z
    
        move-result v5
    
        if-eqz v5, :cond_63
    
        goto :goto_83
    
        .line 1522
        :cond_63
        sget-object v5, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
    
        new-instance v6, Ljava/lang/StringBuilder;
    
        invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
    
        const-string/jumbo v7, "unable to start customAdbPublicKeyConfirmation[SecondaryUser]Component "
    
        invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    
        move-result-object v6
    
        invoke-virtual {v6, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    
        move-result-object v6
    
        const-string v7, " as an Activity or a Service"
    
        invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    
        move-result-object v6
    
        invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
    
        move-result-object v6
    
        invoke-static {v5, v6}, Landroid/util/Slog;->e(Ljava/lang/String;Ljava/lang/String;)I
    
        .line 1524
        return-void
    
        .line 1520
        :cond_83
        :goto_83
        return-void
    .end method
    
    .method private startConfirmationForNetwork(Ljava/lang/String;Ljava/lang/String;)V
        .registers 11
        .param p1, "ssid"    # Ljava/lang/String;
        .param p2, "bssid"    # Ljava/lang/String;
    
        .line 1482
        new-instance v0, Ljava/util/ArrayList;
    
        invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
    
        .line 1483
        .local v0, "extras":Ljava/util/List;, "Ljava/util/List<Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;>;"
        new-instance v1, Ljava/util/AbstractMap$SimpleEntry;
    
        const-string/jumbo v2, "ssid"
    
        invoke-direct {v1, v2, p1}, Ljava/util/AbstractMap$SimpleEntry;-><init>(Ljava/lang/Object;Ljava/lang/Object;)V
    
        invoke-interface {v0, v1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
    
        .line 1484
        new-instance v1, Ljava/util/AbstractMap$SimpleEntry;
    
        const-string v2, "bssid"
    
        invoke-direct {v1, v2, p2}, Ljava/util/AbstractMap$SimpleEntry;-><init>(Ljava/lang/Object;Ljava/lang/Object;)V
    
        invoke-interface {v0, v1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
    
        .line 1485
        invoke-static {}, Landroid/app/ActivityManager;->getCurrentUser()I
    
        move-result v1
    
        .line 1487
        .local v1, "currentUserId":I
        invoke-static {}, Landroid/content/res/Resources;->getSystem()Landroid/content/res/Resources;
    
        move-result-object v2
    
        const v3, 0x1040223
    
        invoke-virtual {v2, v3}, Landroid/content/res/Resources;->getString(I)Ljava/lang/String;
    
        move-result-object v2
    
        .line 1489
        .local v2, "componentString":Ljava/lang/String;
        invoke-static {v2}, Landroid/content/ComponentName;->unflattenFromString(Ljava/lang/String;)Landroid/content/ComponentName;
    
        move-result-object v3
    
        .line 1490
        .local v3, "componentName":Landroid/content/ComponentName;
        iget-object v4, p0, Lcom/android/server/adb/AdbDebuggingManager;->mContext:Landroid/content/Context;
    
        invoke-static {v4}, Landroid/os/UserManager;->get(Landroid/content/Context;)Landroid/os/UserManager;
    
        move-result-object v4
    
        invoke-virtual {v4, v1}, Landroid/os/UserManager;->getUserInfo(I)Landroid/content/pm/UserInfo;
    
        move-result-object v4
    
        .line 1491
        .local v4, "userInfo":Landroid/content/pm/UserInfo;
        invoke-virtual {v4}, Landroid/content/pm/UserInfo;->getUserHandle()Landroid/os/UserHandle;
    
        move-result-object v5
    
        invoke-direct {p0, v3, v5, v0}, Lcom/android/server/adb/AdbDebuggingManager;->startConfirmationActivity(Landroid/content/ComponentName;Landroid/os/UserHandle;Ljava/util/List;)Z
    
        move-result v5
    
        if-nez v5, :cond_6b
    
        .line 1492
        invoke-virtual {v4}, Landroid/content/pm/UserInfo;->getUserHandle()Landroid/os/UserHandle;
    
        move-result-object v5
    
        invoke-direct {p0, v3, v5, v0}, Lcom/android/server/adb/AdbDebuggingManager;->startConfirmationService(Landroid/content/ComponentName;Landroid/os/UserHandle;Ljava/util/List;)Z
    
        move-result v5
    
        if-eqz v5, :cond_4c
    
        goto :goto_6b
    
        .line 1495
        :cond_4c
        sget-object v5, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
    
        new-instance v6, Ljava/lang/StringBuilder;
    
        invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
    
        const-string v7, "Unable to start customAdbWifiNetworkConfirmation[SecondaryUser]Component "
    
        invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    
        move-result-object v6
    
        invoke-virtual {v6, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    
        move-result-object v6
    
        const-string v7, " as an Activity or a Service"
    
        invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    
        move-result-object v6
    
        invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
    
        move-result-object v6
    
        invoke-static {v5, v6}, Landroid/util/Slog;->e(Ljava/lang/String;Ljava/lang/String;)I
    
        .line 1497
        return-void
    
        .line 1493
        :cond_6b
        :goto_6b
        return-void
    .end method
    
    .method private startConfirmationService(Landroid/content/ComponentName;Landroid/os/UserHandle;Ljava/util/List;)Z
        .registers 9
        .param p1, "componentName"    # Landroid/content/ComponentName;
        .param p2, "userHandle"    # Landroid/os/UserHandle;
        .annotation system Ldalvik/annotation/Signature;
            value = {
                "(",
                "Landroid/content/ComponentName;",
                "Landroid/os/UserHandle;",
                "Ljava/util/List<",
                "Ljava/util/Map$Entry<",
                "Ljava/lang/String;",
                "Ljava/lang/String;",
                ">;>;)Z"
            }
        .end annotation
    
        .line 1550
        .local p3, "extras":Ljava/util/List;, "Ljava/util/List<Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;>;"
        invoke-direct {p0, p1, p3}, Lcom/android/server/adb/AdbDebuggingManager;->createConfirmationIntent(Landroid/content/ComponentName;Ljava/util/List;)Landroid/content/Intent;
    
        move-result-object v0
    
        .line 1552
        .local v0, "intent":Landroid/content/Intent;
        :try_start_4
        iget-object v1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mContext:Landroid/content/Context;
    
        invoke-virtual {v1, v0, p2}, Landroid/content/Context;->startServiceAsUser(Landroid/content/Intent;Landroid/os/UserHandle;)Landroid/content/ComponentName;
    
        move-result-object v1
        :try_end_a
        .catch Ljava/lang/SecurityException; {:try_start_4 .. :try_end_a} :catch_f
    
        if-eqz v1, :cond_e
    
        .line 1553
        const/4 v1, 0x1
    
        return v1
    
        .line 1557
        :cond_e
        goto :goto_29
    
        .line 1555
        :catch_f
        move-exception v1
    
        .line 1556
        .local v1, "e":Ljava/lang/SecurityException;
        sget-object v2, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
    
        new-instance v3, Ljava/lang/StringBuilder;
    
        invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
    
        const-string/jumbo v4, "unable to start adb whitelist service: "
    
        invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    
        move-result-object v3
    
        invoke-virtual {v3, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
    
        move-result-object v3
    
        invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
    
        move-result-object v3
    
        invoke-static {v2, v3, v1}, Landroid/util/Slog;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
    
        .line 1558
        .end local v1    # "e":Ljava/lang/SecurityException;
        :goto_29
        const/4 v1, 0x0
    
        return v1
    .end method
    
    .method private writeKeys(Ljava/lang/Iterable;)V
        .registers 8
        .annotation system Ldalvik/annotation/Signature;
            value = {
                "(",
                "Ljava/lang/Iterable<",
                "Ljava/lang/String;",
                ">;)V"
            }
        .end annotation
    
        .line 1595
        .local p1, "keys":Ljava/lang/Iterable;, "Ljava/lang/Iterable<Ljava/lang/String;>;"
        iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mUserKeyFile:Ljava/io/File;
    
        if-nez v0, :cond_5
    
        .line 1596
        return-void
    
        .line 1599
        :cond_5
        new-instance v0, Landroid/util/AtomicFile;
    
        iget-object v1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mUserKeyFile:Ljava/io/File;
    
        invoke-direct {v0, v1}, Landroid/util/AtomicFile;-><init>(Ljava/io/File;)V
    
        .line 1602
        .local v0, "atomicKeyFile":Landroid/util/AtomicFile;
        const/4 v1, 0x0
    
        .line 1604
        .local v1, "fo":Ljava/io/FileOutputStream;
        :try_start_d
        invoke-virtual {v0}, Landroid/util/AtomicFile;->startWrite()Ljava/io/FileOutputStream;
    
        move-result-object v2
    
        move-object v1, v2
    
        .line 1605
        invoke-interface {p1}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator;
    
        move-result-object v2
    
        :goto_16
        invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
    
        move-result v3
    
        if-eqz v3, :cond_2f
    
        invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
    
        move-result-object v3
    
        check-cast v3, Ljava/lang/String;
    
        .line 1606
        .local v3, "key":Ljava/lang/String;
        invoke-virtual {v3}, Ljava/lang/String;->getBytes()[B
    
        move-result-object v4
    
        invoke-virtual {v1, v4}, Ljava/io/FileOutputStream;->write([B)V
    
        .line 1607
        const/16 v4, 0xa
    
        invoke-virtual {v1, v4}, Ljava/io/FileOutputStream;->write(I)V
    
        .line 1608
        .end local v3    # "key":Ljava/lang/String;
        goto :goto_16
    
        .line 1609
        :cond_2f
        invoke-virtual {v0, v1}, Landroid/util/AtomicFile;->finishWrite(Ljava/io/FileOutputStream;)V
        :try_end_32
        .catch Ljava/io/IOException; {:try_start_d .. :try_end_32} :catch_40
    
        .line 1614
        nop
    
        .line 1616
        iget-object v2, p0, Lcom/android/server/adb/AdbDebuggingManager;->mUserKeyFile:Ljava/io/File;
    
        .line 1617
        invoke-virtual {v2}, Ljava/io/File;->toString()Ljava/lang/String;
    
        move-result-object v2
    
        const/16 v3, 0x1a0
    
        .line 1616
        const/4 v4, -0x1
    
        invoke-static {v2, v3, v4, v4}, Landroid/os/FileUtils;->setPermissions(Ljava/lang/String;III)I
    
        .line 1619
        return-void
    
        .line 1610
        :catch_40
        move-exception v2
    
        .line 1611
        .local v2, "ex":Ljava/io/IOException;
        sget-object v3, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
    
        new-instance v4, Ljava/lang/StringBuilder;
    
        invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
    
        const-string v5, "Error writing keys: "
    
        invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    
        move-result-object v4
    
        invoke-virtual {v4, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
    
        move-result-object v4
    
        invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
    
        move-result-object v4
    
        invoke-static {v3, v4}, Landroid/util/Slog;->e(Ljava/lang/String;Ljava/lang/String;)I
    
        .line 1612
        invoke-virtual {v0, v1}, Landroid/util/AtomicFile;->failWrite(Ljava/io/FileOutputStream;)V
    
        .line 1613
        return-void
    .end method
    
    
    # virtual methods
    .method public allowDebugging(ZLjava/lang/String;)V
        .registers 5
        .param p1, "alwaysAllow"    # Z
        .param p2, "publicKey"    # Ljava/lang/String;
    
        .line 1645
        iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
    
        const/4 v1, 0x3
    
        invoke-virtual {v0, v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->obtainMessage(I)Landroid/os/Message;
    
        move-result-object v0
    
        .line 1646
        .local v0, "msg":Landroid/os/Message;
        iput p1, v0, Landroid/os/Message;->arg1:I
    
        .line 1647
        iput-object p2, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
    
        .line 1648
        iget-object v1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
    
        invoke-virtual {v1, v0}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendMessage(Landroid/os/Message;)Z
    
        .line 1649
        return-void
    .end method
    
    .method public allowWirelessDebugging(ZLjava/lang/String;)V
        .registers 5
        .param p1, "alwaysAllow"    # Z
        .param p2, "bssid"    # Ljava/lang/String;
    
        .line 1671
        iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
    
        const/16 v1, 0x12
    
        invoke-virtual {v0, v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->obtainMessage(I)Landroid/os/Message;
    
        move-result-object v0
    
        .line 1672
        .local v0, "msg":Landroid/os/Message;
        iput p1, v0, Landroid/os/Message;->arg1:I
    
        .line 1673
        iput-object p2, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
    
        .line 1674
        iget-object v1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
    
        invoke-virtual {v1, v0}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendMessage(Landroid/os/Message;)Z
    
        .line 1675
        return-void
    .end method
    
    .method public clearDebuggingKeys()V
        .registers 3
    
        .line 1663
        iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
    
        const/4 v1, 0x6
    
        invoke-virtual {v0, v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendEmptyMessage(I)Z
    
        .line 1664
        return-void
    .end method
    
    .method public denyDebugging()V
        .registers 3
    
        .line 1655
        iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
    
        const/4 v1, 0x4
    
        invoke-virtual {v0, v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendEmptyMessage(I)Z
    
        .line 1656
        return-void
    .end method
    
    .method public denyWirelessDebugging()V
        .registers 3
    
        .line 1681
        iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
    
        const/16 v1, 0x13
    
        invoke-virtual {v0, v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendEmptyMessage(I)Z
    
        .line 1682
        return-void
    .end method
    
    .method public disablePairing()V
        .registers 3
    
        .line 1737
        iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
    
        const/16 v1, 0xe
    
        invoke-virtual {v0, v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendEmptyMessage(I)Z
    
        .line 1738
        return-void
    .end method
    
    .method public dump(Lcom/android/internal/util/dump/DualDumpOutputStream;Ljava/lang/String;J)V
        .registers 14
        .param p1, "dump"    # Lcom/android/internal/util/dump/DualDumpOutputStream;
        .param p2, "idName"    # Ljava/lang/String;
        .param p3, "id"    # J
    
        .line 1766
        invoke-virtual {p1, p2, p3, p4}, Lcom/android/internal/util/dump/DualDumpOutputStream;->start(Ljava/lang/String;J)J
    
        move-result-wide v0
    
        .line 1768
        .local v0, "token":J
        iget-object v2, p0, Lcom/android/server/adb/AdbDebuggingManager;->mThread:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;
    
        const/4 v3, 0x0
    
        if-eqz v2, :cond_b
    
        const/4 v2, 0x1
    
        goto :goto_c
    
        :cond_b
        move v2, v3
    
        :goto_c
        const-string v4, "connected_to_adb"
    
        const-wide v5, 0x10800000001L
    
        invoke-virtual {p1, v4, v5, v6, v2}, Lcom/android/internal/util/dump/DualDumpOutputStream;->write(Ljava/lang/String;JZ)V
    
        .line 1769
        const-wide v4, 0x10900000002L
    
        iget-object v2, p0, Lcom/android/server/adb/AdbDebuggingManager;->mFingerprints:Ljava/lang/String;
    
        const-string/jumbo v6, "last_key_received"
    
        invoke-static {p1, v6, v4, v5, v2}, Lcom/android/internal/util/dump/DumpUtils;->writeStringIfNotNull(Lcom/android/internal/util/dump/DualDumpOutputStream;Ljava/lang/String;JLjava/lang/String;)V
    
        .line 1773
        const/4 v2, 0x0
    
        :try_start_24
        const-string/jumbo v4, "user_keys"
    
        const-wide v5, 0x10900000003L
    
        new-instance v7, Ljava/io/File;
    
        const-string v8, "/data/misc/adb/adb_keys"
    
        invoke-direct {v7, v8}, Ljava/io/File;-><init>(Ljava/lang/String;)V
    
        .line 1774
        invoke-static {v7, v3, v2}, Landroid/os/FileUtils;->readTextFile(Ljava/io/File;ILjava/lang/String;)Ljava/lang/String;
    
        move-result-object v7
    
        .line 1773
        invoke-virtual {p1, v4, v5, v6, v7}, Lcom/android/internal/util/dump/DualDumpOutputStream;->write(Ljava/lang/String;JLjava/lang/String;)V
        :try_end_3a
        .catch Ljava/io/IOException; {:try_start_24 .. :try_end_3a} :catch_3b
    
        .line 1777
        goto :goto_43
    
        .line 1775
        :catch_3b
        move-exception v4
    
        .line 1776
        .local v4, "e":Ljava/io/IOException;
        sget-object v5, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
    
        const-string v6, "Cannot read user keys"
    
        invoke-static {v5, v6, v4}, Landroid/util/Slog;->i(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
    
        .line 1780
        .end local v4    # "e":Ljava/io/IOException;
        :goto_43
        :try_start_43
        const-string/jumbo v4, "system_keys"
    
        const-wide v5, 0x10900000004L
    
        new-instance v7, Ljava/io/File;
    
        const-string v8, "/adb_keys"
    
        invoke-direct {v7, v8}, Ljava/io/File;-><init>(Ljava/lang/String;)V
    
        .line 1781
        invoke-static {v7, v3, v2}, Landroid/os/FileUtils;->readTextFile(Ljava/io/File;ILjava/lang/String;)Ljava/lang/String;
    
        move-result-object v7
    
        .line 1780
        invoke-virtual {p1, v4, v5, v6, v7}, Lcom/android/internal/util/dump/DualDumpOutputStream;->write(Ljava/lang/String;JLjava/lang/String;)V
        :try_end_59
        .catch Ljava/io/IOException; {:try_start_43 .. :try_end_59} :catch_5a
    
        .line 1784
        goto :goto_62
    
        .line 1782
        :catch_5a
        move-exception v4
    
        .line 1783
        .restart local v4    # "e":Ljava/io/IOException;
        sget-object v5, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
    
        const-string v6, "Cannot read system keys"
    
        invoke-static {v5, v6, v4}, Landroid/util/Slog;->i(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
    
        .line 1787
        .end local v4    # "e":Ljava/io/IOException;
        :goto_62
        :try_start_62
        const-string/jumbo v4, "keystore"
    
        const-wide v5, 0x10900000005L
    
        iget-object v7, p0, Lcom/android/server/adb/AdbDebuggingManager;->mTempKeysFile:Ljava/io/File;
    
        .line 1788
        invoke-static {v7, v3, v2}, Landroid/os/FileUtils;->readTextFile(Ljava/io/File;ILjava/lang/String;)Ljava/lang/String;
    
        move-result-object v2
    
        .line 1787
        invoke-virtual {p1, v4, v5, v6, v2}, Lcom/android/internal/util/dump/DualDumpOutputStream;->write(Ljava/lang/String;JLjava/lang/String;)V
        :try_end_73
        .catch Ljava/io/IOException; {:try_start_62 .. :try_end_73} :catch_74
    
        .line 1791
        goto :goto_7c
    
        .line 1789
        :catch_74
        move-exception v2
    
        .line 1790
        .local v2, "e":Ljava/io/IOException;
        sget-object v3, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
    
        const-string v4, "Cannot read keystore: "
    
        invoke-static {v3, v4, v2}, Landroid/util/Slog;->i(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
    
        .line 1793
        .end local v2    # "e":Ljava/io/IOException;
        :goto_7c
        invoke-virtual {p1, v0, v1}, Lcom/android/internal/util/dump/DualDumpOutputStream;->end(J)V
    
        .line 1794
        return-void
    .end method
    
    .method public enablePairingByPairingCode()V
        .registers 3
    
        .line 1717
        iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
    
        const/16 v1, 0xf
    
        invoke-virtual {v0, v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendEmptyMessage(I)Z
    
        .line 1718
        return-void
    .end method
    
    .method public enablePairingByQrCode(Ljava/lang/String;Ljava/lang/String;)V
        .registers 6
        .param p1, "serviceName"    # Ljava/lang/String;
        .param p2, "password"    # Ljava/lang/String;
    
        .line 1724
        new-instance v0, Landroid/os/Bundle;
    
        invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
    
        .line 1725
        .local v0, "bundle":Landroid/os/Bundle;
        const-string/jumbo v1, "serviceName"
    
        invoke-virtual {v0, v1, p1}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
    
        .line 1726
        const-string/jumbo v1, "password"
    
        invoke-virtual {v0, v1, p2}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
    
        .line 1727
        iget-object v1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
    
        const/16 v2, 0x10
    
        invoke-static {v1, v2, v0}, Landroid/os/Message;->obtain(Landroid/os/Handler;ILjava/lang/Object;)Landroid/os/Message;
    
        move-result-object v1
    
        .line 1730
        .local v1, "message":Landroid/os/Message;
        iget-object v2, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
    
        invoke-virtual {v2, v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendMessage(Landroid/os/Message;)Z
    
        .line 1731
        return-void
    .end method
    
    .method getAdbTempKeysFile()Ljava/io/File;
        .registers 2
    
        .line 1587
        iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mTempKeysFile:Ljava/io/File;
    
        return-object v0
    .end method
    
    .method public getAdbWirelessPort()I
        .registers 3
    
        .line 1688
        invoke-direct {p0}, Lcom/android/server/adb/AdbDebuggingManager;->getAdbConnectionInfo()Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
    
        move-result-object v0
    
        .line 1689
        .local v0, "info":Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
        if-nez v0, :cond_8
    
        .line 1690
        const/4 v1, 0x0
    
        return v1
    
        .line 1692
        :cond_8
        invoke-virtual {v0}, Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;->getPort()I
    
        move-result v1
    
        return v1
    .end method
    
    .method public getPairedDevices()Ljava/util/Map;
        .registers 3
        .annotation system Ldalvik/annotation/Signature;
            value = {
                "()",
                "Ljava/util/Map<",
                "Ljava/lang/String;",
                "Landroid/debug/PairDevice;",
                ">;"
            }
        .end annotation
    
        .line 1699
        new-instance v0, Lcom/android/server/adb/AdbDebuggingManager$AdbKeyStore;
    
        invoke-direct {v0, p0}, Lcom/android/server/adb/AdbDebuggingManager$AdbKeyStore;-><init>(Lcom/android/server/adb/AdbDebuggingManager;)V
    
        .line 1700
        .local v0, "keystore":Lcom/android/server/adb/AdbDebuggingManager$AdbKeyStore;
        invoke-virtual {v0}, Lcom/android/server/adb/AdbDebuggingManager$AdbKeyStore;->getPairedDevices()Ljava/util/Map;
    
        move-result-object v1
    
        return-object v1
    .end method
    
    .method getUserKeyFile()Ljava/io/File;
        .registers 2
    
        .line 1591
        iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mUserKeyFile:Ljava/io/File;
    
        return-object v0
    .end method
    
    .method public isAdbWifiEnabled()Z
        .registers 2
    
        .line 1744
        iget-boolean v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbWifiEnabled:Z
    
        return v0
    .end method
    
    .method public notifyKeyFilesUpdated()V
        .registers 3
    
        .line 1751
        iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
    
        const/16 v1, 0x1c
    
        invoke-virtual {v0, v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendEmptyMessage(I)Z
    
        .line 1752
        return-void
    .end method
    
    .method public setAdbEnabled(ZB)V
        .registers 6
        .param p1, "enabled"    # Z
        .param p2, "transportType"    # B
    
        .line 1628
        const/4 v0, 0x1
    
        if-nez p2, :cond_d
    
        .line 1629
        iget-object v1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
    
        if-eqz p1, :cond_8
    
        goto :goto_9
    
        .line 1630
        :cond_8
        const/4 v0, 0x2
    
        .line 1629
        :goto_9
        invoke-virtual {v1, v0}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendEmptyMessage(I)Z
    
        goto :goto_1b
    
        .line 1631
        :cond_d
        if-ne p2, v0, :cond_1c
    
        .line 1632
        iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
    
        if-eqz p1, :cond_16
    
        const/16 v1, 0xb
    
        goto :goto_18
    
        .line 1633
        :cond_16
        const/16 v1, 0xc
    
        .line 1632
        :goto_18
        invoke-virtual {v0, v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendEmptyMessage(I)Z
    
        .line 1638
        :goto_1b
        return-void
    
        .line 1635
        :cond_1c
        new-instance v0, Ljava/lang/IllegalArgumentException;
    
        new-instance v1, Ljava/lang/StringBuilder;
    
        invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
    
        const-string/jumbo v2, "setAdbEnabled called with unimplemented transport type="
    
        invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    
        move-result-object v1
    
        invoke-virtual {v1, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
    
        move-result-object v1
    
        invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
    
        move-result-object v1
    
        invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
    
        throw v0
    .end method
    
    .method public unpairDevice(Ljava/lang/String;)V
        .registers 4
        .param p1, "fingerprint"    # Ljava/lang/String;
    
        .line 1707
        iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
    
        const/16 v1, 0x11
    
        invoke-static {v0, v1, p1}, Landroid/os/Message;->obtain(Landroid/os/Handler;ILjava/lang/Object;)Landroid/os/Message;
    
        move-result-object v0
    
        .line 1710
        .local v0, "message":Landroid/os/Message;
        iget-object v1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
    
        invoke-virtual {v1, v0}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendMessage(Landroid/os/Message;)Z
    
        .line 1711
        return-void
    .end method
    
    

    מה הכי כדאי לי לשנות?

    עזרה הדדית - אנדרואיד

  • בקשת מידע | תיקון הבאג של אפליקציות אחרונות בנגנים הסיניים
    ר ר יעקב עייפים

    @נחלס-דון כן זה זה ואני באמצע מגעים עם ai.
    שאגב הסכים שזה זה.

    עזרה הדדית - אנדרואיד

  • בקשת מידע | תיקון הבאג של אפליקציות אחרונות בנגנים הסיניים
    ר ר יעקב עייפים

    @נחלס-דון הסתבכתי אבל סטינו מהנושא אז פתחתי חדש.

    נושא חדש...

    עזרה הדדית - אנדרואיד
  • התחברות

  • אין לך חשבון עדיין? הרשמה

  • התחברו או הירשמו כדי לחפש.
  • פוסט ראשון
    פוסט אחרון
0
  • חוקי הפורום
  • פופולרי
  • לא נפתר
  • משתמשים
  • חיפוש גוגל בפורום
  • צור קשר