Coder Social home page Coder Social logo

ushahidi / ushahidi_iphone Goto Github PK

View Code? Open in Web Editor NEW
125.0 18.0 58.0 139.82 MB

Home Page: http://www.ushahidi.com and https://wiki.ushahidi.com/display/forums/Ushahidi+Forums

License: GNU Lesser General Public License v3.0

Objective-C 92.19% C++ 0.45% AppleScript 7.31% C 0.05%

ushahidi_iphone's Introduction

Ushahidi iOS

Ushahidi is an open source platform for democratizing information, increasing transparency and lowering the barriers for individuals to share their stories.

The iPhone and iPad app synchronizes with any Ushahidi deployment allowing viewing and creation of incident reports on the go.

The app supports loading of multiple deployments at one time, quick filtering through incident reports, exploring incident locations on the map, viewing incident photos, videos, news article, media as well as sharing incident reports via email, SMS, Twitter, Facebook or QRCode.

Once the data has been downloaded, the app can function without an internet connection, allowing accurate collection of data utilizing the device's camera and GPS capabilities.

Old Repository

The old Ushahidi iOS 2.X code repository can be found at Ushahidi iOS 2.X

Using The SDK

Including the Ushahidi SDK in your own project allows you to create your own custom app that synchronizes with an Ushahidi deployment.

  • Add Ushahidi.framework into your project
  • Add Ushahidi.bundle into your project
  • Add libraries marked as Required: Foundation.framework, UIKit.framework, CoreFoundation.framework, CoreGraphics.framework, CoreData.framework, CoreLocation.framework, MobileCoreServices.framework, MapKit.framework, MessageUI.framework, QuartzCore.framework, Security.framework, SystemConfiguration.framework
  • Add libraries marked as Optional: FacebookSDK.framework, Twitter.framework, Accounts.framework, Social.framework, AdSupport.framework
  • Add linked library marked as Optional: libsqlite3.0.dylib

How To White-Label

Whitelabeling the app allows you to quickly and easily create your own branded version of the app, with your own colors, graphics and pointing to your own map deployment.

  • Duplicate the Ushahidi target with the name of your map (ex MapATL)
  • Right-click on your new target (ex MapATL) select Get Info > Build tab > rename Product Name to name of map without spaces (ex MapATL)
  • Duplicate the /Themes/Ushahidi folder with the name of your map as folder name (ex /Themes/MapATL)
  • In XCode, on your new theme folder (ex /Themes/MapATL) Right-Click > Get Info > Targets tab, uncheck Ushahidi and check your new target (ex MapATL)
  • You can now customize your app by editing the following properties in Info.plist in your new Themes folder
Name and Identifier
  • CFBundleIdentifier: unique identifier of your app (ex com.ushahidi.ios.mapatl)
  • CFBundleName: title of your application (ex MapATL)
  • CFBundleDisplayName: name of your application (ex MapATL)
