Presentation is loading. Please wait.

Presentation is loading. Please wait.

Pocket Brewer On hand tools for the average homebrewer.

Similar presentations


Presentation on theme: "Pocket Brewer On hand tools for the average homebrewer."— Presentation transcript:

1 Pocket Brewer On hand tools for the average homebrewer.

2 What’s This Presentation Wayne Odom – I program. Show and Tell – Code & things that I think are helpful – Marketplace & Submission Issues – Promotional & Advertising – Website Integration – Competition Issues – Probably 50% Correct at Best

3 What’s the app do? Beer brewing assistant. Does not teach you how to brew beer. Conversions and Calculations. Build Recipes using common database. Import/Export/Share Nothing Innovative. All done before.

4 How Project Went Started Got bored one Friday in December. Purchased Phone Create.msdn.com – Install SDK http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=27570 – Silverlight toolkit for wrap panel, Combo box silverlight.codeplex.com – Windows Phone Developer Tools http://www.microsoft.com/download/en/details.aspx?id=13890 – File->New Project -> Pivot Application Easy Enough So Kept Going (Unlike Droid)

5 Navigation NavigationService object Added NavPage to ItemViewModel Embrace NavigationService.Back() Icons (as content) – C:\Program Files (x86)\Microsoft SDKs\Windows Phone\v7.1 Override OnNavigatedTo and OnNavigatedFrom Query Strings

6 Query String Code if (NavigationContext.QueryString.ContainsKey("Source")) { string source = NavigationContext.QueryString["Source"].ToString(); NavigationService.Navigate(new Uri("/Page.xaml?Source=" + source, UriKind.Relative)); }

7 View Models & Item Templates Google Windows Phone 7 MVVM Started Writing View Models For Everything. Tedious Tombstoning– Easier to store objects than text box values.

8 Data Storage Pocket Brewer Data = collection of the most common ingredients in text files. Storage is isolated storage Serialization/Deserialization of Objects as XML Tombstoning

9 Isolated Storage & Serialization Code using (var store = IsolatedStorageFile.GetUserStoreForApplication()) { if (store.DirectoryExists(“dir/r")) { using (var stream = new IsolatedStorageFileStream(" dir/r /tombstonerecipeclass.txt", FileMode.OpenOrCreate, FileAccess.Read, store)) { using (var reader = new StreamReader(stream)) { var serializer = new XmlSerializer(typeof(RecipeClass)); return reader.EndOfStream ? new RecipeClass() : (RecipeClass)serializer.Deserialize(reader); } //end using } //end if } //end using

10 More Better SQL Available September 23, 2011 – http://msdn.microsoft.com/en-us/library/hh202872(v=VS.92).aspx http://msdn.microsoft.com/en-us/library/hh202872(v=VS.92).aspx – http://msdn.microsoft.com/en-us/library/hh202860(v=VS.92).aspx http://msdn.microsoft.com/en-us/library/hh202860(v=VS.92).aspx Local Database in Isolated Storage Now Available. $#!#

11 Supporting Website Wordpress.org = Free Software – Wordpress.com = Sort of free but not really. Beer Recipes Functionality – Feeds Recipe Import – Search Engine Traffic = Later Opportunities in Ad Sales (Adsense) Google Analytics = Free – http://www.google.com/analytics/ http://www.google.com/analytics/ User Interaction – BeerXML, Timers Godaddy < $5 Hosting/Month Hosting. $12 Domain. cpwebhosting.com ($1.50 month)

12 BeerXML & Shared Recipes Not a service. Imports From The Web Browser Control Shared via email, website, other websites. – http://Pocketbrewer.com/recipes/ http://Pocketbrewer.com/recipes/ – http://www.brew-monkey.com/recipes/recipes.php http://www.brew-monkey.com/recipes/recipes.php – http://www.homebrewtalk.com/f62/black-widow-kolsch-224791/ http://www.homebrewtalk.com/f62/black-widow-kolsch-224791/ http://www.beerxml.com/

13 Using Web Browser private void WebsiteSelect_SelectionChanged(object sender, SelectionChangedEventArgs e) { UriDisplayClass target = WebsiteSelect.SelectedItem as UriDisplayClass; webBrowserImport.Source = target.UriTarget; } private string _webBrowserContent; private void webBrowserImport_LoadCompleted(object sender, NavigationEventArgs e) { PageTitle.Text = "Recipe Import"; _webBrowserContent = webBrowserImport.SaveToString(); }

14 Marketplace Submission Denied due to Navigation Denied due to forgetting About Page Final Publish to Marketplace Delay. Support for help after two weeks.

15 Free Competition vs Paid App First to market = 30 downloads/monthly First Free App = 15 downloads/monthly Second Free App = < 10 downloads/monthly Going Trial? Limit import/export to 1. Silver Line: Sales better since Mango.

16 Thanks! http://www.wayneodom.com/ http://www.pocketbrewer.com/ wayne@wayneodom.com


Download ppt "Pocket Brewer On hand tools for the average homebrewer."

Similar presentations


Ads by Google