Build Your Own iPod/Phone/Pad App Using FMtouch
-
Upload
yth -
Category
Health & Medicine
-
view
931 -
download
1
Transcript of Build Your Own iPod/Phone/Pad App Using FMtouch
If interested, please contact:
Eli Rosenberg: [email protected]; 404-783-2552
Patrick Sullivan: [email protected]; 404-210-6039
Both of us are floating around Sex::Tech and would be glad
to speak with you today!
The Emory University Center of AIDS Research is looking for a
tech-savvy individual to develop and maintain technology
solutions that support our health research.
Our solutions are often cross-platform, involving PC, web, and
mobile components.
The successful applicant must have database development
experience (MS SQL Server, Access, FileMaker, etc.) and
excellent programming skills. Specific familiarity with
PHP, VBA, SAS, ColdFusion, and/or online survey and social
media APIs (SurveyGizmo, Facebook, etc) is a plus.
Build Your Own iPod/Phone/Pad
App Using FMtouch
Eli Rosenberg
Department of EpidemiologyEmory University Rollins School of Public [email protected]
Sex::Tech 2011April 1, 2011 - San Francisco, CA
What we’ll discuss today
I. The case for iStuff data collection
II. Introduction to FMTouch
III. How to create an app, by example
IV. Syncing data
V. Advanced features
VI. Help and resources
For this presentation, ‘iStuff’ = iPods/Phones/Pads
Examples of sex-health data apps
Data collection• Field interviews
▫ Staff administered▫ First app developed for our group with this purpose
• Intake at CBO or clinic▫ Staff or client administered▫ Collect info on attendance, risk factors, etc.▫ Jeb Jones from Emory presenting Saturday
• Monitoring of sex behaviors▫ Client administered
Data delivery – won’t be explicitly covered today• Interactively deliver interactive sex
information, messages, interventions, or resources (directory of services)
I. The case for iStuff data collection
• Our group has done mostly data collection, rather than presentation
• MSM Venue Screener
• Assess demographics, behaviors, eligibility for studies
• Get contact information from those who qualify
• Screening for multiple research studies simultaneously
• Engaged 5,000 men in Atlanta over the last 8 months
Examples of sex-health data apps
I. The case for iStuff data collection
MSM Venue Screener
I. The case for iStuff data collection
• Eligibility questions• Decision-making logic
I. The case for iStuff data collection
Advantages of data collection via iStuff
• Paperless• No secondary data entry• Faster interviews• Merge data collection with:
▫ Program flow control (decision making)▫ Other iStuff functionality (GPS, camera, etc.)
• Can share data easily• Get ‘approach’ data• As user-friendly as you want• Security• Large-scale deployment• Looks cool!!
I. The case for iStuff data collection
How do we do this?
1. Design graphical database using FileMaker Pro
6. Data managed in FileMaker or other ODBC source. Can be exported for analysis.
2. Transfer database to FMTouch
3. Program interacts with participants / clients
4. Collect responses (data)
5. Upload data!
II. Introduction to FMTouch
So what is FileMaker?
• Desktop relational database program for Macs/PCs
• Macintosh’s answer to MS Access
• A visual environment for collecting quality data in tables
▫ Use graphical forms (‘layouts’) to collect information using text boxes, check boxes, etc.
▫ Scripts let you control input and program flow
• Easy to use tools for creating tables, layouts, scripts
II. Introduction to FMTouch
And what is ?
• An iStuff app that lets you run FileMaker DBs on your iStuff
• Must make the database on your computer, then transfer to device
• Before Summer 2010, the only serious database solution available for iStuff
• FileMaker released FileMaker Go in July 2010
▫ Much closer to desktop version than FMTouch
▫ But lacking with certain sync features
II. Introduction to FMTouch
What do I need to get started?
• Software▫ FileMaker. Current version is 11. Pro ($200-$300. Free demo.) Pro Advanced ($300-$400). Offers DDR export. I will explain later.
▫ FMTouch app. ($10 from iTunes store)
• Hardware▫ WiFi-capable computer (need not be connected to web!)
▫ iStuff devices du jour ($200 - $800) All iOS 3 and 4 devices supported
• Personnel▫ Some knowledge of database structure and programming (light MS
Access experience)▫ Could be you after today!!▫ Cost = $$?
II. Introduction to FMTouch
Today’s example: Self-administered CBO intake screener
• The ISIS Center. A place for LGBT teens.
• Lately, the center has been extremely popular!
• Would like to give arriving clients an iPod-touch to:▫ Track client information for evaluation (and sponsors) Demographic information Reasons for visit
▫ Collect email addresses for Facebook page sign-up
▫ Discretely screen for important, sensitive behaviors Indicate message for staff if alarming response
III. How to create an app, by example
CBO intake screener – Question flow and variable plan
• Client information▫ Age (pull-down) numeric▫ First name to use at visit text▫ Sexual identity coded as numbers 1 - 6
• Services requested▫ Learn about social activities binary number 1/2 (0/1 problematic in FM)▫ Talk to a counselor binary number 1/2 ▫ HIV/STD testing binary number 1/2 ▫ Other binary number 1/2
• Facebook page sign-up▫ Ask if interested in joining Facebook page binary number 1/2 ▫ If yes, prompt for email address text
• Screen for important behaviors▫ Suicidal ideation binary number 1/2 ▫ If yes, final screen will indicate a code for staff
• Also capture▫ Unique interview #, Date, Device ID#, Staff initials
III. How to create an app, by example
I’m going to cheat now and show you the end product …
III. How to create an app, by example
CBO intake screener – general design consideration
• Screen dimensions
▫ iPod/Phone = 320 px wide x 460 px tall
▫ iPad = 768 x 1004 (portrait)
1024 x 768 (landscape)
• Interface appearance. Flat vs. 3D
• Login page
• One or two questions per screen
III. How to create an app, by example
Development process overview
1. In FileMaker, create: ▫ Tables ▫ Data-entry layouts▫ Scripts page jumping and decision-making
2. Save DB as Database Design Report (DDR)▫ not Deutsche Demokratische Republik▫ XML document that describes database structure
3. Transfer DDR to FMTouch via WiFi
4. Test it all a lot on device! Modify where needed. ▫ Quirky things happen when transfer to iStuff
III. How to create an app, by example
III. How to create an app, by example. Creating tables
• New database!• First task is to create tables to store our data
III. How to create an app, by example. Creating tables
There are two main modes to operate in:
• Browse. For entering and viewing data
• Layout. For designing DB tables and layouts.
III. How to create an app, by example. Creating tables
Let’s set up our main table and variables
III. How to create an app, by example. Creating tables
Create table
Cool trick!‘phone’ in field name = uses iPhone phone pad‘email’ = uses email-style keyboard
By value listRestricted to our custom list of values (1,2)
Auto-enter last visitedRemembers value from previous record. Lets us keep ‘login’ data on each record
Everything is set with ‘options’…
III. How to create an app, by example. Creating tables
Create variables
III. How to create an app, by example. Creating tables
Variable options
III. How to create an app, by example. Creating layouts
Text for display
Drawing shapes
Input fields:Text boxes, check boxes, pull-down menus, etc.
ButtonsOther goodies:Tabs, portals (subforms), web browser, etc.
III. How to create an app, by example. Creating layouts
Rectangle tool
Select one of the 11 layouts in our DB
Text
Input fields (displaying variable names)
Buttons
Inserted graphic (and also converted to button!)
III. How to create an app, by example. Creating layouts
Right-click!
Assigning input boxes to a specific table field…
III. How to create an app, by example. Creating layouts
Input boxes render differently on device
FileMaker FMTouch
III. How to create an app, by example. Creating layouts
Many, but not all commands are
supported
Script run by this button
III. How to create an app, by example. Creating layouts
One script per layout transition or special button
III. How to create an app, by example. Creating scripts
Many, but not all commands are supported
Script run by login page’s ‘New Interview’ button
Very simple script builder!• Uses standard logical syntax• No need to remember statements
Double-click commands to place in right pane, then edit
specific options
‘New interview’ script in detail
First, check that iPod ID and initials are entered. Give
pop-up error messages if not!
If iPod ID and initials are OK:• Go to 1st page of the interview (‘intro text’)• Start a new record• Hide the pesky menu bar in FMTouch (allows full-screen display)
III. How to create an app, by example. Creating scripts
Header info w/ current interview #
Button to evaluate the 2 fields, skip to next page
Jumps back to page 1
Quit button jumps to login page
III. How to create an app, by example. Creating scripts
When push ‘Yes’, run ‘facebook_script’ and send it
the value 2.
Using buttons to send different values to the same script for processing
III. How to create an app, by example. Creating scripts
First line of script receives value from Yes/No buttons and sets the ‘facebook’ field in our table
III. How to create an app, by example. Creating scripts
Set field value
If want to sign up, go to email
collection page
Otherwise, skip to next question
‘Facebook_script’ in detail
III. How to create an app, by example. Creating scripts
Getting your app on your iStuff device: DDRs
1. Save your app as a DDR
• A Database Design Report (DDR) is an XML document that describes the database’s structure
• If you have FileMaker Pro Advanced, create in program. If have just Pro, create at www.fmtouch.com
2. Send the DDR to your iStuff device.
• While FileMaker is running on the PC, we have FMTouch retrieve the DDR file via WiFi.
▫ Requires FMTouch plugin for FileMaker to transfer
III. How to create an app, by example. DDR Process
1. Saving a DDR file in FileMaker Pro Advanced
Open FMTouch
2. Transferring the DDR to iStuff
III. How to create an app, by example. DDR Process
2. Transferring the DDR to iStuff
(Our MSM venue screener is the first displayed)
Click this icon to manage DBs• Add DBs• Change preferences
(3 DBs are loaded on device)
III. How to create an app, by example. DDR Process
2. Transferring the DDR to iStuff
Click to add a new DB
III. How to create an app, by example. DDR Process
2 ways to connect via WiFi:
1. Manually via IP
2. Automatic detection using Mac’s Bonjour service. This requires:
• A simple wireless network.
• A great deal of luck
2. Transferring the DDR to iStuff
III. How to create an app, by example. DDR Process
2. Transferring the DDR to iStuff
1. Make sure FileMaker is open.
2. Enter your computer’s IP address (easy to find out).
3. Your computer will prompt for which file to upload.
4. Select the file to begin transfer!
III. How to create an app, by example. DDR Process
Once DDR uploaded, can adjust DB settings
III. How to create an app, by example. DDR Process
DB settings page
Lock the DB in a particular orientation
Lock the DB with a password and encrypt (128
or 256 bit).
III. How to create an app, by example. DDR Process
Syncing data to the central DB1 2 3 4 5
Easy!
1. Open your central DB in FileMaker
2. Via FMTouch, each iStuff sends its data via WiFi to the central DB
3. Clear devices of data after sync.
IV. Syncing data
2. Sending records to central FileMaker DB
For our needs, we onlysend records
But there may be situations where you want to carry around your entire DB
contents on your iStuff app!
IV. Syncing data
3. Clear devices of data after sync.
IV. Syncing data
Syncing IDs across multiple devices
A. FileMaker reorients all auto-numbers to continue where DB left off.▫ Ex: if last record in DB is ID #1500, the first iStuff to sync
will start at 1501.
1 2 3 4 5
• Each cleared device starts counting auto-numbers (record IDs) at 1.
Q. Will there be conflicts when we sync all devices?
IV. Syncing data
Where’s my data?
• FileMaker has a built-in tabular display, but it can annoying to use!
IV. Syncing data
Where’s my data?
Other ideas:
• Excel, CSV exports
• Store data table in other
system and connect via ODBC. • Allows for easy sharing of your data. Not just stored in one
FileMaker file!
• FileMaker serves as ‘front-end’ and data actually stored in:
• Access
• MS SQL Server
• Excel
What we do • Your web server
• SAS
• Anything!!
IV. Syncing data
Advanced features
• FileMaker Server = sync from anywhere via Web
• Fancy data collection, using iStuff hardware▫ Photo capture – diagnostic aid?▫ Barcode scanning – laboratory uses?▫ GPS - geolocation apps?▫ Voice capture – notes, interviews, etc…
• Email sending from apps and email exports
• Web browser integration
• App compiling service – FMTouch Enterprise▫ Create your own deliverable app, available on iTunes store▫ User doesn’t need FMTouch▫ Might be very helpful for intervention/message/data delivery
V. Advanced features
HELP!! Resources on www.fmtouch.com
• Wiki▫ One-stop shop for design guidelines, which FileMaker
features are currently supported, and set up or syncing help.http://reference.fmwebschool.com/FMTouch_Reference
• Helpful PDFs▫ User’s guide. Wiki is more updated.
http://www.fmtouch.com/FMTUG10_24.pdf
▫ Style guide. For matching iStuff look.http://www.fmpug.com/members_download.php?filename=FMTouchStyleGuide_v2.zip&free=true
• User forum
• FREE support request system
• How-to videos
VI. HELP!
Thanks for coming!
This work was supported by:
• NIH/NIMH: 1R01MH085600
• NIH/NICHD: 1R01HD067111
• The Emory Center for AIDS Research: P30 AI050409
If interested, please contact:
Eli Rosenberg: [email protected]; 404-783-2552
Patrick Sullivan: [email protected]; 404-210-6039
Both of us are floating around Sex::Tech and would be glad
to speak with you today!
The Emory University Center of AIDS Research is looking for a
tech-savvy individual to develop and maintain technology
solutions that support our health research.
Our solutions are often cross-platform, involving PC, web, and
mobile components.
The successful applicant must have database development
experience (MS SQL Server, Access, FileMaker, etc.) and
excellent programming skills. Specific familiarity with
PHP, VBA, SAS, ColdFusion, and/or online survey and social
media APIs (SurveyGizmo, Facebook, etc) is a plus.