The document discusses beta testing an iOS app. It covers setting up testers with Ad Hoc provisioning profiles, building an Ad Hoc release in Xcode, and distributing the release via email or the Hockey app. Testers need their device's UDID added to the developer portal and provisioning profile. The Hockey app allows installing betas directly on devices and checking for updates. Communicating with testers for bug reports and feedback is also important.
2. What We’ll Cover
• End User Setup
• Provisioning Portal
• Building an Ad-Hoc release
• Distributing your release
• Email - the hard way
• Web Share (Hockey) - the “easy” way
• Notes About Testers
3. End User Setup
• Need Unique Device IDentifier (UDID)
• Get from iTunes
• Free App: Ad Hoc Helper - Easy Way
• Need Ad Hoc Provisioning Profile
4. UDID - iTunes
• Connect device to computer and launch
iTunes
• Click on Serial Number in Info Screen
• Edit->Copy
31. Create Build Package
• Drag downloaded Ad Hoc provisioning profile into
Xcode
• Open project in Xcode
• Project->Edit Project Settings
• Configurations Tab
• Duplicate Release Configuration
• Name “Release AdHoc”
• Go to “Build” tab
• Set Code Signing Identity to AdHoc Prov Profile
41. Sharing Your App
• End user needs two files:
• App itself (usually in .app, .ipa, or .zip
format)
• Ad Hoc Mobile Provisioning Profile that
you signed the app with
(.mobileprovision)
42. Sharing Your App -
Email
• Steps:
• Select version you want in Archived
Applications
• Click Share...
• Select AdHoc Distribution Identity
• Warning: File size limited to 10MB by most
email providers.
48. Hockey
• Install beta apps directly to device via
mobile Safari
• Based on work by Jeffrey Sambells
• Consists of server and [optional] client
framework
• https://github.com/TheRealKerni/Hockey
49. Hockey - cont’d
• Server Framework
• Requires PHP5 server
• No database required
• Handles multiple apps per server
• Client Framework
• Optional
• Checks for update at launch
50. Hockey - Client
• Copy libraries to your project
• Create pre-processor macro:
CONFIGURATION_$(CONFIGURATION)
51. Hockey - Client Code
• Create conditional statements in code to
keep Hockey client out of App Store builds:
• .h:
#if !defined (CONFIGURATION_Release)
#import "BWHockeyController.h"
#endif
• .M:
#if !defined (CONFIGURATION_Release)
[[BWHockeyController sharedHockeyController] setBetaURL:@"http://beta.shawnsbits.com/
index.php"];
#endif
52. Hockey - Server
• Copy public folder to web server in public
folder
• Copy includes folder to web server in
NON-PUBLIC folder (such as parent
directory)
• Adjust path to includes folder in config.php
53. Hockey - Create
Package
1. Build and Archive
2. Share->Distribute for Enterprise...
1. URL: __URL__
2. Title: AppName
3. Save As: (NO SPACES IN FILENAME!)
55. Hockey - Create
Package
1. Create new folder in public web folder
with app ID: i.e.
com.shawnsbits.DoodleDogFight
2. Upload .ipa & .plist to this new folder
3. Upload .mobileprovision file to new folder
4. Upload .png (114x114) - optional
5. Upload release notes (notes.html)
62. Where to find testers
• Friends and Family
• Pros: Easy to find
• Cons: Hard to get honest feedback
• Other Developers
• Pros: Good feedback on technical/design issues
• Cons: Busy with their own dev, may not see the game as your end
user will see it
• Target forums and websites that would include your target
demographic
• Pros: Most beneficial feedback
• Cons: Hard to get feedback
63. Communicating With
Testers
Need to Handle:
• Bug submissions
• General feedback
• Playability, usefulness, audio, interface
design, fun factor
65. iBetaTest.com
• Pros:
• Easily find people willing to test
• Collect bug reports and general
feedback
• Make announcements to users via
Email
• Cons:
• low response rate, even lower for
betas w/out tester compensation
• Site is in Beta with not much
progress
• Waste Ad-Hoc provisions on people
who may never provide feedback
66. iBetaTest.com
• Recommendations:
• Betas of 10-15 users, try to reuse and rate
good testers
• $10 iTunes gift card is good compensation,
stated that only in exchange for feedback
• Results:
• 4 good testers with good feedback.
68. Final Notes
• The technical side is the easy part,
predictable, reliable, “documented”
• The people side is more dynamic and
variable
• With such small testing capabilities (100
users max/year), your results will vary
depending on how well those people
represent your end user. Choose wisely.
Notas do Editor
\n
\n
Apps in the app store have been approved by Apple for general distribution. Apple limits the distribution of non-approved or pre-approved apps by only allowing you to distribute to 100 unique devices. The UDID is a unique to every device and never changes. This is NOT the serial number.\n
\n
\n
\n
\n
\n
\n
You can only register 100 devices in a given year. Even if you delete devices, they still count against your 100.\n
\n
\n
\n
\n
\n
\n
\n
Click Ad Hoc\nEnter a name, usually [App Name - Ad Hoc]\nSelect App ID\nSelect Devices\nSave\n
Click Ad Hoc\nEnter a name, usually [App Name - Ad Hoc]\nSelect App ID\nSelect Devices\nSave\n
Click Ad Hoc\nEnter a name, usually [App Name - Ad Hoc]\nSelect App ID\nSelect Devices\nSave\n
Click Ad Hoc\nEnter a name, usually [App Name - Ad Hoc]\nSelect App ID\nSelect Devices\nSave\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
-Friends and Family are the easiest to target and install the app on.\n-Developers are often busy with their own dev and can only give quick feedback on design and technical issues, they may not see it as your audience will se it so it’s tough to get feedback on “fun” factor or usefulness.\n-Forums and websites are a good resource for end user feedback. Start visiting these sites when you first get your idea (should be part of your market research anyway). Comment on other posts, start building a report before you pitch your idea. These are also the hardest users to get feedback from without coming off as pushy or spammy.\n\n
\n
\n
-Response rates from testers is about 25% on paid testing, much less for non-paid testing\n-Make announcements to users via the email form on their site, do not post messages because end users are not notified there is a new message pending. I’ll show an example soon.\n\n