APK van telefoon halen en patchen voor Windows 10 Mobile gebruik

De tools zijn gelekt en je wil nu eigenlijk wel een Android applicatie op je Windows 10 Mobile draaien. Maar hoe kom je aan een APK om te gebruiken. Uiteraard kun je ze downloaden van een site, maar je kunt ze ook van een telefoon met Android halen.

Developermode activeren

Schakel daarvoor eerst de developermode van het toestel in. Mocht je Android 4.2 of hoger hebben, dan is deze verborgen in het menu. Ga eerst naar Settings -> About device. Scroll naar beneden naar ‘Build number‘ en druk daar op. Selecteer hem nogmaals, en nogmaals en nogmaals. Op een gegeven moment krijg je de melding ‘press x times to unlock developer mode’. Ga verder met selecteren totdat een waarschuwing wordt gegeven over de development mode en accepteer deze. Daarna kun je development mode vinden in je instellingen.

Ga naar Settings -> Developer Options en selecteer USB debugging en accepteer de waarschuwing. Hang je telefoon met een USB kabel aan je pc. De telefoon geeft een waarschuwing. Accepteer deze.

Mocht er geen waarschuwing worden gegeven, dan moeten mogelijk de developer drivers van je telefoon geïnstalleerd worden. Zoek daarna op internet via google of op de website van de fabrikant van je telefoon.

adb devices2Controleer of het device herkent wordt door Android ADB (zie [link] voor een download). Open een administrative command prompt, ga naar de map waar ADB in staat en toets in ‘adb devices‘.

Staat je telefoon erbij, dan kun je doorgaan. Anders moet je alsnog de developer drivers van je telefoon installeren.

APK downloaden van telefoon

adb packagesOm er achter te komen waar de apk bestanden staan van de applicaties op de telefoon voer je het volgende commando in ‘adb shell pm list packages -f -3‘. Je krijgt dan de output in de vorm van package:/data/app/xx.xx.xx.apk=yy.yy.yy. Zie het voorbeeld hiernaast.

Zoek hierin de applicatie die je als APK wilt hebben. Selecteer vervolgens het data path. In het voorbeeld is het path van Sonos bijvoorbeeld /data/app/com.sonos.acr-4.apk

adb pullDe APK kun je nu downloaden via het commando ‘abd pull [data path]‘. Het APK bestand wordt in de map geplaatst waar de adb-executable staat.

APK patchen voor Windows 10 Mobile gebruik

Sommige applicaties gebruiken onnodig de Google Play Services. Af en toe wordt ook het OpenStreetMaps framework gebruikt. Daar kan Windows 10 Mobile (nog) niet mee overweg.

GMAPS Patcher kan proberen dit op te lossen door de APK aan te passen. Het is geen garantie dat de applicatie daarna werkt, maar je kunt het altijd proberen. Voordat de tool gebruikt is het wel raadzaam eerst te kijken of de APK ook zonder patch werkt!

GMAPS Patcher is hier te downloaden: http://forums.crackberry.com/android-apps-amazon-store-apk-files-f413/how-patch-android-apps-depending-google-maps-google-play-services-914930/

Zorg ervoor dat je Java 1.7 of hoger hebt geïnstalleerd. Pak de zipfile uit en start gmaps patcher.exe

gmaps1Na de eerste keer opstarten kun je het beste eerst een aantal opties aanvinken en invullen. Ga naar het tabblad ‘Paths‘ en browse naar het path van je java installatie.

 

gmaps2Kies daarna het tabblad ‘Options‘ en selecteer ‘Pause before rebuilding‘. Dit zorgt ervoor dat de applicatie pauzeert na analyse zodat je de mogelijkheid hebt bepaalde patches aan of uit te vinken.

Selecteer bovenaan ‘browse’ bij ‘working on’, selecteer de APK en druk vervolgens op ‘Analyze APK File’ onderin het scherm. De Applicatie gaat nu aan het werk. Na analyze kun je kiezen uit verschillende patches. gmaps3Meestal zal dit het verwijderen van Google Play Services zijn of het omzetten van OpenStreetMaps naar Google Maps. De laatste is nodig zodat Microsoft dat framework weer kan omzetten naar Bing Maps (dit gaat automatisch in het framework op de telefoon). Tevens kan de applicatie de melding ‘Google Play Services nodig’ uitschakelen.

Klik op ‘Continue’ en daarna op ‘Rebuild’ om een gepatchte versie van de APK te maken. Deze komt in de output folder van de tool te staan. Deze gepatchte versie kun je vervolgens gebruiken voor de installatie op Windows 10 Mobile.

gmaps4

Android apps op Windows 10 Mobile

Op het moment zijn de tools gelekt voor het draaien van Android Applicaties op Windows 10 Mobile.

Deze zijn onder andere hier https://www.dropbox.com/sh/u91sxcwmif8o9ml/AADwpuskxQDGZBZvcfeyqOf7a?dl=0 te downloaden

Gezien dit een vrij vroege release is, werkt het geheel nog niet heel stabiel. De functie is op het moment alleen werkend op een Nokia Lumia 435, 635, 730, 820, 830, 920, 925, 928, 929, 930 en 1520.