Custom Map URL
  • USHMapURL: URL for your map (ex http://crime.mapatl.com)
  • USHMapURLS: leaving the USHMapURL blank, you can optionally define multiple maps in the USHMapURLS dictionary
Support Email and URL
Color Codes
  • USHNavBarColor: color for navigation bar
  • USHTabBarColor: color for tab bar
  • USHToolBarColor: color for tool bar
  • USHSearchBarColor: color for search bar
  • USHButtonDoneColor: color for done bar
  • USHRefreshControlColor: color for refresh control
  • USHTableBackColor: background color for tables
  • USHTableRowColor: text color for header
  • USHTableHeaderColor: text color for header
  • USHTableSelectColor: background color of selected rows
Report Settings
  • USHShowReportList: boolean flag whether to show the list/map of reports (disabling will prevent the downloading of reports)
  • USHShowReportButton: boolean flag whether to show the new report button (disabling will prevent submitting new reports)
  • USHSortReportsByDate: sort the report list by the report date
Optional URLs

Optionally you can define Privacy Policy and/or Terms Of Service URLs which require the user to visit before proceeding with the application.

  • USHPrivacyPolicyURL: optional URL for privacy policy
  • USHTermsOfServiceURL: optional URL for terms of service
Facebook App ID

Facebook will require you to register a new app at Facebook Developers

  • FacebookAppID: identifier for your Facebook app
  • CFBundleURLTypes: callback URL, update the CFBundleURLName value to fbXXXXXXXXXXXXXXX with your Facebook app id
YouTube Credentials

If you would like to publish videos under your own YouTube channel, you'll need to sign up for a YouTube Developer Account.

  • USHYouTubeUsername: Youtube login
  • USHYouTubePassword: Youtube password
  • USHYouTubeDeveloperKey: Youtube Developer Key
Custom Images

Replace each image in your theme folder with your own custom graphic, maintaining the image dimensions and filenames.

  • Default.png: launch screen for iPhone
  • [email protected]: launch screen for iPhone with retina display
  • Default-Portrait.png: launch screen for iPad
  • [email protected]: launch screen for iPad with retina display
  • [email protected]: launch screen for iPad 5
  • Icon-iPhone.png: app icon for iPhone
  • [email protected]: app icon for iPhone with retina display
  • Icon-iPad.png: app icon for iPad
  • [email protected]: app icon for iPad with retina display
  • Logo-iPhone.png: image in settings screen which links to USHSupportURL
  • [email protected]: image in settings screen which links to USHSupportURL
  • Logo-iPad.png: image on iPad in settings screen which links to USHSupportURL
  • [email protected]: image on iPad in settings screen which links to USHSupportURL
  • Logo-Title.png: optional logo image in Nav Bar
  • [email protected]: optional logo image in Nav Bar for retina display
  • iTunesArtwork.png: artwork for the iTunes App Store

You should now be able to deploy your white-labelled version of the app to the Simulator for testing, enjoy!!

ushahidi_iphone's People

Contributors

dalezak avatar goodwithgit avatar isaaclimdc avatar joelchoo avatar orta avatar slinkp avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ushahidi_iphone's Issues

Disabling Photo Resize Option does not work

Even after disabling the photo re-size option in the iOS app settings the images are still 332*248. Thats very small.. And turning the option on/off or even after fixing the resized image size as 1024 pixels has no effect.

Feature to login through android app?

Is there a reason why it’s only possible to add reports anonymously through the iPhone app? Am I missing something ? Seems app doesn’t ask for usename/pass and there's no way to register new users.

Is such a feature planned for anytime in the future?

Allow reports with no category

(feature request) As per issue #38 Invalid Server Response loading categories, I have discovered that it is impossible to submit a report unless a category is assigned. I would like to suggest that is it more important that reports with no categories are received, than no reports at all because it is not possible to assign a category. Categories can always be assigned by the back-end personal managing the deployment.

Use iOS Share approach

It would be good to see the means of 'sharing' a report updated to use a more common approach on the iOS platform. A single share icon (the rectangle with arrow) could be used to share a report using Facebook, Twitter, email etc rather than the existing bubble, bird and email. Naturally, the Twitter support could be upgraded to utilise the iOS Twitter support so it isn't necessary to configure Twitter in the Ushahidi iPhone client if the user has opted to use Twitter device-wide.

Persistent error massage of too short text ("high priority bug"!)

The problem: after making the error of entering too short a massage - the app keeps throwing error massages, even when submitting proper reports.

Steps to reproduce the bug:

  1. Use the iphone app to report a bug to an ushahidi 2.4 instance. Make sure the title or subject are too short (less than 3 characters) and submit the report.
  2. An error massage will pop up "the report title field must be at least 2 and...." - click ok (it will repeat the error 3 times, at least it did for me)
  3. Now submit a valid report (with a long enough title) - the error massage will keep poping up (although the report itself will actually be sent)

Moving to another map and back doesn't resolve this.
Restarting the app doesn't resolve this.
Uninistalling and re installing the app does resolve this.

Ushahidi 3.1 - my map is not found

NOTE: this issue has also been posted under General Questions at: http://help.ushahidi.com/discussions/questions/7090-ushahidi-31-my-map-is-not-found?anon_token=f63ccee3391dbf271bdd8b7450f461956dc4e82b

My website is: winnipegmuralsnews.crowdmap.com

My Ushahidi iPhone client is not finding this site when I do a geographical search from my location here in Winnipeg, Manitoba.

I have set up the map and see the correct latitude and longitude listed on the map page, however this isn't displayed on the public listing page. Is this why my iPhone client isn't finding the website? How would I get crowdmap to use the position that I have set on my website's map as the map center on my public listing?

Thanks,
Bob Bruce

Version: Ushahidi 3.1
Model: iPhone 6.1

Date Slider for Map

Add a date slider for Map allowing user to view reports for a specific date range.

Feature Request: Support upload to Youtube/Vimeo and include in reports

Use Case:

  1. Open Ushahidi App - enter your deployment URL and when all set.
  2. Click to Report
  3. Include a Video
  • Existing Video
  • New Recording
    4) In either case - upload the video to Youtube or Vimeo - we let the user allow connecting to this service using their Youtube/Gmail/Vimeo credentials.
    5) When the video is uploaded - include the URL to the report and publish.

