Your SlideShare is downloading. ×
0
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Caelum Day In Rio
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Caelum Day In Rio

1,138

Published on

Published in: Technology, Art & Photos
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,138
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
20
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. O mundo desmartphones em suas mãos com Google Android
  • 2. Quem são esses caras?
  • 3. Daniel Passos @passosArquiteto de Software Instrutor
  • 4. Fábio Pimentel@fabiopimentel Instrutor
  • 5. ?
  • 6. Open Handset Alliance
  • 7. http://source.android.com
  • 8. X
  • 9. Texthttp://www.youtube.com/watch?v=ZwzXvRpoPP4
  • 10. X
  • 11. 1.5 1.5 JSE
  • 12. Symbian// HelloWorld.cpp//#include "CommonFramework.h"// do the exampleLOCAL_C void doExampleL(){_LIT(KHelloWorldText,"Hello world!n");console->Printf(KHelloWorldText);}// HelloWorld.mmp//// Copyright (c) 2000 Symbian Ltd. All rights reserved.//// using relative paths for sourcepath and user includes//TARGET HelloWorld.exeTARGETTYPE exeUID 0//SOURCEPATH .SOURCE HelloWorld.cpp//USERINCLUDE .USERINCLUDE ..CommonFrameworkSYSTEMINCLUDE Epoc32include//
  • 13. Windows Mobileusing System;using System.Windows.Forms;public class HelloWorld { public static void Main() { MessageBox.Show( "Hello World!" ); }}
  • 14. // helloworldAppDelegate.m // helloworld #import "helloworldAppDelegate.h" #import "MyView.h" Objective C @implementation helloworldAppDelegate @synthesize window; @synthesize contentView; // Levi: Tell the compiler to synthesize relevant accessors @synthesize textView; - (void)applicationDidFinishLaunching:(UIApplication *) application {// helloworldAppDelegate.h // Create window// helloworld self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]#import <UIKit/UIKit.h> self.contentView = [[[MyView alloc] initWithFrame: [[UIScreen mainScreen] applicationFrame]] autorelease];@class MyView; [window addSubview:contentView];@interface helloworldAppDelegate : NSObject { // UIWindow *window; self.textView = [[[UITextView alloc] initWithFrame: MyView *contentView; CGRectMake(0.0f, 0.0f, 320.0f, 480.0f)] autorelease]; // Levi: Define textView object [textView setEditable:YES]; UITextView *textView; [textView setText:@"Hello} [contentView [window makeKeyAndVisible];@property (nonatomic, retain) UIWindow *window; }@property (nonatomic, retain) MyView *contentView;// Levi: Declare textView as a property - (void)dealloc {@property (nonatomic, retain) UITextView *textView; // Levi: Release the textView [textView release];@end [contentView release]; [window release]; [super dealloc]; } @end
  • 15. Androidpackage com.android.hello;import android.app.Activity;import android.os.Bundle;import android.widget.TextView;public class HelloAndroid extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); TextView tv = new TextView(this); tv.setText("Hello World"); setContentView(tv); }}
  • 16. Legal! Mas como essa bagaça funciona?
  • 17. !=
  • 18. 1.5 1.5 JSE
  • 19. JVM
  • 20. Surface Manager
  • 21. OpenGLAPI livre utilizada para desenvolvimento de aplicativos gráficos,ambientes 3D, jogos, entre outros. http://www.youtube.com/watch?v=KtzTL3y4RTA
  • 22. Media Framework
  • 23. SQLite‣ É Software Livre/domínio público e Multiplataforma‣ É um mecanismo de armazenamento seguro com transações ACID‣ Implementa a maioria do SQL92‣ Suporta bases de dados acima de 2 terabytes‣ Sem dependências externas
  • 24. WebKit
  • 25. libc#include <stdio.h>#include <unistd.h>int main(int argc, char **argv, char**env) { int i; for (i = 0; i < argc; i++) { printf("argv[%d] = %sn", i, argv[i]); } for (i = 0; env[i] != NULL; i++) { printf("env[%d] = %sn", i, env[i]); } printf("PATH = %sn", getenv("PATH")); setenv("HELLO", "world!", 1); putenv("GOODBYE=cruel world!"); printf("HELLO = %sn", getenv("HELLO")); printf("GOODBYE = %sn", getenv("GOODBYE")); return 0;}
  • 26. Activity # Tela # Independente # Pode ser invocada por outra app
  • 27. Activity
  • 28. Activity Activity starts onCreate() onStart() onResume() Activity running
  • 29. Activity Return to app onStart() Activity onResume() runningActivity destroyed Recebe Chamada onDestroy() onPause() Pouca Memoria onStop()
  • 30. Content Provider # Armazenar e recupera dados # Consome dados de outras apps # Expoem dados da sua aplicação
  • 31. Broadcast receiver # Responde as mensagens do sistema
  • 32. Mas como eu faço pra programar?
  • 33. http://developer.android.com/sdk
  • 34. 1.023/09/2008
  • 35. 1.109/02/2009
  • 36. 1.5 30/04/2009Cupcake ■ Widget ■ Gravação de Video ■ Gallery: Video playback (MPEG-4 & 3GP formats) ■ Bluetooth: Suporte a Stereo (A2DP and AVRCP profiles), Auto Pareamento ■ Browser: Copy and paste ■ Animações em trasições de tela ■ Upload YouTube ■ Upload Picasa
  • 37. 1.6 15/09/2009Donut ■ Voice Search ■ Android Market: Facilitaram a busca, screenshots, etc. ■ Melhoria no acesso a câmera ■ Display: Suporte a resolução WVGA
  • 38. 2.0/2.1 26/10/2009Eclair ■ Sincronismo com multiplas contas, inclusive Exchange ■ Bluetooth: 2.1 ■ Camera: Flash, zoom digital, Scene mode, White balance, Color effect, Macro focus ■ Browser: Double-tap zoom, Support for HTML5 ■ System: Otimização de Hardware ■ Display: Suporte a novos tamanhos de tela ■ Maps: Google Maps 3.1.2 ■ Live Wallpapers: Imagens animadas na Home screen
  • 39. 2.2 20/05/2010Froyo ■ System: Otimização de memoria e performance ■ Chromes V8 JavaScript engine ■ USB tethering & Wi-Fi hotspot ■ Discagem por voz e compartilhamento de contatos através de Bluetooth ■ Adobe Flash support ■ DPI screens (320 dpi), such as 4" 720p
  • 40. 2.3/2.3.3 06/12/2010Gingerbread ■ Display: extra-large (WXGA) ■ Suporte nativo a SIP VoIP ■ Near Field Communication ■ Media: WebM/VP8 & AAC audio encoding
  • 41. 3.0 26/02/2011Honeycomb ■ Pensado e otimozado para tablets ■ System Bar: acesso rápido às notificações, status, e botões de navegação suave disponível na parte inferior da tela. ■ Action Bar: Acesso a opções contextual, navegação, widgets, ou outros tipos de conteúdo no topo da tela. ■ Multitasking: ■ Suporte a video chat com Google Talk ■ Suporte a multiplos processadores de multiplos nucleos
  • 42. 3.1 10/05/2011Honeycomb ■ Conectividade com acessórios por USB ■ Suporte a teclados externos ■ Suporte a joysticks & gamepads
  • 43. ? ?Ice Cream Sandwich
  • 44. http://developer.android.com/sdk/eclipse-adt.html Android Development Tools (ADT)
  • 45. E agora?http://developer.android.com*http://groups.google.com/group/android-developers/ (Oficial)*http://groups.google.com/group/androidbrasil-dev
  • 46. FJ-57 |Desenvolvimento móvel com Google Android
  • 47. Obrigado! Daniel Passos Fabio Pimentel @passos @fabiopimenteldaniel.passos@caelum.com.br fabio.pimentel@caelum.com.br

×