none
WP7: User’s account’s data and phone number (C#). Данные учетных записей пользователя и номер телефона.

    Question

  • Hello, and sorry for my English :)

    For registration user I need some information about him. Email, phone’s number. I can just ask user about it. But it’s maybe uncomfortable for him. I want to create button, something like “Get from my phone”. And take all informationfrom user’s phone. As I said: email and phone number.

    So, how I can get information about phone number and registered (on phone) email’s accounts? Is it possible?

    Thanks for your answers.


    Добрый день,

    Хочу сделать простую регистрацию в своей программе. Для регистрациитребуется или номер телефона, или адрес электронной почты (куда будет высланпароль). Можно просить пользователя указать данные вручную, но хотелось быупростить ему жизнь и брать данные непосредственно из телефона. Возможно, липолучить информацию о номере телефона и адресах электронных ящиков, имеющихся втелефоне?

    Заранее спасибо за Ваши ответы. 

    Wednesday, April 18, 2012 4:40 PM

Answers

  • this is not possible (getting user info from phone etc). you need to provide a form for user to enter details.
    Wednesday, April 18, 2012 8:05 PM

All replies

  • this is not possible (getting user info from phone etc). you need to provide a form for user to enter details.
    Wednesday, April 18, 2012 8:05 PM
  • I guess this is for privacy-reasons.

    But you can obtain information about the Phone itself: http://msdn.microsoft.com/en-us/library/microsoft.phone.info.deviceextendedproperties%28v=vs.92%29.aspx

    Maybe you give following a try: http://stackoverflow.com/questions/7288736/get-live-id-from-wp7
    • Proposed as answer by hfrmobile Friday, October 19, 2012 10:38 AM
    Thursday, June 14, 2012 8:49 AM
  • this is not possible (getting user info from phone etc). you need to provide a form for user to enter details.

    Just recognized that there apps on the Marketplace requiring "phone identity" and "owner identity". So I have done a look into WMAppManifest.xml and found:

    • ID_CAP_IDENTITY_DEVICE (which I already used for my DeviceInfo app for retrieving the DeviceID)
    • ID_CAP_IDENTITY_USER

    I am interpreting ID_CAP_IDENTITY_USER that way that it is possible to gain user info. Or I am on a completely wrong way now? Isn't this the answer to the original question?


    Programming is a kind of art but not all programmers are artists.


    • Edited by hfrmobile Friday, August 17, 2012 10:20 AM fixed typo
    Friday, August 17, 2012 10:18 AM
  • identifying a user by live id or device id is the preferred way.

    a lot of users want access to IMIE or phone numbers etc in a non intrusive way and that is not allowed.


    Hermit Dave

    Friday, August 17, 2012 10:32 AM
  • http://msdn.microsoft.com/en-us/library/windowsphone/develop/ff769509%28v=vs.92%29.aspx#BKMK_Capabilities

    ID_CAP_IDENTITY_DEVICE

    String

    Applications that use device-specific information such as a unique device ID, manufacturer name, or model name.

    ID_CAP_IDENTITY_USER

    String

    Applications that use the anonymous LiveID to uniquely identify the user in an anonymous fashion.

    The information keeps anonymous anyway.


    Programming is a kind of art but not all programmers are artists.

    • Proposed as answer by hfrmobile Sunday, August 26, 2012 4:53 PM
    Sunday, August 26, 2012 4:53 PM
  • this is not possible (getting user info from phone etc). you need to provide a form for user to enter details.

    Just recognized that there apps on the Marketplace requiring "phone identity" and "owner identity". So I have done a look into WMAppManifest.xml and found:

    • ID_CAP_IDENTITY_DEVICE (which I already used for my DeviceInfo app for retrieving the DeviceID)
    • ID_CAP_IDENTITY_USER

    I am interpreting ID_CAP_IDENTITY_USER that way that it is possible to gain user info. Or I am on a completely wrong way now? Isn't this the answer to the original question?


    Programming is a kind of art but not all programmers are artists.


    For example.
    1. User buys (or not) application. 
    2. User installs application.
    3. User enters to application first time.
    4. If it is trial version – nothing. 
    5. If it is not trial version, application gets [DeviceUniqueId] and sends it to a server (my server).
    6. My server compares received IDs from phones and IDs from me, which I take from Market Place (!).
    7. If ID from phone does not match with IDs from Market Place = user uses not a legal version. In this case application will be blocked.

    In this is my idea. 

    I know how I can get ID of phone from phone. But I want get something like ID of phone from Market Place. If it’s possible I can compare ID’s from phone and ID’s from Market Place. And I can decide does user use legally version or not. 

    I think this scheme – a best way to legal use application.
    Thursday, October 18, 2012 9:31 PM
  • What do you mean by "I want get something like ID of phone from Market Place."? A phone may not be linked with Marketplace.

    Are you looking forward for the GUID of app or what? You can use WindowsLiveID of the user and the DeviceId which you already mentioned you have access to and manipulate them but other than that, the OS is pretty much locked.

    Thursday, October 18, 2012 10:08 PM
  • I know how I can get ID of phone from phone. But I want get something like ID of phone from Market Place. If it’s possible I can compare ID’s from phone and ID’s from Market Place. And I can decide does user use legally version or not. 


    I think this scheme – a best way to legal use application.
    I see a problem with this.  Microsoft would have to allow developers access to their database of UserIDs (Anonymous or otherwise) and provide you with that list by GUID for your applications.  They would then need to allow you access to the list of DeviceUniqueIDs related to those UserIDs.  (A user can purchase an application and then install it on up to 5 Windows Phone's with the single UserID.)  There is no way that Microsoft will let us see the UserIDs of users who purchased an app and the chances of them allowing us access to the AnonymousUserID of the users who install an app is somewhere between slim and none.
    • Proposed as answer by hfrmobile Friday, October 19, 2012 11:10 AM
    Friday, October 19, 2012 7:30 AM
  • I am not sure if I got it ...

    Original question: WP7: User’s account’s data and phone number
    Answer: WP7 does not offer a way retrieving user-data

    I am not 100% sure if this also applies to WP8 but I am afraid there is no way doing that (see my post regarding to privacy concerns), even WP8 offers cool possibilities like using native code (C++).

    If you just like to offer trial/full versions of your app(s) I recommend the way as MS recommends:
    http://msdn.microsoft.com/en-us/library/ff967558%28v=vs.92%29.aspx

    In my opinion  there is no need for reinvent the wheel here.

    hth, hfrmobile


    Programming is a kind of art but not all programmers are artists.

    • Proposed as answer by hfrmobile Friday, October 19, 2012 10:38 AM
    Friday, October 19, 2012 10:37 AM
  • I see a problem with this.  ...  (A user can purchase an application and then install it on up to 5 Windows Phone's with the single UserID.)  There is no way ...

    Totally agree!

    Also I do not see the problem at all. OK, a user might install your (AlexWriter) app on up to 5 devices using a single LiveID (one purchase) ...

    Also I am not sure if your (AlexWriter) way goes conform with the "Design Guidelines for Developing Windows Phone apps". Just see the (correct) way how to develop trial/full apps.

    And also don't forget the some "freak users" (like me!) using more than one device ;-) I guess this is the reason why MS allows up to 5 installations of the same app using one single LiveID!

    --hfrmobile


    Programming is a kind of art but not all programmers are artists.

    Friday, October 19, 2012 11:17 AM
  • Thank you very much for your answers. 

    OK. Let me explain my question (or my idea – as you wish) once more. I’ll try to be clear. 

    So, everything what I want it's understand where user has gotten my app. Why? Because I want understand does he (user) uses a legal version of my app or doesn't.
    As I had written before: 
    1. User finds my app in MarketPlace (“MP”);
    2. User taps “try” or “buy”;
    3. User sees next question: “This application will requests a confirmation of your downloading. Do you want install this application?”;
    4. User taps “no”. So, goodbye user :(;
    5. User taps “yes” -> install app.

    Then user runs app first time, my app sends some information to my server for verification of user.

    I have a dream. Just try to imagine next algorithm
    1. User confirms his future verification.
    2. User downloads and installs an application from MP.
    3. In this moment, MP generates data like this (and saves it in WP’s database of course):

    {App ID	: XX-XX-…-XX-XX;Phone ID : XX-XX-…-XX-XX; Key : XX-XX-…-XX-XX}

    Field “key” is generated by WP. And this field is different for trial and not trial version.  
    4. User runs app first time.
    4.1. App sends to WP next request:

    {App ID	: XX-XX-…-XX-XX;Phone ID : XX-XX-…-XX-XX }

    4.2. WP answers to App:

    {App ID	: XX-XX-…-XX-XX; Phone ID : XX-XX-…-XX-XX;Key : XX-XX-…-XX-XX}

    (If app’s copy isn’t legal WP will not give key.)
    4.3. App sends this information to my server:

    {App ID	: XX-XX-…-XX-XX; Phone ID : XX-XX-…-XX-XX; Key : XX-XX-…-XX-XX}

    4.4. My server asks WP “Is it correct?” by sending this request to WP:

    {App ID	: XX-XX-…-XX-XX;Phone ID : XX-XX-…-XX-XX; Key : XX-XX-…-XX-XX}

    4.5. WP checks received data from App with data from WP’s database. It’s clear: key which was sent from App and key in database must be same. And WP answers to my server: “Yes. I have found this key. App’s copy is legal.” or “No. I couldn’t find this key.”

    This scheme allows to be sure that user uses legal copy of my app. Besides it’s very comfortable for good (legal) users. Why? Because I can refuse from procedure of user registration. Because I have anything what I need. I have unique phone ID and I can create user account according this data. In this case, user just install app and use it. He wouldn’t send e-mail and confirm it. It isn’t necessary if I have verification data from WP.

    So, for Microsoft this scheme can be very useful, too. Why? Because:
    1. If MS create verifying center like I have described, I’m ready pay additional tax to MS (to WP) for it. Because I will not have any risks of non-legal using of my apps.
    2. I will less spend my time on development of app. Because I should not to create a protection system of my app.  So, WP7 will be more attractive to developers than others (Android, Apple, and etc.).
    3. With this verifying system I will be able to reduce the price of my app. Why? Because now I consider the price of the application risks of illegal use. It’s about 20% of price. I think users will be happy with low prices.

    So, I have described my idea, my dream. Please don’t write:
    Microsoft never do it!” – It isn't interesting. I want to know why they did not it. Or why they don't want do it. Or why they can’t do it.
    It’s private information!” - Do not be fooled. If user installs my app, I can legally get his phone ID. It isn’t private information. It isn’t.
    User can downloaded app from his PC, but not from his phone!” – I understand it. And I am ready to refuse from such users. If user wants get my app, he will get it only from WP from his phone.

    And last. Why I talk about verifying system? I have created one of my apps. I have used dotfuscator. My app works with my server and my server does some work which has some price. For example, my server sends SMS. Of course it’s cost something. But 3 months after publication of the application, my application has been hacked and is now used by many illegally. Of course I fight with non-legal users by tools which I have. But it isn’t enough. 

    Thank you :)

    Friday, October 19, 2012 11:24 AM
  • Oops! 
    I am really sorry!
    I just mixed up the topic. I'm still not used to the new design. Sorry, sorry.

    I think that I answers for this - http://xboxforums.create.msdn.com/forums/t/106074.aspx.

    Here is a history of question.
    I had thought about how I can create application without registration procedure. What's why I create this topic. But I need and security system too. And I have began think about algorithm, which I have described in my last post.
    Friday, October 19, 2012 1:21 PM
  • ... I want understand does he (user) uses a legal version of my app or doesn't...

    I stopped reading after that sentence ...

    Why: The question was asked in the Windows Phone area so I assume that the question is about Windows Phone.

    Answer: You may forward your question to a MS representative. Otherwise you just have to trust MS that the MP is doing that for you!


    Programming is a kind of art but not all programmers are artists.

    Saturday, October 20, 2012 6:21 PM
  • Thank you for your answer.

    I have asked about security system because I hope somebody has same problems (see the end of my big post from "And last."). And I was very surprised when I have seen that I’m not secured well by MS.


    Saturday, October 20, 2012 6:47 PM
  • Thank you for your answer.

    I have asked about security system because I hope somebody has same problems (see the end of my big post from "And last."). And I was very surprised when I have seen that I’m not secured well by MS.


    Wow, in this case I recommend forwarding your concerns to MS. If I got it, Dotfuscator was not able to protect your app too ;)

    But why do not keep it simple: Why not asking the user for their e-mail-address (trial and full version) at the first app start. Verify the existence of that e-mail-address and reject spamgourmet etc. e-mail-addresses. Allow only "e-mail verified" users using your app (since sending SMS produces costs for you) ...


    Programming is a kind of art but not all programmers are artists.

    Saturday, October 20, 2012 7:01 PM
  • Let’s see. User runs my app and gives me his e-mail. OK. I verified it by my server. And? The problem is “Where does user get my app?”, “Does he get my app from MP*? Or doesn’t?”. Only information form WP cans help with this problem. Only, I think.

    So, any verification without MP – is not good.

    It’s very simple. What is a legal copy of app? This is copy of apps which was bought in any shop. So, how I can to know is it a legal copy or not. Yes – just ask shop.

    *MP – Market Place.

    • Edited by AlexWriter Saturday, October 20, 2012 7:51 PM
    Saturday, October 20, 2012 7:51 PM
  • So, any verification without MP – is not good.

    It’s very simple. What is a legal copy of app? This is copy of apps which was bought in any shop. So, how I can to know is it a legal copy or not. Yes – just ask shop.

    *MP – Market Place.
    With the latest update of Microsoft's Windows Phone Store, the new name for what used to be Marketplace, Microsoft started using encryption for Window Phone applications.  This should go a long way to reduce the likelihood of users getting your application from other sources.  
    Monday, October 22, 2012 6:38 AM
  • So, any verification without MP – is not good.

    It’s very simple. What is a legal copy of app? This is copy of apps which was bought in any shop. So, how I can to know is it a legal copy or not. Yes – just ask shop.

    *MP – Market Place.

    With the latest update of Microsoft's Windows Phone Store, the new name for what used to be Marketplace, Microsoft started using encryption for Window Phone applications.  This should go a long way to reduce the likelihood of users getting your application from other sources.  

    Yea… It’s very good of course. But I don’t believe in this: “Microsoft started using encryption for Window Phone applications”. Because I publish my app after last update of MP (at end of August).  And… 



    • Edited by AlexWriter Monday, October 22, 2012 9:41 AM
    Monday, October 22, 2012 9:40 AM