603 ukufundwa
603 ukufundwa

I-Android Hack Yenza Ukulungele Umdlavuza Ngcono

nge Sergei Shaikin14m2025/04/16
Read on Terminal Reader

Kude kakhulu; Uzofunda

I-Digital Sleep Paradox kuyinto ingxaki engaziwa mayelana. Millions manje zihlala amavidiyo ze-YouTube, i-podcasts, noma izicelo ze-streaming. Ngitholile isikrini esebenzayo kumadivayisi yakho ye-Android ngentambo futhi usihlale ukubuyekeza yayo.
featured image - I-Android Hack Yenza Ukulungele Umdlavuza Ngcono
Sergei Shaikin HackerNoon profile picture
ikhaya

I-Disclaimer: Le ncwadi iyatholakala kuphela ekuthuthukiseni. Akukho ukuphazamiseka umthetho, ubukele babantu bakho, futhi akufanele ukuthi uzibophelele ukuthi uzothola imiphumela yakho kumadivayisi yakho.

ikhaya

I-Disclaimer: Le ncwadi iyatholakala kuphela ekuthuthukiseni. Akukho ukuphazamiseka umthetho, ubukele babantu bakho, futhi akufanele ukuthi uzibophelele ukuthi uzothola imiphumela yakho kumadivayisi yakho.

I-problem ye-Nobody Talks About

I-Digital Sleep Paradox Emuva lapho ama-screens asondle amahora emzimbeni, ama-millions asondle amavidiyo e-YouTube, ama-podcasts, noma ama-streaming apps.


Nokho, le mkhuba inesibopho esifundeni: ukuxhumana okuzenzakalelayo, ikakhulukazi kumadoda. Njengomdlavuza nomdlavuza, ngitholela lokhu kwelanga lokuqala - ama-YouTube binges emzimbeni yamahhala wamafutha emzimbeni emzimbeni emzimbeni.


Izicelo ezamahala kwi-Google Play Store, njengeUbukhulu obukhuluNgena ngemvaUkulawula Volumeinguqulo: zihlukile, ayikho izinga lokufaka, noma zihlukile kakhulu. Mhlawumbe izinhlelo zokusebenza zokusebenza zebhizinisi zithembisa, kodwa angikwazi ukuhlola lokhu njengoba zihlukile imali, ngokuvamile kakhulu.

I-The Hack (I-Totally Illegal...ish)

Ngitholile i-script elihlanganisa ku-Android device yakho ngentambo futhi ivele ukubuyekeza umthamo yayo. Uma ivele kakhulu — kungcono ngokushesha. Akukho ividiyo yokuzalwa, akukho ukubuyekeza screen, akukho ukusebenzisana abasebenzisi. Just emangalisayo magic.


Yeah, ngokwemvelo, isebenzisa i-ADB (i-Android Debug Bridge) phezu kwe-Wi-Fi, okuyinto isixhobo se-developer futhi ayidingi yokufunda ngaphambi kokufunda. Kodwa lokhu kuyinto enhle.

Ukubonisa imvelo yakho yokuthuthukiswa

Ukuqedwa kwesimo se-development kanye ne-connectivity kuyinto ebalulekile ngaphambi kokuphumelela ku-code. Lokhu kuncike ukuthi unayo zonke izixhobo nezidingo nezibuyekezo, ukunciphisa inqubo ye-development.


Ngisebenzisa i-macOS, ngakho-ke zonke izibonelo ezivela kule uhlelo, kodwa ukusetshenziswa kwe-Windows akukwenza inqubo enhle kakhulu kune-macOS. Umbala kuphela kuyinto ukuthi ku-macOS uhlelo lokusebenza, i-Python iyatholakala, futhi ku-Windows, uzodinga ukufaka i-Python ngokuvamile kusukela lapha:Ngena ngemvume

