Posts / December 17, 2012

Ushahidi iOS SDK

I am proud to announce a new major release of the Ushahidi iOS app, a complete rebuild with a number of significant improvements and a load of new features!

The new version has been submitted to the App Store, and just waiting for the Apple approval process before it is available for download. In the meantime, you can pull the latest code at github.com/ushahidi/Ushahidi_iPhone/

SDKiOS SDK
All the data storage, synchronization and base classes are now packaged in a standalone framework (Ushahidi.framework) and resource bundle (Ushahidi.bundle). The Ushahidi app uses this framework, but it also opens the possibility for other developers to build their own custom apps on top of this SDK.

Whitelabel
Whitelabel support is back however the property keys in the theme’s info.plist have been renamed to include USH prefix to avoid name collisions. You can also optionally include multiple maps in your whitelabel app, which might be useful for an organization that has multiple deployments. Checkout the README.markdown for full details on how to whitelabel the app.

Core Data
When I first started building the iOS app, Core Data was not supported on the iOS platform. As a result, the previous version relied heavily on archiving and unarchiving on objects to disk for storage. The good news is the new version now has Core Data support built directly into the Ushahidi SDK.

Performance
The new version is significantly faster than the previous version, thanks again to Core Data. Besides having the unarchive objects from disk, the previous also had to archive objects back to disk after changes were made, this is no longer needed.

Synchronization
New version now allows synchronization of multiple maps simultaneously, thanks to the Core Data support and some creative use of NSOperationQueues.

Pull Down To RefreshiOS Pull Down
The map list and report list now have a pull down to refresh control. These tables use the native UIRefreshControl when running iOS 6, and elegantly fallback to using the CKRefreshControl to provide backward compatibility on iOS 5.

Sharing
There are now multiple ways to share reports including to Twitter and Facebook, via SMS and Email, and also as a QR Code. The new version takes advantage of the native Twitter integration as well as new Facebook SDK but gracefully downgrades to a custom modal sharing popup when not available.

Printing
Besides sharing, the new version can also send report details and photos directly to a printer, which can be useful for deployment management teams.

YouTube UploadiOS Video Upload
Direct video upload to YouTube is now built in, thanks to the great code that Orta wrote for the Mapping Mangroves map, but now has offline support so videos can be captured even when the internet is not present, and uploaded later during synchronization.

Watching Videos
Any report videos with YouTube links are now rendered inline, making it easy to watch inside the table or view in full screen mode.

Location Picker
The map for selecting a new location has been improved including ability to searching by street address, find current location as well as double tap to move the map pin.

Open GeoSMSiOS Open GeoSMS
The app now supports Open GeoSMS thanks to help from Slayer and his team. When enabled in the Settings, the app gives the user the option Upload via Ushahidi API or Send via Open GeoSMS. This will be an incredibly important feature when collecting reports when the internet is not available, for example during a disaster situation.

Full Screen Mode
The Settings screen has option to hide the status bar, taking advantage of the full screen height.

Hide Sidebar
When running the app on an iPad, the sidebar can easily be hidden in landscape mode, making full use of the screen width.

Table CellsiOS Table Cells
All the table cells have been revamped, including less text and making better use of icons to identify the types of data. This is important considering the app will translated in a number of different languages.

Favorites
Reports can now be starred when viewing their details, adding a star icon on that report in the list.

Unread Reports
The report list now shows a + icon in top right for new reports, which disappears when that report is viewed.

Download Static Maps
Once again the Settings has the option to download a static map image from Google Maps for every report, making this map tile visible even when the internet is not available.

Icon Badge NumberiOS Icon Badge Number
The app icon now shows the number of unread reports, which can also be turned off in the Settings.

Comments
The new version supports viewing of comments, as well as submitting new comments to reports.

Privacy Policy & Terms of Service
The recent whitelabelled Firsthand app for the Huffington Post required users to agree to their Privacy Policy and Terms of Service. I thought this might be a good option for other whitelabelled apps, so added optional properties to the theme’s info.plist file.

Hide Add Report ButtoniOS Hidden Add Button
The add report button can now be hidden via the theme’s info.plist, which is handy for maps that don’t want users to submit new reports and rather just view existing reports.

Submit Only Mode
The ability to skip the report list and map and only show the submit report form can now be enabled by changing a single property in the theme’s info.plist. This was a feature request from the TELL MAMA team, happy to include it in this new version.

What’s missing?
Although this new release has a lot of new features, it’s also missing a few things. One, Checkins have not been fully implemented and two, stale reports are not being removed. Hopefully both of these issues will be fixed in the next minor release.

Old Version
Just for safe measures, the previous project for Ushahidi iOS 2.X can be found in the Old folder on GitHub.

Translations
Thanks to our incredible community especially Chris Moya, Mercy Deche, Phelipe de Sterlich, Kuo-Yu slayer Chuang, Alexey Poimtsev, Johannes Lindenbaum, Yoshi Suzuki and Delalorm S Semabia for helping translate the new version fully into Akan, Italian, Japanese, Russian, Spanish and Swahili, and partially into German, Chinese (Taiwan) and Catalan. Translations are now on Transifex so it should be easier for others to contribute. If you are a multilingual speaking person, we’d love to have your help!

