8 votes

Écran cassé + Utilisation du shell adb pour exécuter le serveur vnc

J'ai un HTC HD2 avec un écran complètement cassé, j'ai essayé de le réparer avec un écran de remplacement mais j'ai cassé le câble ruban de l'écran (oups) triste journée,

J'en ai deux et je les utilise comme serveurs et caméras ipcam.

J'ai commencé à utiliser qtadb qui a fonctionné sur mon téléphone malgré un écran cassé. J'ai installé droid VNC Server beta en utilisant le gestionnaire de fichiers sur qtadb. J'ai récupéré le manifeste de l'application :

<?xml version="1.0" encoding="utf-8"?>
<manifest android:versionCode="52" android:versionName="0.991" package="org.onaips.vnc"  xmlns:android="http://schemas.android.com/apk/res/android">
    <uses-sdk android:minSdkVersion="3" />
<application android:label="droid VNC server" android:icon="@drawable/icon" android:name="MainApplication" android:debuggable="false">
    <activity android:label="@string/app_name" android:icon="@drawable/icon" android:name=".MainActivity" android:launchMode="singleInstance">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity android:label="Preferences" android:name="preferences" />
    <meta-data android:name="com.mobclix.APPLICATION_ID" android:value="1F34160B-63BB-4854-BDB7-D46B7EADBF06" />
    <activity android:name="com.mobclix.android.sdk.MobclixBrowserActivity" />
    <service android:name="StartAtBootService">
        <intent-filter>
            <action android:name="org.onaips.vnc.StartAtBootService" />
        </intent-filter>
    </service>
    <receiver android:name="StartAtBootServiceReceiver">
        <intent-filter>
            <action android:name="android.intent.action.BOOT_COMPLETED" />
            <category android:name="android.intent.category.HOME" />
        </intent-filter>
    </receiver>
    <service android:name="avncservice" />
</application>
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.ACCESS_SUPERUSER" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.GET_TASKS" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
</manifest>

et j'ai essayé plusieurs choses pour démarrer et exécuter le service en utilisant la console sur qtadb. J'ai essayé d'exécuter :

am start -a android.intent.action.MAIN -n org.onaips.vnc/com.mobclix.android.sdk.MobclixBrowserActivity

am start -a android.intent.action.MAIN -n org.onaips.vnc/org.onaips.vnc.MainActivity

am start -n org.onaips.vnc/com.mobclix.android.sdk.MobclixBrowserActivity

am start -n org.onaips.vnc/org.onaips.vnc.MainActivity

am startservice -a android.intent.action.MAIN -n org.onaips.vnc/com.mobclix.android.sdk.MobclixBrowserActivity

am startservice -a android.intent.action.MAIN -n org.onaips.vnc/org.onaips.vnc.MainActivity

etc....

Je teste à chaque fois l'adresse IP de mon appareil par NMAP, aucun nouveau port ne s'affiche. (Je n'ai pas de pare-feu).

Mais sur un téléphone en état de marche, elle ne démarre pas lorsque vous lancez l'application ; elle démarre lorsque vous appuyez sur le bouton Run. Alors comment appuyer sur le bouton d'exécution avec un écran cassé ?

J'ai juste besoin que le serveur vnc fonctionne pour que je puisse faire des choses de configuration pour faire fonctionner debian et mon serveur video dessus.

4voto

Glyph Points 17756

Utilisez adb shell am start -a android.intent.action.Main -n org.onaips.vnc/.MainActivity en dehors du shell, et le serveur VNC démarrera.

1voto

Matthew Read Points 50150

Cette réponse a été suggérée comme une modification par un utilisateur anonyme, mais elle devrait être indépendante.


Vous devez d'abord localiser le fichier exécutable droidvncserver sur votre appareil. Sur un Nexus S, il se trouve dans ce répertoire :

/data/data/org.onaips.vnc/files

Ensuite, vous devez définir le droit d'exécution sur le fichier exécutable (c'est une sous-utilité UNIX) depuis le PC en utilisant adb.exe. Dans une fenêtre de ligne de commande (à partir du dossier Android SDK approprié), vous pouvez taper :

adb.exe shell chmod 766 /data/data/org.onaips.vnc/files/androidvncserver

(ceci ne doit être fait qu'une seule fois, pour plus de détails sur la commande chmod tapez man chmod dans google)

Vous pourrez alors lancer le serveur vnc directement depuis votre PC en utilisant adb.exe :

adb.exe shell /data/data/org.onaips.vnc/files/androidvncserver

En outre, pour connecter votre VncViewer en utilisant le câble USB, tapez dans une autre fenêtre de ligne de commande :

adb.exe forward tcp:5901 tcp:5901

1voto

vito huang Points 797

Vysor est la réponse ! Il s'agit d'une application Chrome avec un serveur VNC intégré qui se lance automatiquement. Elle fonctionne même sur Android 6+. Trouvez-la aquí .

0voto

JobiJoba Points 1
adb shell
cd /data/data/org.onaips.vnc/files
chmod 766 androidvncserver
androidvncserver

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X