Skip to content


Subversion checkout URL

You can clone with
Download ZIP
MS.Net OpenUDID system for PC and Windows Phone Application
Latest commit 9cd8f14 @jasonlamkk Update
Failed to load latest commit information.
OpenUDID.Net removed unneccessary old code Update

Who is behind OpenUDID.NET

The project OpenUDID for iOS was initiated by Yaan Lechelle on 8/28/11 and this OpenUDID.Net is the CSharp.Net and SilverLight port created by Jason Lam (co-founder WaveSpread Technology Limited) on 15/4/2012

About OpenUDID.JS

OpenUDID.JS is JavaScript OpenUDID client side script created by Jason Lam with flash and JavaScript on 19/4/2012. It demonstrate the possibility of generating a single cross-browser + cross-domain unique idendifier per machine, which link up all browsering activities for every web user very useful for centralized behavioral analysis.

moved to OpenUDID.Web as it is only a by-product of this project, the architecture and coding is not very relevant

Master Branches & Contributors

Usage On Windows Desktop (support .Net framework 2.0 or above)

using OpenUDIDCSharp;
String openUDID = OpenUDID.value;

Usage On Windows Phone 7

using OpenUDIDPhone;
String openUDID = OpenUDID.value;
String plainOldDeviceId = OpenUDID.OldDeviceId;// the factory default unique idendifier in base64 format for transition / compatibility purpose


OpenUDID.Net is a created for standarding OpenUDID format across platforms, OpenUDID for iOS was initiated by Yaan Lechelle on 8/28/11 to replace the deprecated uniqueIdentifier property of the UIDevice class on iOS (a.k.a. UDID) and otherwise is an industry-friendly equivalent for iOS and Android.

The agenda for this community driven project is to: - Provide a reliable proxy and replacement for a universal unique device identifier. That is, persistent and sufficiently unique, on a per device basis. - NOT use an obvious other sensitive unique identifier (like the MAC address) to avoid further deprecation and to protect device-level privacy concerns - Enable the same OpenUDID to be accessed by any app on the same device - Supply open-source code to generate and access the OpenUDID, for Windows PC, Windows Phone 7 (,and the .net2.0 version theoretically can port to Windows CE and Windows Mobile 5~6.5 ) - Incorporate, from the beginning, a system that will enable user opt-out for privacy intent


If you're not already familiar with UDID's, it's a critical tool for analytic or CRM purposes. A developer could use UDID's as a means to track how much time a user spent in his free app before upgrading to the paid version. UDID's are also helpful for tracking the source of a download when advertising on an ad network. This is a fairly universal need in a thriving ecosystem: developers need the traceability from clicks to downloads to ensure that they pay the right price for their promotion. Proper tracking and funnel conversion is what has made the web a better place, with healthy competition and quantifiable metrics.

In the wake of Apple's decision to deprecate UDID; and the absent of UDID in windows desktop platform, some ad networks have already introduced their own proprietary solutions. The main motivation here was to find a UDID replacement not owned by any single provider. It is easy to foresee a fragmented market where UDID management is operated by multiple providers with no cooperation between them. This open source initiative is to enable a better solution for thousands of other mobile app developers.

Version History

  • April 2012: launch of the initiative

Contributions needed

Implementation / Suggestion of opt-out mechanism, etc...

Equivalent OpenUDID systems on Blackberry, etc...

Something went wrong with that request. Please try again.