Window Support

  • Subscribe to our RSS feed.
  • Twitter
  • StumbleUpon
  • Reddit
  • Facebook
  • Digg

Tuesday, 27 August 2013

My New Microsoft MVP Status, Xamarin and Steve Ballmer

Posted on 04:24 by Unknown

Hello everyone ! long time…

My New MVP Status and  Summary of Journey as a MVP from last 6 years :

Writing after a long time. Yes ! I am no more Silverlight MVP !! I am now Windows Phone MVP rather 2nd Windows Phone MVP in India after my best friend Mayur Tendulkar who won the title recently. I won Microsoft MVP title 6th time in a row.

MVP

As a commitment, I will resume my blogging soon and will post some good stuff on Windows Phone like I use to give my best for Silverlight. You will not believe but the Transition from Silverlight to Windows Phone was not easy and equally “Painful” for me. With the growing popularity of HTML5 (I still call it as Hype), Silverlight lost its momentum. This put me in position to start look for new avenues and I found Windows Phone is one of the close one (XAML + C#). My mind is yet to accept that I love Windows 8 since I have Windows 8 but neither I upgraded to 8.1 nor I am fond of Metro aka Store UI, I am still prefer desktop mode. Not to blame my mind and not to blame Microsoft. It is my region who plays trick with me.Where are those devices in India?? Whatever ! and who cares.. I always worked for Community and I devote my time either here or with my wonderful local .NET User Group (Pune User Group, which is one of the most active and biggest UG in India or rather South Asia)

Xamarin :

While I was on vacation to Goa for South Asia MVP Open Days, I had lot of interaction with Xamarin Tools and enthusiasts in the same community. We exchanged our thoughts and what I found more interesting is that I can use C# to build Android and iOS apps.So it might happen that out of interest you could see me writing about Xamarin and talking about Xamarin using C#. Though I will be learning Xamarin and building expertise around just for my hobby and passion towards mobility, My entire focus will be always and always and always on Windows Phone Platform and it will be always at Top in my Community commitment list. So now its Windows Phone 24x7 on my head !

Steve Ballmer :

I personally feel that Steve Ballmer did a fantastic jobs after Bill Gates. During the Steve Ballmer era both Phone and Windows saw lot of innovation. Being and Becoming Microsoft CEO is not a easy job. I as a Microsoft Technology enthusiast will surely miss him and specially his love towards “Developers Developers Developers” .Since I am just a Senior Software Developer and not even hold 1% of Microsoft Stock on NASDAQ, I am holding myself back from posting my views on this topic and making shit on forums and blogs who are currently running long lasting discussions about Steve Ballmer’s replacement.I tell you, If you love Windows Phone then just post on your  Facebook wall “I Love Windows Phone”. Within a minute people will start shitting on your wall with Android and iPhone comparisons and facts sheets with dumb videos and Urls. Even its your personal view and people in your friend list not even developed “Hello World” on any Windows Phone, Android or iPhone, It became a habit of people to criticize Microsoft. So I tell my mind in such situations..”Either live with it or leave it !”. My friend and fellow Windows Phone MVP written a good post about this shitty habit here :

No Water on Moon?? Blame Microsoft !!

Whatever.. I love Windows Phone and other Microsoft Products irrespective of what people have their opinion for it. I will keep on working as Community Member and keep on contributing on Microsoft Technologies till I don’t step down from my work.

Thanks once again for making visit here and I will make sure you keep visiting here more and more in coming days !

Vikram.

Read More
Posted in | No comments

Sunday, 21 April 2013

Introduction to Speech Capabilities in Windows Phone 8 – Part 3

Posted on 06:47 by Unknown

Today I am going to post last part of this series, Hope Part1 and Part2 went well with you and hope you tried out the Speech Capabilities of Windows Phone 8. We already talked a lot about the different approaches of Text To Speech, In this we will see exactly reverse approach that its Speech To Text. Most of the time it is considered to be vary hard and difficult to implement, But with the given APIs in Windows Phone 8 makes them pretty easy to implement.So Lets see how you can build such app quickly.

Take a new Windows Phone 8 Application Project. Design I will leave that to you, Right now I have put this inside a Pivot item like this :

XAML :

<phone:PivotItem Header="Speech2Text" DoubleTap="LoadSpeechToText">               
</phone:PivotItem>

C# Code :

private async void LoadSpeechToText(object sender, RoutedEventArgs e)
       {
           SpeechRecognizerUI myspeechRecognizer = new SpeechRecognizerUI();
           myspeechRecognizer.Settings.ExampleText = "Ex. Call,Search,Run";
           myspeechRecognizer.Settings.ListenText = "Listening...";
           ….

       }

This will bring up the Popup where you need to suppose to talk or give command, To enable this functionality, you need to add two more lines of code

myspeechRecognizer.Settings.ReadoutEnabled = true;
myspeechRecognizer.Settings.ShowConfirmation = true;

Once you run this you will see our regular Speech Popup like this :

Launching

But just showing this screen is not sufficient, we need to capture the Text and display it to user, So for this we need to add few more lines of code

SpeechRecognitionUIResult Speechresult = await speechRecognizer.RecognizeWithUIAsync();
if (Speechresult.ResultStatus == SpeechRecognitionUIStatus.Succeeded)
{
    MessageBox.Show(Speechresult.RecognitionResult.Text);
}

Now you can see the result on a MessageBox, While doing the test I said “Nokia” and you can see the result on the screen.

Launchingheardsay

And here you can see the Result on MessageBox.  finalNow its your decision where you want this piece of code to be use, There are lot of Business cases where you can use this kind of Speech Recognition. You can use this to launch certain Commands in your application or you can use to record voice as well and convert to text for any purpose.Hope you will find this useful and thus quick end of my Speech Capability series, I have kept it short but in coming days I am going to put detail article on these features by taking a Business Case.Till then Happy Coding, I will soon post a Calendar related article and we will see how we can use that API at our best.

Vikram.

Read More
Posted in | No comments

Tuesday, 2 April 2013

Introduction to Speech Capabilities in Windows Phone 8 – Part 2

Posted on 11:02 by Unknown

Hope you enjoyed my last article on Speech Capability in Windows Phone 8, Today I am posting another part or you can say little extension to what I did in Part 1.

In the first part we saw how we can incorporate the built in Speech Capability with the given set of Speech APIs in Windows Phone 8 SDK and how they have edge over earlier Windows Phone builds like 7 and above.We saw I simple Hello World kind of demo, Today I am going to demonstrate how we can leverage the SSML (Speech Synthesis Markup Language) using Speech APIs in Windows Phone.

What is SSML ? :

As per W3C, SSML can be defined as :

SSML is part of a larger set of markup specifications for voice browsers developed through the open processes of the W3C. It is designed to provide a rich, XML-based markup language for assisting the generation of synthetic speech in Web and other applications.

Possible Scenarios of SSML Implementation : This is very useful in a multilingual app where you need to implement Text to Speech of the content in different languages. Also it provides high level control over the grammer, choice of language, voice of male or female etc. with the help of tags defined in SSML.So let’s see a simple demo of incorporating SSML in Windows Phone 8, Then how you will use that in your app, Its your call !

Namespaces :

using Windows.Phone.Speech.Synthesis;

Design (XAML) :

<phone:PivotItem Header="SSML" DoubleTap="LoadSSML">
                <TextBlock x:Name="TTSSSML" HorizontalAlignment="Left" Height="500" Margin="33,26,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="389"/>
</phone:PivotItem>

C# Code :

private async void LoadSSML(object sender,RoutedEventArgs e)
{ … }

I am using an async method here which have 2 parts, First will just display the Text on the Textblock and second part will actually reading of that SSML markup using Speech Synthesizer, Here is the first part :

//Speech Synthesis Markup Language for Display
          TTSSSML.Text = @"<speak version=""1.0""
           xmlns=""http://www.w3.org/2001/10/synthesis"" xml:lang=""ja-JP"">
           <voice gender=""male"">       
               趣味は日本語を勉強することです
               趣味はいろんな新しい食べ物に挑戦することです
               パソコンいじりが得意なので、何か手伝えることがありましたら声をかけて下さい。               
           </voice>                       
           </speak>";

Here you can see the SSML Markup, I agree, I am not SSML Expert and I have taken this piece of SSML tags by doing some research over internet and I spend little time to convert it to Japanese (I actually can read and write Japanese :) ..its a different story ) instead of keeping it in simple English. In your scenario all you need to do is change the “ja-JP” attribute to your own language like en-US etc and try out with that specific language content.You can also change gender to male or female with <voice gender=”<value>> attribute. All assumption is you have Speech enabled on your phone and also you have marked or enabled Speech in manifest file as I have demonstrated in my first article. Then rest is just routine coding nothing else.Now I am showing part two of this snippet, After looking at it, you will realize that I hardly making any changes here :

