在Android KitKat 4.4.2中向联系人添加自定义连接/操作时的特殊情况
首先,谢谢你的帮助。我每天都使用stackoverflow来解决我遇到的几乎每一个代码问题,这是一个拥有优秀人才的优秀平台 对于我的问题: 我最初的目标是为Android上的联系人添加一个自定义连接(操作按钮),并在我的应用程序中执行自定义操作(例如:使用我的应用程序调用)。多亏了这篇文章,我已经成功地在大多数设备上使用了帐户和同步提供商,我的代码类似于Rene Ummels和c99.org教程的回复: 该操作在Android 4.0.4、4.3.1和4.4.3的三个测试设备中都能完美运行,如下所示: 问题是,从我的测试设备来看,有一个设备不工作。设备详细信息(向上)和不起作用的内容(向下): 基本上,我觉得这个版本的Android(4.4.2)处理连接的方式不同 我的自定义应用程序图标在这种情况下就像一个死按钮,你点击它,它什么也不做。我知道有可能让它执行操作,因为它旁边的Facebook按钮起作用,它会将你带到该联系人的Facebook提要 我的问题是:如何激活自定义应用程序按钮以启动此设备中的预期活动 有人有过同样的问题吗?我在网上搜索没有找到任何类似的东西 非常感谢,我希望我提供了足够的细节,有人能给我一个答案。解决了这个问题 据我所知,问题在于命名约定 相关的位在我的ContactsSyncAdapter中,在一个类似以下的部分:在Android KitKat 4.4.2中向联系人添加自定义连接/操作时的特殊情况,android,action,contacts,android-4.4-kitkat,Android,Action,Contacts,Android 4.4 Kitkat,首先,谢谢你的帮助。我每天都使用stackoverflow来解决我遇到的几乎每一个代码问题,这是一个拥有优秀人才的优秀平台 对于我的问题: 我最初的目标是为Android上的联系人添加一个自定义连接(操作按钮),并在我的应用程序中执行自定义操作(例如:使用我的应用程序调用)。多亏了这篇文章,我已经成功地在大多数设备上使用了帐户和同步提供商,我的代码类似于Rene Ummels和c99.org教程的回复: 该操作在Android 4.0.4、4.3.1和4.4.3的三个测试设备中都能完美运行,如
builder = ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI);
builder.withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0);
builder.withValue(ContactsContract.Data.MIMETYPE, "vnd.android.cursor.item/com.example.precall.contact_activity");
我所要做的就是将“contact_activity”名称(我希望通过按钮访问的布局)更改为“profile”,然后将我构建的contact_activity.xml重命名为profile.xml。看起来是这样的:
builder = ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI);
builder.withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0);
builder.withValue(ContactsContract.Data.MIMETYPE, "vnd.android.cursor.item/com.example.precall.profile");
(当然,我必须更改清单以适应此编辑)
据我所知,除非我完全错了,否则这是一个命名约定,在文档中没有出现,只是通过示例假设它应该这样命名
在我看来,在这种特殊情况下,您必须以某种方式命名您的.xml,否则它就不会是KitKat中的按钮,而只是一个死气沉沉的图像
不管怎样,如果有人遇到同样令人沮丧的问题,我希望这对他们有所帮助
:D