jar库中的android活动

时间:2012-01-09 15:09:31

标签: android android-activity jar

我从互联网上复制了一个活动类:get user input

当我在项目中使用activity类时,作为一个类文件 - 它工作正常。

当我将类+布局文件插入另一个项目(我的dialogs.jar文件)时,我无法启动该活动。

活动(TextEntryActivity)位于“com.xyz.dialogs”下 我的项目在“com.xyz.thisproject”

首先我得到了“未找到活动类”错误: “AndroidRuntime(487):android.content.ActivityNotFoundException:无法找到显式活动类......”

然后我在一篇文章中读到我应该将startActivityForResult插入try / catch中,然后我就这样做了。

结果是:

  1. 未显示活动
  2. onActivityResult在没有来自用户的任何操作的情况下被触发
  3. 注意:

    1. 我把活动放在两个清单中(首先只在jar中,然后在我的项目中,然后是两个)
    2. 我在该JAR文件中有另一个类(不是活动!)并且工作正常(我使用对话框构建器构建一个OK对话框)
    3. 我的问题是:

      1. 是否可以将活动放在外部库中?
      2. 布局文件是否在jar中是否可以(它只有一个带有两个命令ok / cancel的文本框)
      3. 我应该在哪里宣布活动(哪个清单或两者都有?)
      4. 我应该如何声明活动(我看到带有“ActivityName”的样本和带有“.ActivityName”的其他一些示例,我应该在哪里使用什么方法...)
      5. 提前致谢 盖

1 个答案:

答案 0 :(得分:2)

我至少有一个解决方法: 使用您的活动创建一个Eclipse库项目(在Android项目的Android属性中有一个is-library属性),并使您的第二个项目使用库项目。以下是有关该主题的更多信息:http://developer.android.com/guide/developing/projects/projects-eclipse.html

然后继承您的活动并在清单中声明子类。这适用于包问题。