//Actual Speech in Japanese Language using SSML
            var ttsJP = new SpeechSynthesizer();
            await ttsJP.SpeakSsmlAsync(@"<speak version=""1.0""
            xmlns=""http://www.w3.org/2001/10/synthesis"" xml:lang=""ja-JP"">
            <voice gender=""male"">       
                趣味は日本語を勉強することです
                趣味はいろんな新しい食べ物に挑戦することです
                パソコンいじりが得意なので、何か手伝えることがありましたら声をかけて下さい。
            </voice>                      
            </speak>");

All set ! Now just press F5 and Enjoy ! here are few screenshots if you are trying to visualize how it will look on device.

In English version of SSML :

SSML

In Japanese version of SSML

JPSSML

That’s all ! Hope you like this part, Till now in both parts we actually saw Text To Speech Capability in a nutshell, In my next article which might be last in the short speech capability series, I am going to talk on Speech To Text. Post these parts, I will move to Maps for a while and then will come back with few more interesting and deep dive articles.Till then..enjoy Windows Phone 8

Vikram.

Read More
Posted in | No comments

Monday, 1 April 2013

Introduction to Speech Capabilities in Windows Phone 8 – Part 1

Posted on 11:54 by Unknown

After a long..I am writing blog, I hope and I wish I will resume blogging like I use to in past. Lots of things happened in past few months. I changed my job,got married and what not ! Well, Life !

Today I am going to share few things about Speech Capabilities in Windows Phone 8, Although I haven’t talked about it in past for Windows Phone 7-7.5 just because there were lots of limitations in this area in terms of APIs and Accuracy as well.With Phone 8 things are totally different. Earlier till 7.5 it was totally dependent on Bing Service which has to be online and network or internet connection was mandatory to have.Now it works offline without having any data/internet connection. Thanks to Microsoft for this improvement. Little Thanks to Microsoft MVPs like me ! (little pat on back)..surprised? Well I was a volunteer and part of a Secret mission, Proud to get associated with it, Although our contribution was small compare to efforts taken by Microsoft Product Group Members but it was got recognized in recent Microsoft TechEd 2013 at Pune, India by Sanket Akerkar,Managing Director, Microsoft India at Microsoft.

SanketAkerkar

Well, Lets come back to main topic, So I am actually planning to write a big article but now plan to break it in few,So today let’s build a Hello World type App to understand TTS (Text To Speech) Capabilities.

Initial Work :

Open a brand new Windows Phone Project from Visual Studio 2012

Open

Choose Windows Phone OS 8.0

OSChoice

Design :

<phone:Pivot Title="Speech Capability">
            <!--Pivot item one-->
            <phone:PivotItem Header="howdy">
                <Button x:Name="TTSHowdy" Content="Hello World !" HorizontalAlignment="Left" Width="456" Height="87" VerticalAlignment="Top" Margin="0,82,0,0" Click="TTSHowdy_Click"/>
            </phone:PivotItem>

</phone:Pivot>

I am actually putting it in a Pivot Navigation as I wish to demonstrate couple of more features of Speech within a single app, In your design you can very well change the layout.

Namespace Required :

using Windows.Phone.Speech.Synthesis;
using Windows.Phone.Speech.Recognition;

C# Code :

private async void TTSHowdy_Click(object sender, RoutedEventArgs e)
        {
            var TTS = new SpeechSynthesizer();
            await TTS.SpeakTextAsync("Welcome to Microsoft TechEd India 2013 in Pune");
        }

So SpeakTextAsync basically an async method which take 2 parameters as Content and Content and ObjectState. So similarly we can pass big string or textblock data to this method so that it will speak the content for you with the default voices installed on your phone.

Here is the output : (On actual device/emulator, you can hear the Sound )

howdy

Now after this Hello World, Lets build another Pivot which will display as well as play all the voices installed on your phone. To showcase this, I am making use of “Long List Selector” on my UI.

Design :

<phone:PivotItem Header="voices" DoubleTap="LoadTTSAllVoices">
               <phone:LongListSelector  x:Name="llstNames" HorizontalAlignment="Left" Width="456" Height="232" VerticalAlignment="Top" Margin="0,3,0,0"/>              
           </phone:PivotItem>

C# Code :

List<string> lstVoices = new List<string>();

private async void LoadTTSAllVoices(object sender, RoutedEventArgs e)
       {           
           //Get all the Voices
           foreach (var voice in InstalledVoices.All)
           {
               lstVoices.Add(voice.DisplayName + ", " + voice.Language + ", " + voice.Gender);
               using (var text2speech = new SpeechSynthesizer())
               {
                   text2speech.SetVoice(voice);
                   await text2speech.SpeakTextAsync("Hello world! I'm " + voice.DisplayName + ".");
               }

               llstNames.ItemsSource = lstVoices.ToList();
           }
       }

Basically, This async methods loops over collection of Voices installed and add each one to the List<T>. So once the voice is picked and set in the SetVoice Method, We can then use the same method SpeakTextAsync which we used above to read the text content.So after reading via each of the voice, We add the voice reader information to a List<T> and bind it further to Long List Selector. So it reads the content and add each voice to the list one after the another.

Here is the Output : (On actual device/emulator, you can hear the Sound )

voices

So that all I want to cover in Part –1, I will post another interesting stuff in upcoming parts, I am actually planning to post 2-3 more.Meanwhile you can try this and check the point to remember or conclusion :

1. Your PC/Laptop Speakers should be on to experience the voices coming out

2. There is no separate SDKs or Tools to be installed, These Speech APIs comes by default with the Phone SDK.

3. You need to Turn On Microphone and Speech Capability option from WMAppManifest.xml like this :

Capabilities 

So that all I want to cover in Part –1 , I am already in progress for Part 2 and expect few more deep dive stuff on Speech Capabilities in coming parts as we progress. Do enjoy and try out the above capabilities and feel free to share your feedbak.

Vikram.

Read More
Posted in | No comments

Sunday, 29 July 2012

MCTS : Microsoft Silverlight 4 Development Exam Guide (70-506) by Packt Publishing

Posted on 11:04 by Unknown

 

Hello, After a long time I got chance to come back here.I will soon resume blogging in month of August. Last 4-5 months were horrible due to workload and some family commitments,but now everything is coming to normal and soon I will start posting some amazing Windows 8 and Windows Phone 8 stuff here.

Today I am talking about a nice handy and in depth Microsoft Certification Exam Guide for Silverlight 4 Development exam written by Johnny Tordgeman for Pack Publishing.

image

Johnny who own expertise on various Web Technologies within Microsoft Platform and who is also a Community Contributor and active Speaker in various events done very amazing write-up in this title.He done a great hard work to give a high quality Exam Guide on Silverlight 4 Development to the Developers,Designers and Others who are doing Certification in Silverlight Track or wish to pursue Silverlight Certification.

This book is a complete Exam Guide in all terms, Great Content with clear Screenshots wherever applicable along with Samples and Questions at the end of each Chapter.These Sample Questions gives Reader a feel of how the actual questions might be in Microsoft Silverlight 4 Exam with “Test your knowledge” section.

image

This book is not only Exam Guide but a complete Book with very unique content that each Silverlight Developer and Designers should have with them today.There are total 8 Chapters in this book which covers all the important aspects of Silverlight 4.

Before this book got published for people, it was also reviewed by my friend and fellow Silverlight MVP Kunal Chowdhury (http://www.kunal-chowdhury.com/) and Evan Hutnick from Telerik.

So if you are planning for this Silverlight 4 Certification or already doing study for this exam or even if you are Silverlight Developer, Then I highly recommend this book and you should get a copy for yourself right today !

http://www.packtpub.com/mcts-microsoft-silverlight-4-development-70-506-certification-guide/book#overview

Wish you all the best for your exam !

Vikram.

Read More
Posted in | No comments

Wednesday, 21 March 2012

The little Story of “I Unlock Joy” event by Microsoft and Pune User Group

Posted on 12:08 by Unknown

 

This post is about recent “I Unlock Joy” event happened in Pune which was conducted by Microsoft and Pune User Group.

Little History :

I remember I got myself a HTC HD7 in early January 2011. I even did a big post here with fire saying “Its White Elephant” in India.When I saw Tweets,Photos and Mails by people in US who showing off their Windows Phones in early days of Windows Phone, Frankly I was very angry thinking why each and every thing comes to India when Entire US and Europe people about to throw that piece of technology and switch to its version next.I even had fight at various level to get a Test Device for me but my all attempts result was “Fail”, so finally I got HD7 for myself from local shop, by the time few of my friends from User Group ordered it via some online site and got their shipment before me.Neither me or my friends who ordered it online even before it was made available in India officially bothered about Money and what will happen to it. That time even Mango build was not available.

I was already going through lot of frustrating moments due to Silverlight and HTML5 issues around year back and thanks to Windows Phone, It pulled me back on track.Me,Mayur and few other folks from Community started talking about this device from last year.Frankly, early response was very low since most of the people was not having device and was not sure about future of Windows Phone since it was not made available in India.

First call on “I Unlock Joy” :

I remember that around October 2011,I was taking snaps of some Star Fishes near Tarkarli Beach in Sindhudurga and all of a sudden I got a call from Aviraj saying “You are in conference with Mayur Mahesh and Dhaval for upcoming Windows Phone event” ..I replied “What??..Microsoft is planning event on Windows Phone??”..Trust me call went for 5 minutes where each one just saying “what”, “when”,”ok lets see”,”keep us posted”.Then nothing happened on this till Mid December.

fishy

Trust me..before this call..no one was sure about this event.Even we were not sure whether we will be able to host such event or not, Even for Microsoft, it was very first such event in India.

The Plan :

Earlier I was not happy with the event plan just because I misunderstood agenda and found it too much professional, I raise this concern to Mahesh (@maheshmitkari),Mayur (@mayur_tendulkar) and Aviraj (@aviraj111)saying “There are people in Pune, who don’t know what is Windows Phone,How it looks like or they have not even saw or touch that device and how they can build apps for that?”, Thanks to Aviraj Mayur and Mahesh who simplified it for me and told me that its from Hello World to Get Certify from Marketplace over span of 4 Full Days.So after that call on next weekend we started talking more about this event.

Wait..but will people come to this event by paying App Hub Fees?? :

Humm..another 1 hour just went on this discussion,Frankly among our Team, only Mayur was aware of AppHub process since he had account and submitted one or two apps in Marketplace.He and Mahesh and Aviraj show confidence then with 50-50 mind I also said to myself..lets do it people will come ! So Aviraj then given inputs on I Unlock Joy and how it works (MS people really work hard for each of their things,that I re-realize again on that day).He also told about Prizes and how overall things should go if we as Pune User Group want to do it with Microsoft.

imgthink

Execution of Plan :

Here comes our UG Manager Mahesh Mitkari, He drafted overall plan including Days of Trainings,Venue etc.Thanks to Microsoft, This time there was no “Mission :Find Venue” for us ! As usual my all time favorite question came for discussion “What about Food??..are we giving and not giving??” ..Suddenly Mahesh replied “Food later ! First think about event”..I said “Rest is Ok,but Food is equally important” ..Mayur said “If possible do it or people have to eat somewhere around the venue” ..Aviraj was on bit silent mode during this discussion since Budget for this was already allocated and now it was our turn to manage all in that amount.Finally with the years of experience Mahesh have in community, He managed the food for us. Since we took it up this event under support of MS, Content and Speaker for event was from Pune User Group. Mayur took the ownership of this speaking engagement and hence that pain part was already taken care. 

HD7s

Then there was lot of confusion about allowing “Individual”,”Students” and “Business” types of AppHub Account holders.But we decided that aim of this event is to “Empower individuals with great skills and great device”, so we decided to cut off Students and Companies and fixed our agenda accordingly.

Since this was very first event so we decided to keep the number of attendees equal with the capacity of hall or even less will do.

Registration Process and getting people to Venue : Mission Impossible

We hosted a lovely Website using ASP.NET MVC + Cloud for this event using shiny logos and stuff.

For first week, there was not a single registration, all we had is test records entered by us for testing of that portal.Week went bad for us.No one turn to site for registration.We were almost feeling dead at that moment since it was January 1st week and we were about to kick off the event from end of January 2012, we paid for venue, book food counters, done all formalities with MS,ok but where are attendees??

WP_000307

Mahesh Me,Mayur and Aviraj come back to our old conclusion “Its paid event so people are not coming ..maybe?” since Pune User Group events are never paid.So how to solve this problem??

Meetings Meetings..Calls Calls .. :

We decided to do quick analysis of this thing and jumped to a conclusion that it was not about spending money but we came to know about following concerns :

  • Its Credit Card thing..is it safe?
  • Will they pull some extra money from Background?
  • Do they will come to know whether I am using illegal software?
  • I will seriously get Windows Phone if I build apps for I Unlock Joy?

Ok ! we got our answers, the very first thing we did is added a big “FAQ” section on our site and made publicity of the same, we captured most common uncommon and unique Questions,As a result, in last week of Registration count went to almost 40+ and we closed registration.We are all set for First ever such event by any User Group in India..Get Set Go !

Four

Overall Event :

Now the next tension on mind was, whether people will adopt the skills and able to build and submit apps or not,else again everything will go waste !

Kudos to Mayur Tendulkar and Amol Vaidya ( and me as a Backup Speaker with full support from MSPs Omkar,Sneha and Apporva) who carried out training successfully.4 Days were full of gyan and not like typical sessions happens around where speaker comes in drag drop things and execute. Some real code and real stuff happened here in Pune.Thanks to AKant (Abhishek Kant who was our Ex-MVP Lead and now Country Manager for Telerik in India) for his valuable time at Keynote session and giving Telerik Controls for free to all attendees there at event.

IMG_0308

Very Special Thanks to Harish Vaidyanathan (@harishv ), Girish Joshi, Aditee Rele (@aditeerele ) and our big brother from Microsoft (@aviraj111), without these people it was impossible to unlock the joy !

What went wrong in this event :

  • Shortage of Power Plugs and less power extensions at Venue on Day1, From Day 2 we fixed that by adding more plugs-extensions
  • Delay in distribution of Pen Drives, instead of day 1 people got that on day 4
  • Connectivity and WiFi was not available due to infra issues
  • 1 Test Device out of 2 was not Mango, we updated that to Mango from Day 2

What people went home with :

  • Some amazing knowledge about Windows Phone Application Development
  • Confidence to build Windows Phone Apps
  • Joy and Fun moment during all 4 Days and great device experience with Test Devices kept for them
  • Some even went away with Nokia Lumia 800

WP_000379

What’s the outcome of all this 4 month story from October 2011 to January 2012 ? :

  • Some 30+ Quality Apps already in Marketplace from this event
  • Around 45+ are due for Certification
  • Around 20+ new apps getting developed from people who already submitted apps
  • Me, Mahesh and Mayur declared officially from Microsoft as “Agents of Joy” and now visible on Microsoft’s I Unlock Joy Portal

http://www.microsoft.com/india/developer/windowsphone/

Click on “Agents of Joy” tile at the bottom !

IUnlockJoy

Final Day :

I Unlock Joy Members snap with Harish Vaidyanathan at Pune

Team

Conclusion :

Its for the “Community” by the “Community” to build more better and better “Community”, so despite of all challenges we faced.The passion of working towards “Community” made all things easy.

There are so many things happen in those 4 months, so its difficult for me to put down all things here,still I tried my best to cover up the entire story.

I am proud that I am associated with such a wonderful community in Pune. Microsoft and Pune User Group Rocks !!

Thanks to all who are directly or indirectly involved in this activity, its difficult to take all names since its very big community effort.so thanks to all !

After this event, Girish Joshi from Microsoft asked Me and Mahesh to give a snap of ours and we given below snap :

Well ! There is again a Big story behind this photo which we took at midnight at Mahesh’s home..that story..well..some other time !

Vikram.

Read More
Posted in | No comments

Thursday, 8 March 2012

Resolving Prohibited Applications 2.7.2 Issue in Windows Phone Application Certification Process

Posted on 10:41 by Unknown

 

If you are building a Windows Phone Application especially which deals with Location based Services or Location related information share,then this blogpost might come to your help.

Recently,I submitted one Windows Phone Application titled as "LocateMe" to Microsoft Windows Phone Marketplace as a normal procedure of Marketplace of Microsoft, After 2-3 Days I got email as follows :

certierr

When I logged into AppHub account, I got one PDF file having detail description of above mail along with complete error details. When I saw that PDF, It was written like :

police1

Since such kind of rejection is very new to me,For day or two I was wondering what to do and resolved so that my application can clear certification.Since comments was clear on the test result like this :

police2

One of my friend Mayur Tendulkar suggested that my application is using Location Service without User Consent or User's permission which indirectly crossing Privacy of the User of that application, In other way its like taking or using User's location without giving him any intimation or notification. This was the issue which my application was doing.

Solution :

I came across this blogpost which exactly states the above problem, Solution suggested there is to create a Custom Page with On/Off Switch which can Enable or Disable Location which will be provided by User of the application.

Somehow I felt it as little extra work in terms of coding and navigation to user.So I given a try to a very simple solution and I am happy that it worked for me and my application came out of this Privacy issue and got certified. I just given a message box like this :

MessageBoxResult result = MessageBox.Show("For Tracking on Map you need to Enable Location,For More Information Read Privacy Statement,Are you sure you want to enable Tracking?", "LocateMe", MessageBoxButton.OKCancel);

                if (result == MessageBoxResult.OK)
                {
                   // Turn On the Location
                }
                else
                {
                    // Turn Off the Location
                }

This saved me from that extra step of navigating to Location Setup Page and Set Reset location and come back to application.This helped me to get consent of user to use Location on his/her device.This allows user to choose to Turn On or Off the location service and does not force the user anyway and does not disclose any location data of user anywhere.

To be on safer side, I added a Privacy Statement Page in Application Bar Menu so that User can know more about in what way and terms the User location which is his/her private data is getting used.This page looks like below :

loc3

What I learn from this problem :

Its not always mandatory to have a separate page just for turning On or Off the location but it can just be done by a message box since its all about giving notification to the user and asking his/her permission to use and or share his/her location in any way.

Since I didn't came across any valid or legal solution for this problem,hence I thought I should share my experience with you all, So in future any of you got into such problem, should not be a big issue for your application during the Certification Process of Microsoft Marketplace.

Although in terms of legal aspect, this is not a valid or legal solution which is full proof,however I will claim this only as "work around" to get ride of Prohibited Applications 2.7.2 Issue in Windows Phone Application Certification.If you want More information about 2.7.2 section,I encourage you to go through following MSDN Documentation available on this subject :

http://msdn.microsoft.com/en-us/library/hh184841%28v=VS.92%29.aspx

With this, I conclude this post, The only intention of this post is to make you aware of this issue and not get lost anywhere like I got in initial go of my application development.This might help you to be extra careful while you are building your app especially location based.So make sure you keep these things in your mind and while building such kinds of apps, think from all aspects and build your own Privacy Statement or Policy according to need of your application.

Well, I recently submitted few apps and in my next post I am talking some interesting things happen last month in my town where me and my User Group friends conducted Windows Phone Training Program, till that time, Just check out my "LocateMe" app and let me know your feedback.Take care and see you soon.

Warning : Above post and solution given came out of my own experience and might not applicable as a general solution to all generic location based applications on Windows Phone Marketplace,Hence use this post as just a guideline and not as a final and/or Legal solution in any way.Only intention of this post is to create awareness about this  Prohibited Applications 2.7.2 Issue in Windows Phone Application Certification Process.

Vikram.

Read More
Posted in | No comments
Older Posts Home
Subscribe to: Comments (Atom)

Popular Posts

  • First Windows Phone 7 update February 2011 - Small update but Big start
    After tons of rumors and set of predictions on Windows Phone 7 all over Internet, Microsoft came up with first Windows Phone 7 minor update ...
  • The little Story of “I Unlock Joy” event by Microsoft and Pune User Group
      This post is about recent “I Unlock Joy” event happened in Pune which was conducted by Microsoft and Pune User Group. Little History : ...
  • Silverlight On Mobile : Windows Phone 7 Splash Screen and Customization
    After talking about 3D capabilities on Windows Phone 7 using Silverlight in last article , Now I am moving ahead with small but equally impo...
  • Silverlight 5 : Platform Invoke (PInvoke) in Silverlight
      Two days back Microsoft announced availability of Silverlight 5 RC,I encourage you to download bits from here , My friend Pete Brown alr...
  • Introduction to Speech Capabilities in Windows Phone 8 – Part 1
    After a long..I am writing blog, I hope and I wish I will resume blogging like I use to in past. Lots of things happened in past few months....
  • MCTS : Microsoft Silverlight 4 Development Exam Guide (70-506) by Packt Publishing
      Hello, After a long time I got chance to come back here.I will soon resume blogging in month of August. Last 4-5 months were horrible due...
  • Introduction to Speech Capabilities in Windows Phone 8 – Part 2
    Hope you enjoyed my last article on Speech Capability in Windows Phone 8, Today I am posting another part or you can say little extension t...
  • Silverlight 3 : Insert & Update Data using WCF Service with DataForm and DataGrid
    In my Lap around Silverlight 3 series, I have written a separate article on DataForm in Silverlight 3, This article is a basic extension to ...
  • Mango : Using DeviceStatus in Windows Phone 7.1
    First of all “Thank You” for your wonderful response and comments on my last article on Silverlight Vs HTML5 ,I hope you like the points I ...
  • Silverlight, HTML5 & Windows 8 : Where we are heading to ?
    This is not the post or yet another post on most happening debate of Silverlight and HTML5, This is just a visit to all of them to realize t...

Blog Archive

  • ▼  2013 (4)
    • ▼  August (1)
      • My New Microsoft MVP Status, Xamarin and Steve Bal...
    • ►  April (3)
  • ►  2012 (4)
    • ►  July (1)
    • ►  March (2)
    • ►  January (1)
  • ►  2011 (24)
    • ►  December (1)
    • ►  September (4)
    • ►  August (2)
    • ►  July (1)
    • ►  June (4)
    • ►  May (3)
    • ►  April (3)
    • ►  March (1)
    • ►  February (4)
    • ►  January (1)
  • ►  2010 (21)
    • ►  December (1)
    • ►  November (2)
    • ►  October (3)
    • ►  September (2)
    • ►  August (4)
    • ►  July (5)
    • ►  May (1)
    • ►  April (1)
    • ►  March (1)
    • ►  January (1)
  • ►  2009 (49)
    • ►  December (1)
    • ►  November (5)
    • ►  October (2)
    • ►  September (1)
    • ►  August (5)
    • ►  July (5)
    • ►  June (1)
    • ►  May (5)
    • ►  April (5)
    • ►  March (9)
    • ►  February (4)
    • ►  January (6)
  • ►  2008 (43)
    • ►  December (3)
    • ►  November (9)
    • ►  October (7)
    • ►  September (4)
    • ►  August (2)
    • ►  July (3)
    • ►  June (4)
    • ►  May (3)
    • ►  March (3)
    • ►  February (5)
Powered by Blogger.

About Me

Unknown
View my complete profile