Ngiyazi i-breakdown enhle kakhulu:

    ikhaya
  1. Download and Extract Platform Tools: Go to the official Android Developers website: Navigate to Android SDK Platform-Tools. Download the SDK Platform Tools: Download the latest version for your operating system (Windows, macOS, noma Linux). Extract the ZIP file: Extract the downloaded ZIP file to a location of your choice (isib. C:\adb on Windows). C:\adb
  2. ikhaya
  3. Thola i-Platform Tools ku-Path ye-System: I-Windows: Thola izakhiwo ze-"Environment Variables" (Skrolela i-"Environment Variables" ku-Start menu). Thola i-"Edit the system environment variables". Thola i-"Environment Variables". Ngo-"System variables" isigaba, thola i-"Path" variable, uchofoza futhi uchofoza i-"Edit". Ngokwesibonelo: export PATH=$PATH:/path/to/platform-tools export. PATH=PATH:/us/local/binad/echo $PATH "tr:" "\n" Into my case, it'll like this will be like Restart: This terminal will only be in the source, or in the command.
  4. ikhaya
  5. Ukubuyekezwa kwe-ADB Ukubuyekezwa: Ukubuyekezwa kwe-Command Line Interface (CLI): Ukusebenzisa i-Windows Search Bar (Windows OS): Faka i-Start button noma i-Glass icon ekubuyekezwa ku-Taskbar. Faka i-cmd (hhayi amazwana) ku-search bar. Faka i-command Prompt imiphumela. Ukushesha njenge-administrator, faka i-right-click ye-Command Prompt emiphumela yokubuyekeza futhi ukhethe i-"Run as administrator". Ukusebenzisa i-Spotlight Search (macOS): Faka i-glass icon ekubuyekeza ku-menu bar (noma faka i-Cmd+Space). Faka i-Terminal futhi faka i-double
  6. ikhaya
  7. Yenza i-USB Debugging ku-Android Device yakho: Faka ku-"Settings" ku-Android Device yakho. Faka phansi futhi uchofoze i-"About Phone". Find "Build Number" and tap it 7 noma ngaphezulu ukuze ufake Imibuzo ye-Developer. Faka kwebhulogi ye-"Settings" main, futhi manje uzothola i-"Developer Options". Faka i-"Developer Options". Faka phansi ku-"USB Debugging" futhi uqhagamshelane.
  8. ikhaya

Ngaphezu kwalokho, siza kusebenza kuphela ku-command line. Kwi-my case, kuyoba ku-terminal.

Ukulungiselela ukuxhumana kwakho

Isinyathelo esilandelayo kuyoba ukuxhumanisa isixhobo sakho esebenzayo nge-PC yakho. Lokhu kuyinto isinyathelo esilula kakhulu esihlanganisa ngezinyathelo ezimbili:


    ikhaya
  • isixhumanisi Wire;
  • Imininingwane ye-Wireless
  • ikhaya

Wire ukuxhuma:

Ufuna ukuxhuma idivayisi yakho ye-mobile ku-PC yakho ngokusebenzisa ikhebula (USB A / USB C noma USB A / micro USB, njll).


Ngemuva kwalokho, uchofoza i-terminal kanye nokufaka isicelo esilandelayo:

adb devices

You see my device, which is connected by wire to my personal computer. In your case, this "RF8T60M9SBF" number will be a completely different number.


Okwangoku, sinamathela ukuguqulwa kwe-TCP / IP mode nge-command elandelayo:

adb tcpip 5555


Uma siye ku-terminal, ke singakwazi ukuyifaka i-IP ye-device ye-mobile ku-Wi-Fi yethu ngaphandle kokufunda i-device ye-mobile. Sishayele isicelo esilandelayo ukuze ufunde isicelo se-IP esithathwe kulandelayo ngesikhathi sokufaka ukuxhuma kwe-wireless:

adb -d shell "ip route | awk '/wlan0/ {print \$9}'"

My IP address is 10.0.0.108. In your case it will be another one.

Wireless Ukuxhumana:

Ngemuva kokuba unayo idilesi ye-IP yekhompyutha yakho, kulungile ukuxhumanisa ngentambo. Akuningi ukuxhumanisa ngentambo. Uma ushiyeadb tcpip 5555, ungahambisa ngempumelelo i-USB ikhebula. I-magic eyahlukile kuya kuba nge-Wi-Fi.


Qinisekisa ukuthi ama-smartphone kanye ne-computer yakho zihlanganisa ku-Wi-Fi networks efanayo. Ngemuva kwalokho, ku-terminal yakho, ubhalise isicelo esilandelayo:

adb connect <DEVICE_IP>:5555


Ngokwesibonelo, uma idivayisi yakho ip10.0.0.108Ngaba uya ku:

adb connect 10.0.0.108:5555


Uma konke kulungile, uzothola umyalezo efana ne:

Here we are.

Thola ucwaningo malunga ne-problem

