Bootcamp Tasks - SEAS

secrettownpanamanianMobile - Wireless

Dec 10, 2013 (4 years and 6 months ago)


Bootcamp Tasks

1. Create “logical” site map of UI pages
2. Create each UI view
3. Write validation rules for each UI widget with alerts
4. Create transition from view to view

Push Notifications (Having the App Request Access for Push Notifications)
1. http://docs.go-


3. Server side library

Persisted Settings
1. Have default settings
2. Save a Boolean, string, int and datetime value in UI views
3. Close the app, load the app, pull this information again

Save Image from Camera
1. Implement image selector / camera pop up per video

Connect to SSL Web Service
1. Create simple ASMX web service in .NET DisplayHelloWorld()
2. Upload to SSL server
3. Connect to web service via iPhone
4. Display message
5. Try again, now asynchronous

Display Now Waiting Bar
1. Call asynchronous task
2. Display progress bar with cancel button
3. Handle cancel and task complete events

Contact List
1. Display current contact list
2. On select, echo phone number(s), email(s), name from contact

Upload directly to Amazon S3
1. Use this code:

a. First try just posting a file via the HTML form that is an image file
b. Next, set the policy to private
c. Upload file
d. Generate Temporary link to newly uploaded file

e. See if link works
2. Now: With the first javascript code, write logic
string GeneratePolicyString(string fileName)
//should be a basic find/replace

string GenerateSignature(string amazonSecret, stringPolicyString)
//should base64 encode the policy string
//should run hmac sha 256 on encoded string
//return result

a. Using the generated signature, create your own HTML form to test and
see if it all works
b. Now feed that signature into this code and programmatically upload a file:

3. Finally, use the code in 2b on MonoTouch, use a signature that has a 3 year
expiration date
a. Take a picture with a camera
b. Upload it to Amazon S3
c. Generate a private URL using 1d
d. Load that Private URL in a web browser on the PC
e. Load that private URL in a UI Image View (hard coded, does not need
automation at this stage)

Checklist Items
1. Now Loading Screen
a. Identify sizes
2. Icons
a. Identify Sizes for home screen types
b. For various tool icons
c. Now Loading for small image thumb / large image thumb
3. Sign up for hosting (or opt to use us)
4. Sign up for Apple Developer account
Core Functions
bool isInternetAvailable()
//returns if internet is available. Should be called before any internet ready




On Load

If !ActivatedWithEmail
Display How It Works Screen

If !AskedNotificationPreference

(Device token -> Yes)

On Next, call web service

If Email Address is not registered

Request sign up

On Submit, call

if validation passess

CreateAccount(string deviceToken,
string username, string email,
string phoneNumber, string

Else…we need to associate device

On Validation Successful



Display not loaded icon for images
that fail to download

Camera Workflow as per bootcamp

Continue taking data, do not send
server request yet

On Send

--- Do All Validation
--- Async call to StartVoteRequest
--- Upload image to S3
--- Display progress indicator
--- On Complete, async call to
--- Return to dashboard

We should have all data available
from the dashboard screen to load
this page

Thus no round/trip needed

Call SendVote(string username,
string passhash, int requestID,
string comment, string voteVal)

(Async call)

Return to dashboard, remove item
from pending requests without
doing a round/trip call to refresh

We should call GetContacts
on the app load and cache it
for the remainder

Call searchForcontact()


//most info is cached from

//use google api as URL
string to display pi chart

//use hard coded logic to
display data

We should have most of this
from getsettings

I guess we should have an
updateSettings method too

And updatePassword