Pak beide programma’s (wconnect en Android ADB) uit op je computer met Windows 10 (versie maakt niet uit). ontwikkelaarsmodusOp je telefoon met Windows 10 Mobile, ga naar Alle Instellingen -> Bijwerken en beveiliging -> Voor ontwikkelaars. Schakel hier ‘Modus voor Ontwikkelaars’ in en zet ‘Apparaat detectie’ aan. Klik vervolgens op koppelen en schrijf de code op die in het scherm wordt getoond. Modus voor ontwikkelaars moet op dit moment altijd actief zijn om Android applicaties te draaien. De modus moet uit staan als je je telefoon wil herstarten of uitschakelt!

Verbinding maken

Installeer als eerste ‘vc_redist86.exe’ en ‘IpOverUSBInstaller.msi’ uit de wconnect folder.

Open een administrative command prompt en ga naar de map waar wconnect in staat. Dit is een tool die als laag tussen je telefoon en Android tools in komt te zitten waardoor de Android tools denken dat ze te maken hebben met een telefoon met Android als OS.

wconnect succesvolKies voor het commando ‘wconnect usb‘ als je je Windows 10 Mobile wil verbinden via een USB kabel. Wil je de telefoon via wifi verbinden, type dan ‘wconnect [ip adres telefoon]. Tijdens het verbinden vraagt wconnect eenmalig om een pairingcode. Dit is de code die je eerder hebt opgeschreven en die getoond werd in het ‘voor ontwikkelaars’ menu.

Wconnect komt vervolgens met de melding ‘emulator-[nummer] on [usb/ip] connected‘. wconnect 9Als je error 9 krijgt is er een fout met het verbinden in developer mode. Error 14 houdt in dat je telefoon niet geschikt is voor de emulator. Error 9 komt het meest voor als je telefoon is gereboot waarbij developer modus nog aan staan. Lees dan [hier] verder hoe je dit kan oplossen.

Verbinding verbreken kan via het commando ‘wconnect disconnect‘.

Android applicaties

Voor het installeren van Android applicaties heb je eerst een APK nodig. Applicaties die gebruik maken van het Android Framework, Android Play Services of OpenstreetsMap services doen het mogelijk niet of doen het maar half. Dit komt omdat niet alle onderdelen van Android Play Services (zoals advertenties, google maps, etc.) al worden opgevangen door Microsoft varianten hiervan.ingress play services Mocht een applicatie een verificatie doen op de Google Play Services dan krijg je een notificatie dat deze (nog) niet ondersteund is als je de applicatie start. Dit is gedeeltelijk op te lossen door gebruik te maken van GMAPS Patcher [zie http://forums.crackberry.com/android-apps-amazon-store-apk-files-f413/how-patch-android-apps-depending-google-maps-google-play-services-914930/ ]. Dit werkt echter niet als de applicatie functies aanroept die Microsoft gewoon nog niet klaar heeft.

Je kunt een APK downloaden op websites. Let daarbij wel goed op. Er zijn een hoop websites welke allerlei advertenties in popups tonen of spyware injecteren. Sites als APKMirror is relatief veilig. Er is ook een manier om APK bestanden van een android telefoon af te halen. Zie daarvoor [het volgende artikel].

Android applicaties installeren

Als je een APK hebt kun je deze plaatsen in de ADB map, welke je eerder hebt uitgepakt.

adb devicesMet het commando ‘ADB Devices‘ kun je controleren of de tussenlaag goed is geinstalleerd.

De APK kun je vervolgens op je telefoon plaatsen via het commando ‘adb install [bestandsnaam van apk]

Afhankelijk van hoe groot de APK is en of je een verbinding hebt via USB of Wireless, kan dit een paar seconde tot een paar minuten duren.

adb successNa upload krijg je eerst de melding met welke snelheid dit is gebeurd en welke APK er is geupload. Daarna moet de telefoon het even verwerken en krijg je de melding ‘success’. Op dat moment zie de applicatie als normale applicatie in je applicatielijst staan. Verwijderen van de applicatie kan op de normale manier op de telefoon.

adb failureSoms gaat de installatie niet goed. Veel voorkomende errors zijn ‘Failure [INSTALL_FAILED_MISSING_SHARED_LIBRARY]‘. Dit houdt in dat de applicatie een standaard geinstalleerd onderdeel van Android mist, zoals een library van de Android Framework. Hier is op dit moment weinig aan te doen. Je kan kijken op GMAPS Patcher het op kan lossen, maar grote kans dat als de installatie daarna wel lukt, dat de applicatie bij het starten of tijdens het werken ineens een foutmelding geeft.

Een andere foutmelding is ‘Failure [DELETING_EXISTING_APPLICATIONDATA_STORE_FAILED]‘. Deze melding heb ik gezien als een eerder installatie mislukte of als je een applicatie verwijderd van de telefoon en hem daarna weer probeert te installeren. De enige oplossing die ik tot nu toe heb kunnen vinden is door een disconnect te doen via wconnect, daarna developer modus uit te schakelen en de telefoon te rebooten. Daarna zou de installatie wel moeten lukken.

Lijst met geinstalleerde onderdelen

Een lijst van geinstalleerde Android onderdelen (incl. APK’s) is op te vragen via het commando ‘adb shell pm list packages