Problem Posting Report

I have a problem with Iphone apps for my project: https://genovamappe.crowdmap.com/

With androind apps is ok, but iphone apps is not run

The problem is that with the iphone apps the report is sent without errorri , but does not arrive in REPORTS NOT APPROVED on the web site.

The Android apps work well, the iPhone apps is unusable. Could you help me?

White Label with multiple maps

It would be nice to white label with multiple map urls and possibly define the map labels/titles as well. To give you a better idea of what I'm trying to do... For MapATL.com, I'm in the process of creating other Atlanta maps and I'm trying to avoid having to create separate apps for each map.

Migrate Archiving Objects To Core Data

Ushahidi iOS was originally developed before Core Data was supported.

So the current data model uses archiving of objects to save and load.

Ideally we should leverage Core Data to provide fast loading of information.

adding calendar option in map view

please consider adding a calendar retrieval option for viewing while in map mode. it would be incredibly meaningful to be able to space through posts over time, both in terms of their movement, & in terms of reviewing the posts spatially on a day/ week/ month/ etc basis. about to use ushahidi for a public science experiment/ exploration.
thanks!
j

Add Picture Capture Feature

Added by Patrick: allowing someone to take picture with iphone camera and send it to Ushahidi with gps coordinates.

Improve Photo Resizing

The current photo resizing process generates a fairly pixelized image, and also can invoke a memory warning.

Improved Map Pins

Replace the standard map pins with colors which represent the various category or checkin users.

iOS 4.3 Compability

The app currently is setting tintColor on buttons, which is only supported in 5.0+.

Invalid Server Response loading categories

I've created theconcert.crowdmap.com, deleted the default Categories 1-3, and created a test category. When accessing the site from the iPhone application, when I select the site, I am presented with a Server Error - Invalid Server Response. This is replicated if I hit the refresh button. This also appears to deny submitting any reports, as it is not possible to 'Select category' under 'Add report' as the Categories list is blank.

Improve iPad Split View

The iPad version should support the larger screen real estate.

Ideally, it would use a UISplitView with the reports table on the left, and details on the right.

Iphone test

when trying to add a mobile report, I cannot change the location in the dropdown. New Location "Current location" will not deselect.

Should be able to add reports from remote sites without using the phone's location feature.

Which I click the map to add a location, it won't let me drop a pin on Gowanus Canal (for the gowanuscanal.crowdmap.com)

automatic app shut down on latest iOS version

Whenever I try to access a deployment I have added to the app, the app currently shuts off when trying to access a particular deployment. tried this from 2 different iPhones, both running on iOS version from App Store with latest updates.

Develop Ushahidi iOS SDK

Currently the data model and synchronization code is coupled with the views and controllers.

To allow others to easily build custom iOS apps, the data and synchronize logic should be pulled into separate SDK.

Nearby Report Notification

A popup notification when a user approaches the location a report was submitted would be very useful.

Option to Post Checkin to Twitter

Currently you can share existing Reports and Checkins via SMS, Twitter and Email.

But it would also be nice to post directly to Twitter upon submitting a report or checkin.

Implement Admin API

Once the Admin API has been implemented, incorporate the functionality into the iOS app.

Loading issues

No description was given by the guy who sent in the bug report, but he sent in an image:-

screenshot

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.