Tecnología
Parte 2
Curso de Formación en Movilidad
Julio 2013
1
Qué veremos
Parte 2
Personalización
ROMs
Becoming root
CyanogenMod y Paranoid Android
Misc
Monitorización
Batería
Backups
2
Personalización
3
Terminología
ROM
Firmware, imagen del SO
Flashear
Instalar el firmware
Rootear
Obtener permisos de usuario privilegiado
4
Terminología
Bootloader
Programa de arranque del SO
Desbloquear bootloader
Permitir instalar firmware no oficial
5
ROM
¿Qué es?
Versión de Android modificada
Android es un SO móvil de propósito
general
Las versiones modificadas buscan
• Ex...
ROM
Instalación
Flashear es instalar una ROM
Dos etapas
1.Modo fastboot para instalar la imagen
de recuperación
a.Desbloqu...
ROM
Instalación
fastboot y recovery
Conectar por USB
Reiniciar dispositivo en modo fastboot
$ adb reboot bootloader
Instal...
Kernel
Una ROM es el binario del sistema
operativo, incluyendo el kernel compilado
Mismo diseño interno que Linux
El kerne...
Kitchens
¿Necesito compilar y generar mi propia
ROM para personalizar mi dispositivo con
Android?
Las kitchens parten de u...
CyanogenMod
ROM que incrementa rendimiento y
estabilidad
Muy popular por su alto grado de
personalización
Soporta actualme...
CyanogenMod
Algunas features:
•Revocar permisos de apps
•Tethering por USB,WiFi o Bluetooth
•Optimizado uso de batería
•CP...
Paranoid Android
Permite ubicar y dimensionar tus apps
libremente
13
Root
Rootear
•Conseguir permisos de super usuario
(root)
•Acceder a funciones protegidas
¡Cuidado!
Un móvil rooteado puede...
Root
Podemos modificar ciertos ajustes sin
tener que cambiar de ROM:
• Asignar/Revocar permisos de apps
• Habilitar tetheri...
Root
¿Cómo?
El método es muy dispar entre dispositivos
Básicamente, se sustituye un programa (su)
para ejecutar procesos c...
Sandboxing
Todas las apps en iOS y Android están
sandboxed
Tienen acceso sólo a los recursos que el
sistema asigne
No tien...
Sandboxing
Disco, memoria, procesos, etc, pertenecen
a cada app, y no los comparten
¡Atención!
Si Android está rooted, cua...
Optimización y Rendimiento
19
Optimización y Rendimiento
“Mejores prácticas”
•ROMs optimizadas (uso personal)
•Librerías proyecto
•Instalar apps “fiables...
Optimización y Rendimiento
Desarrollo
iOS
Xcode 5 Instruments
21
Optimización y Rendimiento
Desarrollo
Android
Android Debug Monitor
22
Optimización y Rendimiento
Desarrollo
Android
Little Eye
Por app: consumo de batería, tráfico de red, uso de
memoria y CPU....
Monitorización
24
Monitorización
Info del dispositivo
iOS
Settings > General > About
¿UDID?
25
Monitorización
Info del dispositivo
iOS
Xcode Organizer
26
Monitorización
Info del dispositivo
Android
Settings > About Phone
Apps en Google Play (consultan por API info del
sistema...
Monitorización
Batería
iOS
Mediante apps
No hay forma “oficial” de saber el nivel
de batería más allá del % global
28
Monitorización
Batería
Android
Battery Doctor
Consumo de batería por app
Estimación tiempo restante por tipo de uso
Estima...
Monitorización
Tráfico de red
30
Monitorización
Logs
Es necesario
•Xcode
•Android SDK
31
Monitorización
Logs
iOS
Xcode Organizer
•Console
•Device Logs
32
Monitorización
Logs
iOS
Xcode Organizer Console
→ Mensajes del sistema
Jul 3 18:32:56 kernel[0] <Debug>:ALS:AppleARMBackli...
Monitorización
Logs
iOS
Xcode Organizer Device Logs
→Trazas de error por app
34
Monitorización
Logs
Android
$ adb logcat
35
Monitorización
Logs
Android
Eclipse,Android Studio
36
Caso práctico
Atención al usuario
37
Backups
Matizamos
Backup de datos de aplicaciones
Backup de sistema: apps instaladas,
configuración... todo menos contenido...
Backups
iOS
iTunes
39
Backups
Android
NANDroid
Es un “standard” para el formato de
backups
Bootloader en modo recuperación
Online Nandroid Backu...
Backups
Android
Helium
No necesitas root
Sólo backups de apps, SMS y registro
llamadas
Backup en PC y en Dropbox/Box/Googl...
Backups
Android
Titanium Backup
Backups completos
Necesitas root
42
Backups
¿Tiene sentido realizar backups de sistema
completos?
¿Backups sin acceso root?
¿Es escalable?
43
Antivirus
iOS
44
Antivirus
Android
45
Upcoming SlideShare
Loading in …5
×

Curso de formación en Movilidad (Parte II) - Personalización

258 views
192 views

Published on

Curso de formación en Movilidad que consta de tres partes. En esta primera parte del curso se hablará de: ROM's, Becoming root, CyanogenMod y Paranoid Android, además de Monitorización, Batería y Backups

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
258
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Curso de formación en Movilidad (Parte II) - Personalización

  1. 1. Tecnología Parte 2 Curso de Formación en Movilidad Julio 2013 1
  2. 2. Qué veremos Parte 2 Personalización ROMs Becoming root CyanogenMod y Paranoid Android Misc Monitorización Batería Backups 2
  3. 3. Personalización 3
  4. 4. Terminología ROM Firmware, imagen del SO Flashear Instalar el firmware Rootear Obtener permisos de usuario privilegiado 4
  5. 5. Terminología Bootloader Programa de arranque del SO Desbloquear bootloader Permitir instalar firmware no oficial 5
  6. 6. ROM ¿Qué es? Versión de Android modificada Android es un SO móvil de propósito general Las versiones modificadas buscan • Explotar al máximo las capacidades de dispositivos • Mejorar versiones oficiales • Personalizar el terminal 6
  7. 7. ROM Instalación Flashear es instalar una ROM Dos etapas 1.Modo fastboot para instalar la imagen de recuperación a.Desbloquear bootloader 2.Modo recovery para instalar la ROM 7
  8. 8. ROM Instalación fastboot y recovery Conectar por USB Reiniciar dispositivo en modo fastboot $ adb reboot bootloader Instalar imagen de recuperación $ fastboot flash recovery fichero.img Reiniciar dispositivo en modo recuperación $ fastboot boot fichero.img 8
  9. 9. Kernel Una ROM es el binario del sistema operativo, incluyendo el kernel compilado Mismo diseño interno que Linux El kernel gestiona el hardware Podemos actualizar el kernel sin reinstalar el sistema 9
  10. 10. Kitchens ¿Necesito compilar y generar mi propia ROM para personalizar mi dispositivo con Android? Las kitchens parten de una ROM básica que podemos personalizar: •Pantalla de inicio •Apps incluídas •Ajustes varios rendimiento 10
  11. 11. CyanogenMod ROM que incrementa rendimiento y estabilidad Muy popular por su alto grado de personalización Soporta actualmente +70 dispositivos 11
  12. 12. CyanogenMod Algunas features: •Revocar permisos de apps •Tethering por USB,WiFi o Bluetooth •Optimizado uso de batería •CPU overclocking 12
  13. 13. Paranoid Android Permite ubicar y dimensionar tus apps libremente 13
  14. 14. Root Rootear •Conseguir permisos de super usuario (root) •Acceder a funciones protegidas ¡Cuidado! Un móvil rooteado puede perder la garantía (según fabricante) 14
  15. 15. Root Podemos modificar ciertos ajustes sin tener que cambiar de ROM: • Asignar/Revocar permisos de apps • Habilitar tethering • Acceso total al sistema de ficheros CyanogenMod rootea el dispositivo en el proceso de instalación 15
  16. 16. Root ¿Cómo? El método es muy dispar entre dispositivos Básicamente, se sustituye un programa (su) para ejecutar procesos como super usuario El original sólo ejecuta sin privilegios 16
  17. 17. Sandboxing Todas las apps en iOS y Android están sandboxed Tienen acceso sólo a los recursos que el sistema asigne No tienen acceso a recursos utilizados por otras apps Único punto de entrada: app schemas 17
  18. 18. Sandboxing Disco, memoria, procesos, etc, pertenecen a cada app, y no los comparten ¡Atención! Si Android está rooted, cualquier app podría utilizar esos permisos para “hacer el mal” 18
  19. 19. Optimización y Rendimiento 19
  20. 20. Optimización y Rendimiento “Mejores prácticas” •ROMs optimizadas (uso personal) •Librerías proyecto •Instalar apps “fiables” •Recomendaciones fabricante 20
  21. 21. Optimización y Rendimiento Desarrollo iOS Xcode 5 Instruments 21
  22. 22. Optimización y Rendimiento Desarrollo Android Android Debug Monitor 22
  23. 23. Optimización y Rendimiento Desarrollo Android Little Eye Por app: consumo de batería, tráfico de red, uso de memoria y CPU... 23
  24. 24. Monitorización 24
  25. 25. Monitorización Info del dispositivo iOS Settings > General > About ¿UDID? 25
  26. 26. Monitorización Info del dispositivo iOS Xcode Organizer 26
  27. 27. Monitorización Info del dispositivo Android Settings > About Phone Apps en Google Play (consultan por API info del sistema) 27
  28. 28. Monitorización Batería iOS Mediante apps No hay forma “oficial” de saber el nivel de batería más allá del % global 28
  29. 29. Monitorización Batería Android Battery Doctor Consumo de batería por app Estimación tiempo restante por tipo de uso Estimación tiempo extra desactivando submódulos Notificación iniciar ciclo de carga 29
  30. 30. Monitorización Tráfico de red 30
  31. 31. Monitorización Logs Es necesario •Xcode •Android SDK 31
  32. 32. Monitorización Logs iOS Xcode Organizer •Console •Device Logs 32
  33. 33. Monitorización Logs iOS Xcode Organizer Console → Mensajes del sistema Jul 3 18:32:56 kernel[0] <Debug>:ALS:AppleARMBacklight::handleMessageGated - framebufferState -> 1 Jul 3 18:32:56 kernel[0] <Debug>:ALS:AppleARMBacklight::setBacklightEnableGated 1 (set level to 0x392) Jul 3 18:32:56 CLTM[14] <Error>: CLTM: resetting temps: now = 1372869176, last update = 1372869057 Jul 3 18:32:57 wifid[15] <Notice>:WiFi:[394561977.656129]:WoW is Enabled, 1 WoW Clients Jul 3 18:32:57 kernel[0] <Debug>:AppleD1881PMUPowerSource:AppleUSBCableDetect 1 Jul 3 18:32:57 kernel[0] <Debug>:AppleD1881PMUPowerSource:AppleUSBCableType USBHost Jul 3 18:32:58 wifid[15] <Notice>:WiFi:[394561978.160024]: External power source attached Jul 3 18:32:58 lockdownd[52] <Notice>: 3b64918c pairing_host_connected: connectionCount now 3 Jul 3 18:32:59 lockdownd[52] <Notice>: 00281000 special_case_get: MGCopyAnswer(kMGQSDIOProductInfo) returned NULL Jul 3 18:32:59 lockdownd[52] <Notice>: 00281000 special_case_get: MGCopyAnswer(kMGQSDIOManufacturerTuple) returned NULL Jul 3 18:32:59 lockdownd[52] <Notice>: 00281000 special_case_get: MGCopyAnswer(kMGQBasebandBoardSnum) returned NULL Jul 3 18:32:59 lockdownd[52] <Notice>: 00281000 special_case_get: MGCopyAnswer(kMGQWirelessBoardSnum) returned NULL Jul 3 18:32:59 ptpd[1016] <Error>: ptpd: startResponder Jul 3 18:33:00 ptpd[1016] <Notice>: PTP interface has been activated at high speed. Jul 3 18:33:06 Sergis-iPhone profiled[1025] <Notice>: (Note ) profiled: Service starting... Jul 3 18:33:06 Sergis-iPhone kernel[0] <Debug>: 012767.825601 wlan.A[2937] AppleBCMWLANNetManager::updateLinkQualityMetrics(): Report LQM to User Land 50, fAverageRSSI -71 Jul 3 18:33:06 Sergis-iPhone backupd[1024] <Warning>: INFO: Scheduling next backup at 7/4/13, 3:29:45 AM Jul 3 18:33:07 Sergis-iPhone backboardd[28] <Notice>:ALS: SetDisplayFactor: factor=0.0000 Jul 3 18:33:07 Sergis-iPhone kernel[0] <Debug>:AppleMultitouchN1SPI: updating power statistics Jul 3 18:33:07 Sergis-iPhone backboardd[28] <Notice>: MultitouchHID: detection mode: 3->255 Jul 3 18:33:08 Sergis-iPhone kernel[0] <Debug>:ALS:AppleARMBacklight::setBacklightEnableGated 0 (set level to 0x1f7) Jul 3 18:33:08 Sergis-iPhone backboardd[28] <Notice>: Posting 'com.apple.iokit.hid.displayStatus' notifyState=0 Jul 3 18:33:08 Sergis-iPhone wifid[15] <Notice>:WiFi:[394561988.447980]: Device display is OFF Jul 3 18:33:08 Sergis-iPhone kernel[0] <Debug>:ALS:AppleARMBacklight::handleMessageGated - framebufferState -> 0 Jul 3 18:33:17 Sergis-iPhone profiled[1025] <Notice>: (Note ) profiled: Service stopping. Jul 3 18:33:25 Sergis-iPhone wifid[15] <Notice>:WiFi:[394562005.352055]: Client networkd set type to normal application Jul 3 18:33:25 Sergis-iPhone wifid[15] <Notice>:WiFi:[394562005.356643]: BG Application: Not Present, BG Daemon: Present. Daemons: apsd Jul 3 18:33:26 Sergis-iPhone wifid[15] <Notice>:WiFi:[394562006.091701]: Client networkd set type to background application 33
  34. 34. Monitorización Logs iOS Xcode Organizer Device Logs →Trazas de error por app 34
  35. 35. Monitorización Logs Android $ adb logcat 35
  36. 36. Monitorización Logs Android Eclipse,Android Studio 36
  37. 37. Caso práctico Atención al usuario 37
  38. 38. Backups Matizamos Backup de datos de aplicaciones Backup de sistema: apps instaladas, configuración... todo menos contenido tarjeta SD 38
  39. 39. Backups iOS iTunes 39
  40. 40. Backups Android NANDroid Es un “standard” para el formato de backups Bootloader en modo recuperación Online Nandroid Backup App para evitar entrar en recovery mode Necesitas root y BusyBox (utilidades extra) 40
  41. 41. Backups Android Helium No necesitas root Sólo backups de apps, SMS y registro llamadas Backup en PC y en Dropbox/Box/Google Drive (sólo versión de pago) 41
  42. 42. Backups Android Titanium Backup Backups completos Necesitas root 42
  43. 43. Backups ¿Tiene sentido realizar backups de sistema completos? ¿Backups sin acceso root? ¿Es escalable? 43
  44. 44. Antivirus iOS 44
  45. 45. Antivirus Android 45

×