Les secrets du développement d'une application mobileEutech SSII
Présentation du 25 septembre 2012 dans le cadre d'un atelier technique à destination de clients, partenaires et prospects d'Eutech SSII. Dans un format court, il est question des jalons du développement d'une application mobile, iOs, Android, Webmobile
Objectifs
Connaître les principales technologies utilisées pour développer des applications mobiles
Savoir quelle technologie est la mieux adaptée pour un projet
Azetone - Comment optimiser l’expérience utilisateur de son appli mobile ?Philippe Dumont
Si les marketeurs et développeurs mobiles investissent massivement en ASO (App Store Optimization) tout comme en acquisition de téléchargements d’applications, ils négligent parfois les problématiques d’expérience utilisateur, et la nécessité d’engager une véritable stratégie de UXO (User Expérience Optimisation).
Des critères tels que la récurrence de l’utilisation, de l’engagement des utilisateurs, voire des conversions des visites en ventes, sont pourtant des indicateurs clés de réussite d’une application, et imposent de disposer des bons outils et des bonnes méthodologies.
Découvrez au travers de nombreux exemples clients :
- Qu’est-ce qu’une expérience utilisateur réussie sur mobile ?
-Quels sont les outils à adopter pour bien comprendre les comportements utilisateur ?
- Quelles sont les bonnes pratiques ou au contraire, celles à éviter ?
- Quel bénéfice peut-on attendre de l’UXO ?
M&A trends from BCMS Switzerland, part of BCMS, global sell-side advisor founded in 1989 with 26 offices worldwide.
Authored by Aymeric d'Anselme, Associate Strategy Director, BCMS Switzerland
Les secrets du développement d'une application mobileEutech SSII
Présentation du 25 septembre 2012 dans le cadre d'un atelier technique à destination de clients, partenaires et prospects d'Eutech SSII. Dans un format court, il est question des jalons du développement d'une application mobile, iOs, Android, Webmobile
Objectifs
Connaître les principales technologies utilisées pour développer des applications mobiles
Savoir quelle technologie est la mieux adaptée pour un projet
Azetone - Comment optimiser l’expérience utilisateur de son appli mobile ?Philippe Dumont
Si les marketeurs et développeurs mobiles investissent massivement en ASO (App Store Optimization) tout comme en acquisition de téléchargements d’applications, ils négligent parfois les problématiques d’expérience utilisateur, et la nécessité d’engager une véritable stratégie de UXO (User Expérience Optimisation).
Des critères tels que la récurrence de l’utilisation, de l’engagement des utilisateurs, voire des conversions des visites en ventes, sont pourtant des indicateurs clés de réussite d’une application, et imposent de disposer des bons outils et des bonnes méthodologies.
Découvrez au travers de nombreux exemples clients :
- Qu’est-ce qu’une expérience utilisateur réussie sur mobile ?
-Quels sont les outils à adopter pour bien comprendre les comportements utilisateur ?
- Quelles sont les bonnes pratiques ou au contraire, celles à éviter ?
- Quel bénéfice peut-on attendre de l’UXO ?
M&A trends from BCMS Switzerland, part of BCMS, global sell-side advisor founded in 1989 with 26 offices worldwide.
Authored by Aymeric d'Anselme, Associate Strategy Director, BCMS Switzerland
Alphorm.com Formation Windev Mobile 19, AndroidAlphorm
Vous trouverez la formation complète ici:
http://www.alphorm.com/tutoriel/formation-en-ligne-windev-mobile-android-19
Dans cette formation vous allez apprendre avec WinDev Mobile pour Android, par le développement pas à pas d’un logiciel mobile complet.
Vous allez pouvoir Configurer l’environnement de développement(SDK, Java…), Comprendre les principes de fonctionnement de WinDev mobile(Compilation…), Utiliser des sources de données hétérogènes(SQLite, HFSQL, Access, la réplication…), Utiliser les principaux champs(Action bar, carte, graphe…), Développer en multiplateforme(Code cible conditionnel, conseils…), Programmer, utiliser les outils mobiles(GPS, SMS, capteurs, caméra, codes-barres …) et Déployer une application(Google Play, Emulateur, ADB…)
La nouvelle donne du mobile pour les devices professionnels mobility for bu...Tristan Verdier
Depuis 2007, les smartphones font une percée historique sur le marché des devices professionnels. En quoi s'agit-il d'une vraie rupture technologique? Comment profiter au maximum de cette nouvelle donne dans votre activité? Quels sont les nouveaux business models? Y a-t-il une limite à cette percée? Tout ces enjeux ont été traités par Tristan Verdier, CEO d'Applidget, lors d'une conférence sur le salon Mobility for Business du 8 et 9 octobre 2012 au Cnit à Paris La Défense.
Construire une application mobile avec un CMSAgoraCMS
Réaliser des applications mobiles natives à partir de son CMS est possible et même facile. Quelles sont les solutions pour réaliser des applications mobiles tout en conservant l’homogénéïté de son CMS ?
Comment à partir de son CMS, on peut créer une usine de Web Services et ainsi exposer/remonter les contenus en direction des applications mobiles
Comment disposer d’une gestion d’utilisateurs commune au site Web et à l’application mobile
Comment industrialiser la solution au niveau des clients mobiles par une technologie de connecteurs
Comment mettre en place le même analytics et des notifications ciblées
Les applications mobiles se distinguent par les services de géo-proximité et leurs interactions avec les objets connectés (beacons, internet des objets, etc…). Pas de panique! Le CMS reste toujours le réceptacle pour l’intégration de tels services.
#ScalaBigDay
Jeudi 12 juin 2014
"Saisir les nouveaux enjeux de la mobilité et exploiter le potentiel du mobile" (Salle 5, 16h30 - 17h30)
Speaker : Mathieu Molinaro (@MatMolinaro)
Transitions et Animations – Donnez une nouvelle dimension à vos applications ...Microsoft
Améliorer l’impact et l’expérience utilisateur de vos applications en travaillant sur les animations de vos contrôles et la transition de vos pages. En quelques astuces et conseils, Samuel et Jean-Sébastien vous apporteront les clés pour rendre vos applications uniques !
Speakers : Jean-Sébastien Dupuy (Microsoft), Samuel Blanchard (Naviso)
Alphorm.com Formation Windev Mobile 19, AndroidAlphorm
Vous trouverez la formation complète ici:
http://www.alphorm.com/tutoriel/formation-en-ligne-windev-mobile-android-19
Dans cette formation vous allez apprendre avec WinDev Mobile pour Android, par le développement pas à pas d’un logiciel mobile complet.
Vous allez pouvoir Configurer l’environnement de développement(SDK, Java…), Comprendre les principes de fonctionnement de WinDev mobile(Compilation…), Utiliser des sources de données hétérogènes(SQLite, HFSQL, Access, la réplication…), Utiliser les principaux champs(Action bar, carte, graphe…), Développer en multiplateforme(Code cible conditionnel, conseils…), Programmer, utiliser les outils mobiles(GPS, SMS, capteurs, caméra, codes-barres …) et Déployer une application(Google Play, Emulateur, ADB…)
La nouvelle donne du mobile pour les devices professionnels mobility for bu...Tristan Verdier
Depuis 2007, les smartphones font une percée historique sur le marché des devices professionnels. En quoi s'agit-il d'une vraie rupture technologique? Comment profiter au maximum de cette nouvelle donne dans votre activité? Quels sont les nouveaux business models? Y a-t-il une limite à cette percée? Tout ces enjeux ont été traités par Tristan Verdier, CEO d'Applidget, lors d'une conférence sur le salon Mobility for Business du 8 et 9 octobre 2012 au Cnit à Paris La Défense.
Construire une application mobile avec un CMSAgoraCMS
Réaliser des applications mobiles natives à partir de son CMS est possible et même facile. Quelles sont les solutions pour réaliser des applications mobiles tout en conservant l’homogénéïté de son CMS ?
Comment à partir de son CMS, on peut créer une usine de Web Services et ainsi exposer/remonter les contenus en direction des applications mobiles
Comment disposer d’une gestion d’utilisateurs commune au site Web et à l’application mobile
Comment industrialiser la solution au niveau des clients mobiles par une technologie de connecteurs
Comment mettre en place le même analytics et des notifications ciblées
Les applications mobiles se distinguent par les services de géo-proximité et leurs interactions avec les objets connectés (beacons, internet des objets, etc…). Pas de panique! Le CMS reste toujours le réceptacle pour l’intégration de tels services.
#ScalaBigDay
Jeudi 12 juin 2014
"Saisir les nouveaux enjeux de la mobilité et exploiter le potentiel du mobile" (Salle 5, 16h30 - 17h30)
Speaker : Mathieu Molinaro (@MatMolinaro)
Transitions et Animations – Donnez une nouvelle dimension à vos applications ...Microsoft
Améliorer l’impact et l’expérience utilisateur de vos applications en travaillant sur les animations de vos contrôles et la transition de vos pages. En quelques astuces et conseils, Samuel et Jean-Sébastien vous apporteront les clés pour rendre vos applications uniques !
Speakers : Jean-Sébastien Dupuy (Microsoft), Samuel Blanchard (Naviso)
10 tips pour améliorer les performances de vos applications Windows 8Microsoft
S’il est très simple de réaliser des applications Windows 8 de qualité, il est moins évident de créer des applications ultra performantes. Windows tourne désormais sur tout type d’appareils, des PC de gamers aux tablettes peu puissantes. Pour ces dernières, il est nécessaire de tirer parti au maximum des API fournies par WinRT. Cette session vous propose de découvrir 10 astuces afin d’améliorer visiblement les performances de vos applications.
http://fr.droidcon.com/2014/agenda/
http://fr.droidcon.com/2014/agenda/detail?title=Google+Glass%3A+which+framework+depending+for+which+usage
Ready to develop your first Google Glass app? I guess that you will be asking yourself the same questions we had :
• How to sign in your users without keyboard?
• How to scan or detect an object just by looking at it?
• How to provide an intuitive and interactive UX?
• How to deal with your IT system and share information between users?
We will show you which dependencies to add to your build.gradle to satisfy your user's wildest dreams and provide them a full compatible app for connected glasses.
You're not ready? Don't panic, our ideas will convince you to buy glasses. And with our code you will discover that a Google Glass app is nothing else but an Android App.
Speaker : Mathieu Hausherr, OCTO Technology
Mathieu Hausherr is a native mobile app developer at Octo Technology. He develops iOS and Android apps. He believes in mobile development industrialization, unit testing and continuous integration. He loves testing new devices like glasses or watches.
Follow him on twitter (@mhausherr)
Speaker : Cédric Pointel, OCTO Technology
Cédric Pointel is as mobile developer at OCTO Technology since 4 years. He develops mobile apps, mostly on iOS, for bank, insurance, luxury or social media. He also helps companies to improve theirs skills on mobile knowledge, code quality and continuous integration. Interested in robotics and connected objects, he has started testing new devices like Google Glass since the beginning of the year.
Follow him on twitter (@cpointel)
Similaire à Gérer un parc de téléphones (Droidcon Tunisia 2014) (20)
2. 02
SHOWCASE
GERER UN PARC DE TELEPHONES
QUI SOMMES NOUS ?
Mais qui est Sidereo ? Que faisons-nous ?
LES COMPOSANTS
d’une solution mobile
NOTRE CLIENT
COMMENT MODIFIER
Android pour ces besoins ?
PRINCIPALES DIFFICULTES
Et nos conclusions !
3. 03
QUI
SOMMES NOUS ?
Besoin d'une stratégie mobile ?
Attention à la marche !
Sidereo vous aidera à concevoir, développer et
mettre en marché votre solution mobile.
Nos sujets
Nos compétences
Applicatif métier mobile
Étude, conseil et analyse
Gestion de parc
Gestion de projet
Gestion applicative
Développement et recueil des retours
Objets connectés
OS embarqués
utilisateur
Déploiement
Mise en marché
6. 06
LES COMPOSANTS
App. Signature
Mobile Application Management (MAM)
Mobile Device Management (MDM)
FrameWork Android
Dalvik Virtual Machine (ou Android RunTime)
Librairies natives et noyau
GSM
WiFi
Sécurité
App. Système
Configuration
App. Utilisateur
Authentification
D’UNE SOLUTION MOBILE
7. 06
LES COMPOSANTS
App. Signature
Mobile Application Management (MAM)
Mobile Device Management (MDM)
FrameWork Android
Dalvik Virtual Machine (ou Android RunTime)
Librairies natives et noyau
GSM
WiFi
Sécurité
App. Système
Configuration
App. Utilisateur
Authentification
D’UNE SOLUTION MOBILE
8. 06
LES COMPOSANTS
App. Signature
Mobile Application Management (MAM)
Mobile Device Management (MDM)
FrameWork Android
Dalvik Virtual Machine (ou Android RunTime)
Librairies natives et noyau
GSM
WiFi
Sécurité
App. Système
Configuration
App. Utilisateur
Authentification
D’UNE SOLUTION MOBILE
9. 06
LES COMPOSANTS
App. Signature
Mobile Application Management (MAM)
Mobile Device Management (MDM)
FrameWork Android
Dalvik Virtual Machine (ou Android RunTime)
Librairies natives et noyau
GSM
WiFi
Sécurité
App. Système
Configuration
App. Utilisateur
Authentification
D’UNE SOLUTION MOBILE
10. 06
LES COMPOSANTS
App. Signature
Mobile Application Management (MAM)
Mobile Device Management (MDM)
FrameWork Android
Dalvik Virtual Machine (ou Android RunTime)
Librairies natives et noyau
GSM
WiFi
Sécurité
App. Système
Configuration
App. Utilisateur
Authentification
D’UNE SOLUTION MOBILE
11. ETUDE DE CAS
07
• Location de terminaux mobiles à court terme
• Calcul de la consommation voix et data
• Pas de SMS
• Localisation des terminaux, gestion des dégâts, etc.
• Environnement contraint pour l’utilisateur
• Embarquer des applications
12. 08
ETUDE DE CAS
LES COMPOSANTS D’UNE
App. Signature
Mobile Application Management (MAM)
Mobile Device Management (MDM)
FrameWork Android
Dalvik Virtual Machine (ou Android RunTime)
Librairies natives et noyau
GSM
WiFi
Sécurité
App. Système
Configuration
App. Utilisateur
Authentification
SOLUTION MOBILE
13. 09
COMMENT MODIFIER
ANDROID ?
INTRODUCTION : LE SERVEUR
- Base utilisateurs
- Tarifs & Consommation
Smartphone en
location
- Paiement
- Gestion des dommages
- Applications
- Contacts
- Numéros bloqués
- Push
Serveur
14. COMMENT MODIFIER
ANDROID ?
DIFFÉRENTS TYPES D’APPLICATION
Application utilisateur :
!
- Utilisation standard du
framework Android
- Peut remplacer des
briques de bases telles
que le launcher, le
composer, le clavier
10
15. COMMENT MODIFIER
ANDROID ?
DIFFÉRENTS TYPES D’APPLICATION
Application utilisateur :
!
- Utilisation standard du
framework Android
- Peut remplacer des
briques de bases telles
que le launcher, le
composer, le clavier
Application système :
!
- Peut utiliser certaines
permissions particulières
(reboot, installation
silencieuse d’application,
…)
- Non désinstallable
10
16. 10
COMMENT MODIFIER
ANDROID ?
DIFFÉRENTS TYPES D’APPLICATION
Application utilisateur :
!
- Utilisation standard du
framework Android
- Peut remplacer des
briques de bases telles
que le launcher, le
composer, le clavier
Application système :
!
- Peut utiliser certaines
permissions particulières
(reboot, installation
silencieuse d’application,
…)
- Non désinstallable
Application signature :
!
- Non désactivable par
l’utilisateur
18. COMMENT MODIFIER
ANDROID ?
PRÉEMBARQUER DES APPLICATIONS
• Avec le code source via un Makefile Android classique (Android.mk) :
!
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
!
LOCAL_SRC_FILES := $(call all-java-files-under, src)
!
LOCAL_PACKAGE_NAME := CityGuide
LOCAL_CERTIFICATE := platform
!
include $(BUILD_PACKAGE)
!
!
• Au format APK (dont on n’a pas le code source) :
!
PRODUCT_COPY_FILES +=
somewhere/ToiletsInParis.apk:system/app/ToiletsInParis.apk (< 4.4)
somewhere/ToiletsInParis.apk:system/priv-app/ToiletsInParis.apk (>= 4.4)
11
19. COMMENT MODIFIER
ANDROID ?
PRÉEMBARQUER DES APPLICATIONS
• Avec le code source via un Makefile Android classique (Android.mk) :
!
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
!
LOCAL_SRC_FILES := $(call all-java-files-under, src)
!
LOCAL_PACKAGE_NAME := CityGuide
LOCAL_CERTIFICATE := platform
!
include $(BUILD_PACKAGE)
!
!
• Au format APK (dont on n’a pas le code source) :
!
PRODUCT_COPY_FILES +=
somewhere/ToiletsInParis.apk:system/app/ToiletsInParis.apk (< 4.4)
somewhere/ToiletsInParis.apk:system/priv-app/ToiletsInParis.apk (>= 4.4)
11
20. COMMENT MODIFIER
ANDROID ?
Application “Découverte et paiement” :
• Impassable sans paiement
• Aucune fonctionnalité du téléphone accessible
• Lancée à chaque démarrage tant que le paiement n’est pas fait
12
21. COMMENT MODIFIER
13
ANDROID ?
DÉVELOPPER UNE APPLICATION DE DÉMARRAGE
BLOQUANTE
• C’est simple !
• Rajouter sur une Activity de l’AndroidManifest.xml :
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<action android:name="android.intent.action.DEVICE_INITIALIZATION_WIZARD"/>
<category android:name="android.intent.category.HOME"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
22. COMMENT MODIFIER
14
ANDROID ?
DÉVELOPPER UNE APPLICATION DE DÉMARRAGE
BLOQUANTE
• Mais il faut penser à désactiver l’application :
PackageManager packageManager = context.getPackageManager();
!
packageManager.setComponentEnabledSetting(
new ComponentName(“com.helloworld.app”, HelloWorldActivity.class),
PackageManager.COMPONENT_ENABLED_STATE_DISABLED, 0);
23. COMMENT MODIFIER
15
ANDROID ?
DESCENTE D’APPLICATION SILENCIEUSE
• Pour provoquer l’installation d’une
application sans demande de permission, il
faut être système
public final static String PM_UPDATE = "pm install -r";
!
public static String executeCommand(String command, String param) {
BufferedReader in = null;
try {
Process process = Runtime.getRuntime().exec(String.format("%s %s", command,
param));
} […]
24. COMMENT MODIFIER
ANDROID ?
MODIFIER LES APNS
• Il ne faut pas modifier le fichier dans le
framework, mais en créer un autre.
!
• Chez CyanogenMod, il est situé dans vendor/cm/
prebuild/common/etc :
<apns version="xx">
<apn carrier="xxx" mcc="xxx" mnc="xxx" apn="xxx" user="xxx" password="xx"
type=“xxx" … />
</apns>
16
25. COMMENT MODIFIER
ANDROID ?
Application “Rendu du téléphone” :
• Authentification distributeur
• Formulaire de vérification du téléphone à remplir par le distributeur
• Reset complet du téléphone
• Redémarrage avec optimisation des applications
17
28. COMMENT MODIFIER
ANDROID ?
COMMENT FAIRE UN RESET ?
• Il faut demander la permission système
android.permission.MASTER_CLEAR
!
!
• Et appeler cet Intent :
sendBroadcast(
new Intent(“android.intent.action.MASTER_CLEAR"));
19
29. COMMENT MODIFIER
ANDROID ?
GÉRER LES COMMUNICATIONS
• SMS en modifiant le framework
!
• Appels : plusieurs choix
– Directement dans le framework
– En interceptant l’Intent dans une application
!
• Internet via des règles iptables
20
30. COMMENT MODIFIER
21
ANDROID ?
COUPER LES SMS
• Les applications tierces utilisent le SmsManager
pour envoyer un message, qui lui même utilise le
IccSmsInterfaceManager.
public void sendTextMessage(String destinationAddress, String scAddress, String text,
PendingIntent sentIntent, PendingIntent deliveryIntent) {
[…]
ISms iccISms = ISms.Stub.asInterface(ServiceManager.getService("isms"));
if (iccISms != null) {
iccISms.sendText(ActivityThread.currentPackageName(), destinationAddress,
scAddress, text, sentIntent, deliveryIntent);
} […]
31. COMMENT MODIFIER
ANDROID ?
COUPER LES SMS
• On note plus particulièrement ces
méthodes :
!
• sendData(…)
• sendText(…)
• sendTextWithPriority(…)
• …
22
35. COMMENT MODIFIER
ANDROID ?
COUPER LES APPELS
• Application interceptant l’intent
!
<intent-filter>
<action android:name="android.intent.action.ANSWER"/>
<action android:name="android.intent.action.PHONE_STATE"/>
<action android:name="android.intent.action.NEW_OUTGOING_CALL" />
</intent-filter>
!
!
• Mais ne la rendant pas au système
setResultData(null);
!
!
• Inconvénient : priorité d’interception
• Solution : modifier le framework pour changer l’intent levée par un appel
24
36. COMMENT MODIFIER
ANDROID ?
COUPER LES APPELS
• Application interceptant l’intent
!
<intent-filter priority=“xx”>
<action android:name="android.intent.action.ANSWER"/>
<action android:name="android.intent.action.PHONE_STATE"/>
<action android:name="android.intent.action.NEW_OUTGOING_CALL" />
</intent-filter>
!
!
• Mais ne la rendant pas au système
setResultData(null);
!
!
• Inconvénient : priorité d’interception
• Solution : modifier le framework pour changer l’intent levée par un appel
24
37. COMMENT MODIFIER
ANDROID ?
FACTURER LES APPELS
• On enregistre un BroadcastReceiver pour qu’il reçoive les événements relatifs
aux appels :
!
<intent-filter android:priority=“0">
<action android:name="android.intent.action.NEW_OUTGOING_CALL"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
!
• Un appel suit forcément cette séquence, sinon il n’a pas abouti/l’utilisateur l’a
annulé avant :
• Action de l’Intent vaut Intent.ACTION_NEW_OUTGOING_CALL
• Puis en fonction du CallState du TelephonyManager
• TelephonyManager.CALL_STATE_OFFHOOK
• TelephonyManager.CALL_STATE_IDLE
25
38. COMMENT MODIFIER
ANDROID ?
COUPER INTERNET
• Règles iptables
!
• Problème : on filtre par IP mais ici la gestion du
Push pose un problème :
!
– Soit on coupe tout, mais on ne reçoit plus de
communication du SI
– Soit on whitelist les serveurs de GCM mais dans ce
cas, on reçoit tous les pushs, pas juste les notres
• Solution : filtrer par application
26
39. COMMENT MODIFIER
ANDROID ?
COUPER INTERNET
Maps
Uid : 1
GoogleServices
Framework
Uid : 2
TrafficManager
Uid : 3
Paris City Guide
Uid : 4
27
40. COMMENT MODIFIER
ANDROID ?
COUPER INTERNET
Maps
Uid : 1
GoogleServices
Framework
Uid : 2
TrafficManager
Uid : 3
Paris City Guide
Uid : 4
27
41. COMMENT MODIFIER
28
ANDROID ?
COUPER INTERNET
• 1) On initialise iptables
!
iptables --flush
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT DROP
-A : ajouter une règle en fin de liste
-P : indiquer une policy
-j : indiquer une décision
-m : règle/correspondance
--sport : port source
--dport : port de destination
42. 28
COMMENT MODIFIER
ANDROID ?
COUPER INTERNET
-A : ajouter une règle en fin de liste
-P : indiquer une policy
-j : indiquer une décision
-m : règle/correspondance
--sport : port source
--dport : port de destination
• 2) On crée des meta-interfaces
!
iptables -N mtm
!
iptables -N mtm-wifi
iptables -N mtm-3g
43. 28
COMMENT MODIFIER
ANDROID ?
COUPER INTERNET
-A : ajouter une règle en fin de liste
-P : indiquer une policy
-j : indiquer une décision
-m : règle/correspondance
--sport : port source
--dport : port de destination
• 3) On associe ces metas-interfaces aux
interfaces réseau
!
iptables -A mtm -o wlan+ -j mtm-wifi
iptables -A mtm -o tiwlan+ -j mtm-wifi…
!
iptables -A mtm -o rmnet+ -j mtm-3g…
44. 28
COMMENT MODIFIER
ANDROID ?
COUPER INTERNET
-A : ajouter une règle en fin de liste
-P : indiquer une policy
-j : indiquer une décision
-m : règle/correspondance
--sport : port source
--dport : port de destination
• 4) On définit les exceptions
!
iptables -A mtm-wifi -m owner --uid-owner uid -j RETURN
iptables -A mtm-3g -m owner --uid-owner uid -j RETURN
45. COMMENT MODIFIER
28
ANDROID ?
COUPER INTERNET
• 5) On termine par
!
iptables -P OUTPUT ACCEPT
-A : ajouter une règle en fin de liste
-P : indiquer une policy
-j : indiquer une décision
-m : règle/correspondance
--sport : port source
--dport : port de destination
46. COMMENT MODIFIER
ANDROID ?
PRINCIPALES DIFFICULTÉS
• Choisir une bonne base (AOSP ?
CyanogenMod ?)
• Modifier le moins de choses possibles
• Gérer les sources d’Android
• Faible documentation
• Temps pour tester
• Samsung ;)
29