Yenza umzila emzimbeni futhi ucacise ukuthi siphinde. Umfazi wakho uxhumane ngokushesha ukhangela ividiyo emnandi - mhlawumbi imizobo emzimbeni noma ezinye imisindo emzimbeni. Kodwa amahora amabili ngemva? I-auto-play ye-YouTube uxhumane, i-ad blares emangalisayo, noma i-cartoon soundtrack ye-high-energy izixazulule. Zine groggy. Ume groggy. Wonke abantu uqala usuku yabo ngokushesha. Yini ufuna kuyinto umphathi emnandi - into enomlilo futhi enokwethenjelwa. I-system enikezela ngokushesha umthamo emzimbeni ngaphandle kokugcina ukudlala, ngaphandle kokucindezeleka ama-pop-ups emn

I-Architecture Enyangeni

Ngiyazi i-diagram ephakeme esibonisa indlela yonke into ifakwe:


ikhaya

I-computer yakho (ukushesha i-Python script) uxhumane kumadivayisi ye-Android nge-ADB nge-Wi-Fi, ukulawula i-volume ngokushesha, futhi ukunciphisa uma kufuneka.

ikhaya

I-computer yakho (ukushesha i-Python script) uxhumane kumadivayisi ye-Android nge-ADB nge-Wi-Fi, ukulawula i-volume ngokushesha, futhi ukunciphisa uma kufuneka.

This minimalistic setup allows for seamless automation:Python Script runs on your laptop or mini PC.


I-Script Yenza I-Magic

I-core ye-solutions iyinhlangano ye-Python enikezela nge-Android device yakho nge-ADB nge-Wi-Fi.


Ngama-30 imizuzu, it uchofoza umugqa wokugaya umculo. Uma umugqa uye ngaphezulu kuka-5 (i-Android ikakhulukazi isebenzisa isilinganiso se-15 ye-point), i-script ikunciphisa ngokushesha - isinyathelo esisodwa ngexesha, ngezinyathelo ezincinane. Uma umugqa uye 5 noma engaphansi, kusebenza kuphela - ukhangela ngokushesha ukuba umugqa ufake.


I-Best Part? It ukunakekelwa ama-manual changes. Uma umuntu ukunciphisa i-volume ngokuvamile, i-script ibonise futhi akufanele. Kuyinto enhle. Kuyinto enhle. Kuyinto enhle. Kuyinto emangalisayo – nje njenge-sleeping assistant enhle kufanele kube.

I-The Script's Evolution: ukusuka ku-Tiny Hack kuya ku-Reliable Tool

Ukulandelela okokuqala le skripti, akuyona amayunithi amancane.


Kuyinto efanayo like this:

import subprocess
import time
import re

def get_stream_volume():
    cmd = "adb shell dumpsys audio | awk '/- STREAM_MUSIC:/{flag=1; count=0} flag && count<=5 {print; count++} /^$/{flag=0}'"
    result = subprocess.run(cmd, shell=True, capture_output=True, text=True)
    match = re.search(r'streamVolume:(\d+)', result.stdout)
    return int(match.group(1)) if match else None

def set_volume(level):
    cmd = f"adb shell cmd media_session volume --stream 3 --set {level}"
    subprocess.run(cmd, shell=True)
    print(f"Volume set to {level}")

def monitor_volume():
    while True:
        volume = get_stream_volume()
        if volume is None:
            print("Failed to get volume level. Retrying...")
            time.sleep(5)
            continue

        print(f"Current volume: {volume}")
        
        if volume == 15:
            for vol in range(14, 4, -1):
                set_volume(vol)
                time.sleep(30)
        
        while get_stream_volume() == 5:
            print("Volume is at 5, monitoring every 60 seconds...")
            time.sleep(60)

if __name__ == "__main__":
    monitor_volume()
os.system("adb shell dumpsys audio | grep -i 'streamVolume'")


Kodwa ngokushesha, umqondo wahlala. Yintoni ukuthi idivayisi isixazululwa phakathi kwelanga? Yintoni uma i-ADB ibonise i-timeout? Yintoni uma i-telephone ayikho? Yintoni uma i-script isixazululwa ngenkathi wonke umntu wahlala?


Ngemuva kwalokho, umbhalo wahlala.

    ikhaya
  • Ngezinye izikhathi, idivayisi awukwazi ukuxhuma. Ngakho ngandisa i-adb connect ip:port.
  • ikhaya
  • Ngamanye ama-ADB abalandeli emzimbeni. Ngithunyelwe ukwelashwa kwe-exception kanye ne-retries.
  • ikhaya
  • I-Logging? Yep, wathi lokhu futhi.
  • ikhaya
  • I-File logging ne-console logging? Ngokuthi.
  • ikhaya
  • Ukuguqulwa kwe-volume phakathi kwe-sleep? Ngaphezu kwalokho, i-script inikeza ukuthi futhi - futhi ivimbele kuphela lapho kufuneka.
  • ikhaya
  • Ukucaciswa kwama-frequency? Izigaba ezahlukene ze-high vs. low volume levels.
  • ikhaya
  • Futhi yes, shutdown enhle Ctrl + C.
  • ikhaya