The new version has been a long time coming, so glad to finally have the code on GitHub and hopefully available soon for download on the App Store. Feedback is always welcome, please report any issues to GitHub or message me on Twitter.

Comments
Cheap Kamagra Online Pharmacy [url=http://cialibuy.com/#]Cialis[/url] Moyens De Durer Plus Longtemps Au Lit Cialis Progesterone 300mg
Cabaser StadyBar [url=https://acialisd.com/#]cialis from india[/url] reenuacuap Real On Line Stendra Quick Shipping Secure poigeLip Cialis effireePiods Sans Ordonnance Amoxicillin Sans Prescrire France
Do your research at Google
[url=http://vsviagrav.com/]viagra[/url]
ivermectin cost - ivermectin 6mg [дё»йЎµ]
Hello. And Bye.
buy ivermectin - ivermectin for humans for sale buy ivermectin 6mg
Hello. And Bye.
Hello. And Bye.
Hello. And Bye.
plavix in mexico - plavix india buy cheap plavix
levlen ed pill cost - over the counter ed pills usa solutions for ed
daily ed pill - new ed drugs duro ed pills
bactrim cream - bactrim prescription can i buy bactrim online
tadalafil india generic - cialis 20mg professional tadalafil online buy
discount brand cialis - superatad cialis 120
duloxetine online - buy duloxetine without prescription generic cymbalta 60 mg
synthroid for sale without prescription - synthroid 50 mcg india synthroid rx cost
amoxicillin - price of amoxicillin 500 mg amoxicillin prices at walmart
generic tadalafil united states https://nextadalafil.com/ tadalis sx tadalis sx
generic tadalafil https://extratadalafill.com/ tadalafil 60 mg for sale tadalafil 40 mg daily
vardenafil professional - brand vardenafil vs generic vardenafil 120 pills
tadalafil 60 mg for sale https://tadalafilgenc.com/ buy tadalafil tadalafil pills 20mg
canadian pharmacy generic vardenafil - vardenafil 20mg tab buy vardenafil online without prescription
tadalafil generic https://pulmoprestadalafil.com/ tadalafil dosage tadalafil pills 20mg
ed drug - canadian pharmacy coupon code buy drugs from canada
40 mg tadalafil https://pulmoprestadalafil.com/ buy tadalafil us buy tadalafil
order cialis 40mg - cialis cheapest price buy cialis usa
tadalafil generic cialis tablets research chemicals tadalafil
viagra capsule - sildenafil online canada viagra sildenafil 100mg
buy vardenafil germany - vardenafil dosage 40 mg vardenafil generic
what is vardenafil used for - low cost generic vardenafil vardenafil generic vs brand name
ivermectin uk coronavirus - ivermectin cream 5% ivermectin brand name
sildenafil india online - viagra 800mg price australia viagra
cost of prescription cialis - generic cialis online prescription cialis in canada online
generic lyrica cost - buy lyrica cheap buy generic lyrica online
azithromycin 500mg dose - z-pak buy zithromax 500mg
prednisolone tablets 25mg australia - prednisolone 5mg usa canadian prednisolone 5mg
ivermectin 0.1 uk - ivermectin 3 mg ivermectin 500mg
female viagra 25 mg - buy viagra online australia paypal viagra online purchase
where can i buy lasix - furosemide 200 mg where can i order doxycycline
dapoxetine side effects - priligy 30mg online cheap generic cialis online canadian pharmacy
male ed pills - ed treatments vitality ed pills
buy modafinil - modafinil reviews modafinil and alcohol
buying accutane online - accutane 60 mg accutane order
antibiotic amoxicillin for sale - amoxil 500 mg kroger amoxicillin price
generic cialis viagra vardenafil online - generic viagra cialis vardenafil cheap generic it vardenafil
tadalafil capsules 21 mg - 25 mg tadalafil tadalafil 20 mg tablet cost
buy ivermectin 3mg - ivermectin 6mg
lyrica south africa - canadian compounding pharmacy online pharmacy canada
amoxicillin without a doctor's prescription - amoxicillin rash buy amoxicilin 500 mg canada
viagra online cheap price - where to buy over the counter ed pills viagra prescription medicine
stromectol canada - ivermectin 3mg tablets stromectol 3 mg price
buy 40 mg prednisone - prednisone pills canadian pharmacy prednisone
provigil for adhd - modafinil adhd modafinil buy
azithromycin 500mg dose - buy azithromycin 100mg online z-pack
the dating list online free [url="http://onlinedatinglook.com/?"]how accurate is carbon dating[/url]
furosemide uk drug - generic furosemide 40 mg buy lasix online
buy clomid 50mg online - clomiphene online buy clomid
genuine viagra uk - generic viagra online pharmacy usa viagra without a prescription
online pharmacy cialis india - cheap cialis 100mg tadalafil 2.5 mg tablet
usa black gay dating sa gay dating sites [url="http://gaychatgay.com?"]good free gay dating sites[/url]
buy ivermectin cream - generic ivermectin ivermectin 9 mg
casino moons online casino - casinoslotgam.com hard rock casino online
best male ed pills - erectile dysfunction pills ed pills cvs
dating for gay and bisexual real gay dating sites free [url="http://gaychatrooms.org?"]gay but hate online dating[/url]
prednisone 60 mg - buying prednixone for animals 200 mg prednisone daily
can you buy viagra in mexico over the counter - can i order viagra viagra in india price
gay dating michigan open gay dating site free [url="http://gaychatgay.com?"]gay tx dating[/url]
does hydroxychloroquine have side effects https://plaquenilx.com/# hydroxicloriquin
tadalafil 20mg canadian - Cialis next day delivery how to get cialis uk
ivermectin pills canada - ivermectin order ivermectin 18mg
free gay dating personals gay speed dating boston [url="http://gaychatgay.com?"]upstate ny gay men dating[/url]
what are ed drugs - best pill for ed ed pills online
canada where to buy neurontin - neurontin 600 mg capsule levothyroxine 112.5
https://buysildenshop.com/ - Viagra
buy viagra europe - viagra mexico cost
https://buytadalafshop.com/ - Cialis
ivermectin 3mg for lice - ivermectin 3mg
prednisone 1 mg tablet - drug order prednisone prednisone tablets 5 mg
gay dating south africa gay canadian dating [url="http://freegaychatnew.com?"]gay dating sites top 10[/url]
buy accutane online - how to get accutane australia accutane 40 mg daily
order amoxil - price of amoxicillin without insurance buy amoxicillina noscript canada
gay sugar daddies dating sites hogwarts a mystery dating gay [url="http://gaychatgay.com?"]san jose gay dating[/url]
cheap paper writing services - best writing service buy essays for college
world of warcraft gay dating sgh id gay dating [url="gaydatinglosangeles.com?"]gay dating site for free[/url]
http://buypropeciaon.com/ - Propecia
buy real sildenafil online with paypal from india - Low cost viagra buy viagra online no rx
cost for generic cialis - Buy cialis without rx cialis 15 mg
order stromectol online - purchase stromectol ivermectin 6 mg tablets
gay dating websites in usa gay men dating trans [url="http://gaydatinglosangeles.com/?"]gay international dating sites[/url]
https://buystromectolon.com/ - Stromectol
prescription medication without a prescription lasix - lasix pill furosemide lasix
gay man dating site over 40 gay dating game show [url="http://gaydatingcanada.com/?"]bravo gay dating show[/url]
Differenza Viagra Cialis Levitra
albuterol sulfate inhaler - ventolin price uk ventolin cost australia
http://buylasixshop.com/ - Lasix
http://buyplaquenilcv.com/ - purchase hydroxychloroquine sulfate
cost of doxycycline in india - 100mg prednisolone buy cheap prednisolone
Viagra Order No Prescription
fda ivermectin - cost of ivermectin 1% cream stromectol cost in usa
cost of stromectol medication - ivermectin cost uk ivermectin 3 mg
buy generic sildenafil - sildenafil 100mg generic name for sildenafil
https://buyzithromaxinf.com/ - Zithromax
buy tadalafil online safely - tadalapills generic tadalafil canada
accutane online for sale - buy cheap accutane can you order accutane online
academic writing online - academic writing support assignment sites
https://buypriligyhop.com/ - where can i buy priligy online safely
stromectol generico - ivermctin stromectol cost in usa
sildenafil online in india - Cialis dosage cialis generic viagra
http://buyneurontine.com/ - gabapentin withdrawal symptoms
vidalista 40mg - cenforce 120 mg fildena 120mg
orlistat medication price - orlistat million xenical 84 capsules
stromectol brand - purchase ivermectin side effects of ivermectin
viagra 25 mg - viagra on line purchase viagra without prescription
cialis for daily use best price - cheapest cialis 20mg offer how to buy cialis in usa
https://prednisonebuyon.com/ - how to take prednisone 10mg for 5 days
yoga for arthritis medical definition of treatment canadian pharmacies canadian pharmacies https://canadianexpresspharm.com/# online drugstore
where to buy prednisone without a prescription - deltasone price in india prednisone 200 mg daily
education websites [url="https://essayghostwriter.com/?"]editing services online[/url]
cialis generic pills - where to buy cialis over the counter cheap tadalafil tablets
ivermectina 6mg - ivermectin new zealand ivermectin us
medical research paper [url="https://essaytag.com/?"]do my homework for me[/url]
ivermectin 400 mg - stromectol for sale stromectol for humans
viagra woman - best generic viagra discount generic viagra online
viagra 4 tablets - sildenafil drug cheap price sildenafil 100 mg
onlinecanadianpharmacy - cialis on line tadalafil 5 mg tablet
where to buy cialis online cheap - okcialpll.com cialis 5 mg daily price
stromectol where to buy - buy stromectol usa where to buy ivermectin pills