2010-06-01 61 views
0

我想向用户展示他们所有联系人电话号码的扁平选择列表,并且它必须从版本1.6开始工作。我已阅读SO和Android文档Eclair的相关问题。仅在Eclair及以上版本的Android手机通讯录中显示本机活动?

问题是,即使将我的代码分成一个工厂类和具体的实现不适用于我,因为使用Contacts.CONTENT_URI只显示联系人而不是个人号码。我需要的是这个版本1.6

Intent intent = new Intent(Intent.ACTION_PICK, Phones.CONTENT_URI); 
startActivityForResult(intent, REQUEST_PICK_CONTACT); 

而2.0和以上的等价物。

即使我得到他们的例子工作,通过构建对2.1 API我不停止我的应用程序在市场上显示给早期版本的操作系统的用户吗?例如,我无法在1.6模拟器上启动它。

+0

顺便说一下,对于Android开发人员来说:向后兼容意味着你的代码继续在新的API上工作。当你说旧的API已被弃用但“兼容”时,你并没有说出真相。 从头开始,向后兼容性一直是.NET的核心原则之一,它们从未打破过这一点。您为.NET 1.0编写的任何代码仍然可用于.NET 4.0。您应该使用Contacts API完成的事情可以确保我上面发布的代码在后面的API中继续产生相同的结果。 – 2010-06-02 22:57:43

回答

0

根据文档联系人类已折旧,而不是你必须使用ContactsContract类读取联系人。 一个完美的例子发现在How to read contacts on Android 2.0

+0

谢谢。我已经阅读过那篇文章,但我想要发布相当于我发布的代码,其中显示的本地活动仅显示电话号码列表,没有电子邮件或任何其他联系人。两个问题:如何显示该活动以及如何在1.6(以及1.6模拟器)上将针对2.0+的应用部署到市场用户。 – 2010-06-02 06:54:55

相关问题