Okuqala njengoba izilimi ezimbalwa ze-script ziye kwenziwa ku-watchdog encane eyenza i-babysitter yakho - ngakho-ke ungenza.

import subprocess
import time
import re
import logging
from datetime import datetime

logging.basicConfig(
    filename='volume_control.log',
    level=logging.INFO,
    format='[%(asctime)s] %(message)s',
    datefmt='%Y-%m-%d %H:%M:%S'
)

ADB_DEVICE = "10.0.0.108:5555"

def log(message):
    timestamp = get_timestamp()
    print(f'[{timestamp}] {message}')
    logging.info(message)

def get_timestamp():
    return datetime.now().strftime('%Y-%m-%d %H:%M:%S')

def connect_adb():
    subprocess.run(f"adb connect {ADB_DEVICE}", shell=True)
    log(f"Reconnected to ADB at {ADB_DEVICE}")

def get_stream_volume():
    cmd = "adb shell dumpsys audio | awk '/- STREAM_MUSIC:/{flag=1; count=0} flag && count<=5 {print; count++} /^$/{flag=0}'"
    result = subprocess.run(cmd, shell=True, capture_output=True, text=True)
    match = re.search(r'streamVolume:(\d+)', result.stdout)
    return int(match.group(1)) if match else None

def safe_get_stream_volume(retries=3, delay=5):
    for attempt in range(retries):
        volume = get_stream_volume()
        if volume is not None:
            return volume
        log(f"Attempt {attempt + 1}: Failed to get volume. Retrying after reconnect...")
        connect_adb()
        time.sleep(delay)
    log("All attempts failed. Giving up temporarily.")
    return None

def set_volume(level):
    cmd = f"adb shell cmd media_session volume --stream 3 --set {level}"
    subprocess.run(cmd, shell=True)
    log(f"Volume set to {level}, waiting 30 seconds...")

def monitor_volume():
    while True:
        volume = safe_get_stream_volume()
        if volume is None:
            log("Initial volume read failed. Retrying in 30 seconds...")
            time.sleep(30)
            continue

        log(f"Current volume: {volume}")

        while volume > 5:
            set_volume(volume - 1)
            time.sleep(30)
            volume = safe_get_stream_volume()
            if volume is None:
                log("Failed to read volume during decreasing.")
                break 

        while True:
            volume = safe_get_stream_volume()
            if volume is None:
                log("Failed to read volume during monitoring.")
                time.sleep(30)
                break
            if volume > 5:
                log(f"Volume increased to {volume}, restarting decreasing")
                break
            log(f"Volume is at {volume}, monitoring every 60 seconds...")
            time.sleep(60)

if __name__ == "__main__":
    try:
        monitor_volume()
    except KeyboardInterrupt:
        log("Script stopped by user (Ctrl+C)")
    except Exception as e:
        log(f"Unexpected error: {e}")
    finally:
        log("Script exited.")


Namhlanje, le script iyona-grade production — futhi open source. Kodwa sicela ukuguqulwa lokhu umugqa ADB_DEVICE = "10.0.0.108:5555" ku-script nge-IP yakho kusuka“Ukulungiselela ukuxhumanisa”Ngathi

Ukusebenza kwe-script: Amayunithi Amabili Amakhasimende Amabili Nge-Cron

Ngaba unayo izindlela ezimbili eziyinhloko yokusebenza kwe-script:

    ikhaya
  1. Ngena ngemvume nge-Python
  2. ikhaya


Uma unayo i-Python 3 eyakhiwe, ungakwazi nje ukuqhuba:

python3 reduce_volume.py


It uyaqala ngokushesha futhi uqala umsebenzi wakhe ngokushesha emkhakheni.

    ikhaya
  1. I-Standalone Executable
  2. ikhaya


Ingabe ufuna ukuyifaka nawe nge-Python ayi-installed?


Ungayifaka i-script ku-standalone.appUkuze macOS noma.exeUkuze Windows, usebenzisaUkuhlobisaWaze:

pyinstaller --onefile reduce_volume.py

