Bon sens!
Il y a 15 ans
Les technologies de l'information vues sous un angle AGILE
Hardware wishlist
- 4G network (LTE probably in 2011, but WiMax is already possible).
- New camera. 5MP? Flash? etc. (+ camera shutter)
- Front camera, minimum of 3 MP for video conferences.
- New design
- New WiFi chip (802.11n) (like found in the iPod Touch)
- Better cellular chips of the 3G and 2G networks
- (AM)OLED screen (maybe some extra backlight when you’re outside?)
- Two speakers or “all-around-sound” and of course better audio quality.
- Better 3D graphics
- Up to 64GB of space. Declare 16GB the dead, 8GB ‘low-quality’ model like iPod Touch
- New processor and more RAM
- Infrared
- Higher resolution: High Definition?!
- FM transmitter
- Pedometer
- New exterior (design)
- Removable battery
- Built-in RFID (radio-frequency identification) technology
- Fingerscanner
- LED light in the home button (e.g. blue with new message, green incoming call etc.) with ability to turn it off
- Powermat support
- Touch-sensitive places at all corners (at left and right of home button and top right and top left) (so you can use an app without blocking your view with your hands and it would be a great improvement like ’scrolling’ or something like that) with easy turn on and off like double tap in corners at the same time (you won’t have an ‘accident double tap at two corners at the same time haha).
- And of course… better battery life
iPhone 4.0 software
- Redesigned UI
- Multitasking (kinda like how it’s done in Safari with multiple pages)!
- Extentions of Voice Control: what about creating an email just by telling the iPhone too?
- Flash (and of course the choice to turn it off for the people who think it’s oldfashion)
- File browsing
- Bluetooth restrictions should be lifted (file transfer)
- More abilities to customize your iPhone: what about wallpapers on your homescreen?
- File browsing
- A ‘unity inbox’ for emails.
- Spotlight extension: search the web too!
- iPhone notes app needs an upgrade
- Ability to hide applications (for example that the hidden apps just appear in a special list)
- Categories/Folders: seriously, categories/folders would be nice
- Character counter in the texting app…
- Turn things on and off easier (less steps)
- Radio application (apperently the 3Gs is able to support this for sure)
- Native editing of word and excel docs. Let alone editing of pages/numbers etc.
- 720p video out
- Google Maps navigation/latitude/etc.
- Wireless syncing
- Updates of Voice Control (especially in languages other than English) and new features (e.g. “Google Apple” and it’s going to Google for Apple or compose a mail via your voice etc.)
- Profiles
- Text message counter
- New iPod app: what about deleting a song, or naming playlists?
- Support for wider format of video files
net.learn2develop.MyPushApp
. Click Submit (see Figure 7).aps.developer.identity.cer
. Double-click on it to install it in the Keychain Access application (see Figure 14). The SSL certificate will be used by your provider application so that it can contact the APNs to send push notifications to your applications.MyDevicesProfile
as the profile name. Select PushAppID as the App ID. Finally, check all the devices that you want to provision (you can register these devices with the iPhone Developer Program Portal through the Devices tab). Click Submit (see Figure 16).MyDevicesProfile.mobileprovision
file onto the Xcode icon on the Dock.MyDevicesProfile
installed on the device (see Figure 18).beep.wav
in this example) onto the Resources folder in Xcode (see Figure 19).net.learn2develop.MyPushApp
.ApplePushNotificationAppDelegate.m
file, type the following code in bold:#import "ApplePushNotificationAppDelegate.h" #import "ApplePushNotificationViewController.h" @implementation ApplePushNotificationAppDelegate @synthesize window; @synthesize viewController; - (void)applicationDidFinishLaunching:(UIApplication *)application { [window addSubview:viewController.view]; [window makeKeyAndVisible]; NSLog(@"Registering for push notifications..."); [[UIApplication sharedApplication] registerForRemoteNotificationTypes: (UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound)]; } - (void)application:(UIApplication *)app didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken { NSString *str = [NSString stringWithFormat:@"Device Token=%@",deviceToken]; NSLog(str); } - (void)application:(UIApplication *)app didFailToRegisterForRemoteNotificationsWithError:(NSError *)err { NSString *str = [NSString stringWithFormat: @"Error: %@", err]; NSLog(str); } - (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo { for (id key in userInfo) { NSLog(@"key: %@, value: %@", key, [userInfo objectForKey:key]); } } - (void)dealloc { [viewController release]; [window release]; [super dealloc]; } @end
Command-R
to test the application on a real device. Press Shift-Command-R
in Xcode to display the Debugger Console window. Observe carefully the device token that is printed (see Figure 22). In the figure below, the token is:38c866dd bb323b39 ffa73487 5e157ee5 a85e0b7c e90d56e9 fe145bcc 6c2c594b
. Record down this device token (you might want to cut and paste it into a text file).{ "aps": { "alert" : "You got a new message!" , "badge" : 5, "sound" : "beep.wav"}, "acme1" : "bar", "acme2" : 42 }
Right-click
on the Resources folder in Xcode and select Add Existing Files…. Select theaps.developer.identity.cer
file that you have downloaded earlier (see Figure 25).ApplicationDelegate.m
file, modify the code as shown in bold below:- (id)init { self = [super init]; if(self != nil) { self.deviceToken = @"38c866dd bb323b39 ffa73487 5e157ee5 a85e0b7c e90d56e9 fe145bcc 6c2c594b"; self.payload = @"{\"aps\":{\"alert\":\"You got a new message!\",\"badge\":5,\"sound\":\"beep.wav\"},\"acme1\":\"bar\",\"acme2\":42}"; self.certificate = [[NSBundle mainBundle] pathForResource:@"aps_developer_identity" ofType:@"cer"]; } return self; }
{ "aps": { "alert" : "You got a new message!" , "badge" : 5, "sound" : "beep.wav"}, "acme1" : "bar", "acme2" : 42 }
Command-R
and send a push message from the PushMeBaby application, the Debugger Console window will display the following outputs:2009-11-24 21:11:49.182 ApplePushNotification[1461:207] key: acme1, value: bar 2009-11-24 21:11:49.187 ApplePushNotification[1461:207] key: aps, value: { alert = "You got a new message!"; badge = 5; sound = "beep.wav"; } 2009-11-24 21:11:49.191 ApplePushNotification[1461:207] key: acme2, value: 42