将Android项目链接到另一个项目

时间:2012-11-02 14:49:56

标签: android android-library

我将一个项目转换为一个库项目并将其链接到另一个项目,但我收到了这些错误(SearchFacebook是库项目):

[2012-11-02 16:29:10 - FacebookFollower] G:\AndroidProjects\FacebookUpdaterFollower\SearchFacebook\res\layout\test_results_auto_complete.xml:2: error: No resource identifier found for attribute 'categories' in package 'shira.android.facebook.updaterfollower.search'
[2012-11-02 16:29:10 - FacebookFollower] G:\AndroidProjects\FacebookUpdaterFollower\SearchFacebook\res\layout\test_results_auto_complete.xml:2: error: No resource identifier found for attribute 'max_results' in package 'shira.android.facebook.updaterfollower.search'

我检查了R文件,资源标识符在那里,当链接项目被编译为独立项目(而不是库)时,我没有收到这些错误。

顺便说一下,我可以链接Android项目而不将其转换为库吗?

UPDATE:正如所建议的,我更改了使用它们的自定义属性的命名空间。现在,使用库的项目中的布局文件如下所示(相关部分):

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" android:layout_height="match_parent" android:padding="5dp"
xmlns:search="http://schemas.android.com/apk/res-auto">

<shira.android.facebook.updaterfollower.search.FacebookResultsAutoComplete 
    android:id="@+id/followed_type_auto_complete" android:layout_width="match_parent" 
    android:layout_height="wrap_content" android:layout_alignParentLeft="true" 
    android:layout_alignParentTop="true" android:hint="@string/followed_type" 
    search:max_results="15"/>

但是,我仍然遇到与以前相同的错误,并且我将Android工具更新到最新版本,那么可能出现什么问题?

5 个答案:

答案 0 :(得分:1)

您可能会遇到由库项目中的自定义属性引起的已知错误。

http://code.google.com/p/android/issues/detail?id=9656

幸运的是,r17安卓工具引入了一个修复程序。 Comment 71关于这个问题应该指出一个有效的解决方案。

答案 1 :(得分:1)

也许使用该方法的类需要导入包

答案 2 :(得分:1)

需要有关您的实施的更多信息。您可以在此处提供代码段(not complete)以支持您的问题。

  1. 提供您正在使用的两个包(main,lib)。(need not to be original)。(必须是独一无二的
  2. 确保您没有在库项目和主项目中重复相同的资源ID。(如果选择不同)
  3. 检查R文件的导入包查询。 (非常重要)导入正确的R文件。
  4. 当我使用库项目时,R文件经常以 android.R 的形式导入,经过很长一段时间我通过导入它的相关R文件解决了。

    希望这会对你有所帮助。

答案 3 :(得分:1)

导航到库项目gen并删除它的整个内容。 为主项目做同样的事情。 选择项目 - &gt;从日食选项菜单中清除。 完成所有操作后,选择构建并查看是否发生错误。

答案 4 :(得分:1)

尝试将项目导出为jar,然后在另一个项目中将其用作jar文件。希望这会有所帮助..