Ngokwenza lokhu, uzothola isicelo esebenzayo esuka nge-double-click - akukho i-Python eyadingeka.


    ikhaya
  1. Ngaphezu kwalokho, uqhagamshelane ne-cron job noma i-task scheduler uma ungumangalisayo.
  2. ikhaya

One More Thing: Izinzuzo ze-ADB ezisuka

I-ADB phezu kwe-Wi-Fi ingangena kakhulu.


Ukuxhumanisa isixhumanisi se-Remote ifakwe lapho:

    ikhaya
  • Umthombo we-Reboot ye-Telephone
  • ikhaya
  • I-Wi-Fi inethiwekhi iyahambisana.
  • ikhaya
  • I-Developer Mode noma i-USB Debugging ifakwe.
  • ikhaya
  • I-device usebenza isikhathi eside ngaphandle kokusebenza kwe-ADB (ezinye izinhlelo zihlanganisa ukuxhuma okuzenzakalelayo).
  • ikhaya
  • Futhi abaningi ...
  • ikhaya


Ngakho-ke uma i-script kusebenza, nje ukuguqulela izinyathelo kusuka“Ukulungiselela ukuxhumanisa”Waze:

    ikhaya
  1. Qhagamshelana ne-mobile device nge-wire ku-computer yakho.
  2. ikhaya
  3. Ukusebenza kwe-adb tcpip 5555 adb tcpip 5555
  4. ikhaya
  5. Ukusebenza kwe-adb connect <DEVICE_IP>: 5555
  6. ikhaya
adb connect 10.0.0.108:5555

futhi uzokufika kwebhizinisi.

Imibuzo yokuqala

I-hack yayo akuyona ukujabulela ukujabulela kwezingane bakho. Kuyinto ukhuseleko lokuzalwa kwabo - futhi ubunzima bakho - kusuka ku-tech surprises ezingenalutho.


Kuyinto ingcindezi encane, kodwa kumadoda yami futhi ngalinye, kuyinto ukuguqulwa kwemvelo. No more 2 AM YouTube wakups. No more cranky amahora. Just amahora enhle futhi ingxenye elincinane yokuzimela okuzenzakalelayo.


    ikhaya
  • Ngaba iyiphi inkinobho ye-hack?
  • ikhaya
  • Ukusebenza ngokuvamile? Okwamanje.
  • ikhaya
  • Ingcazelo yes, kodwa isebenze ekhanyayo (i-ADB ukufinyelela kanye nokulawula okuzenzakalelayo ayikwazanga ngokuvamile ku-Google kumakhasimende ekupheleni).
  • ikhaya
  • Kodwa ungenza ukuthi? Uma kunceda umdlavuza (noma ungenza) ukunambitheka kahle - kuyimfuneko.
  • ikhaya
  • Kuyinto subtle.
  • ikhaya
  • Kuyinto enhle.
  • ikhaya
  • Ukusebenza futhi.
  • ikhaya


Qinisekisa ukuba ufuna ikhodi lokukhipha, isakhiwo se-one-click, noma inguqulo olungcono.


Futhi hey - ukutya kahle. Uyaziyaziya.

ikhaya

P.S. Loluqulwa lokhu kungenziwa ngokushesha nokuphumelela - isibonelo, ukwakha i-schedule, ukuguqulwa ku-profiles ahlukene, ukucubungula umsebenzi we-device, njll Kodwa nangemvelo yayo esisodwa, kusolwazi ukuguqulwa inkinga lokuqala: kusiza ukujula - futhi ukhula ngempumelelo. Futhi yes, uma unayo isicelo esifanele noma umqondo, ngiyakwazi ukunceda, futhi ngexesha elifanayo, lokhu kuyoba isikhwama esilandelayo.

ikhaya

P.S. Loluqulwa lokhu kungenziwa ngokushesha nokuphumelela - isibonelo, ukwakha i-schedule, ukuguqulwa ku-profiles ahlukene, ukucubungula umsebenzi we-device, njll Kodwa nangemvelo yayo esisodwa, kusolwazi ukuguqulwa inkinga lokuqala: kusiza ukujula - futhi ukhula ngempumelelo. Futhi yes, uma unayo isicelo esifanele noma umqondo, ngiyakwazi ukunceda, futhi ngexesha elifanayo, lokhu kuyoba isikhwama esilandelayo.


Trending Topics

blockchaincryptocurrencyhackernoon-top-storyprogrammingsoftware-developmenttechnologystartuphackernoon-booksBitcoinbooks