Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Browse files

Updated README

  • Loading branch information...
1 parent 592d129 commit d5eb5ad5415f70500cf1cfa40f914c7afd1bf7a5 @0xced committed
Showing with 14 additions and 1 deletion.
  1. +14 −1
@@ -5,7 +5,14 @@ Unlike the Mac Address Book API, the iOS Address Book API does not come with the
![Contacts Settings]( "My Info")
-If *My Info* is not found, then **ABGetMe** will try to match your e-mail account addresses to find the *me* record.
+If *My Info* is not found, then **ABGetMe** tries to match the configured e-mail account addresses with the records of the address book to find the *me* record.
+If the *me* record is still not found, then **ABGetMe** finally tries to extract the device owner's full name from the device name in order to find the *me* record. This technique was explained by John Feminella in his answer to [How does Square know my name in their app's registration process?]( on Quora.
+* **ABGetMe** requires iOS 4.0 or later.
+* **ABGetMe** can be compiled either with or without Automatic Reference Counting (ARC).
@@ -24,3 +31,9 @@ Limitations
**ABGetMe** is not *legally* App Store compliant because it uses undocumented APIs which is proscribed by clause 3.3.1 of the iPhone Developer Program License Agreement. It is *technically* App Store compliant though as it will pass the App Store validation. Moreover, it should not crash even if the undocumented APIs change in the future.
+* Reading *My Info* from the Contacts settings uses undocumented APIs.
+* Reading configured e-mail account addresses uses undocumented APIs.
+* Reading the device name is a public API.
+You can disable private APIs by setting `ABGETME_ENABLE_PRIVATE_APIS` to `0` instead of `1` at the top of the `ABGetMe.m` file. Note that disabling private APIs considerably reduces the chances of finding the *me* record. The only method left to find the *me* record when disabling private APIs is the last one (i.e. matching the device name) which only works if the device owner never changed the default device name.

0 comments on commit d5eb5ad

Please sign in to comment.
Something went wrong with that request. Please try again.