问题标签 [android-library]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
8 回答
199640 浏览

android - 将库/JAR 添加到 Eclipse Android 项目

这是关于在 Eclipse 中将第三方库 (JAR) 添加到 Android 项目的两部分问题。

问题的第一部分是,当我尝试将第三方 JAR(库)添加到我的 Android 项目时,我首先遇到的问题是

解析 XML 时出错:未绑定前缀

因为我正在尝试使用该 JAR 中的一个类(并且需要以某种方式定义前缀)。这是怎么回事?

其次,(在修复之后——答案在下面给出),我的应用程序无法在 Android 上运行,我通过调试器 (LogCat) 发现我尝试使用的类不存在。

引起:java.lang.ClassNotFoundException: com.github.droidfu.widgets.WebImageView...

为什么,当我在 Eclipse 中没有编译或链接器错误时,模拟器上是否有这个问题?

这两个问题是修辞性的,因为我将在下面自己回答。这个论坛中的其他帖子逐渐解决了这个问题,其他地方也有讨论,但我觉得我可以更明确地帮助下一个出现的人。

0 投票
3 回答
533 浏览

android - 如何为 Android 提供库

我想为 Android 开发一个库。我可以以什么形式发货?jar、apk 还是别的什么?我应该怎么做才能让其他开发人员可以在他们的应用程序中使用我的库?

0 投票
2 回答
21918 浏览

android - Replace (or "Override") String in Android Library Project

I've been trying to make an android library project, and while the build process works fine, I've been running into some trouble with replacing a resource in the project which uses the library.

In my library I have:

  1. A library_layout.xml containing

    /li>
  2. A java file which calls

    /li>
  3. A resource strings.xml containing

    /li>

In the project using the library I have

  1. A resource strings.xml containing

    /li>

The behavior I expect is that when I run the project using the library, the text view displays Actual string content, but it actually contains false.

Looking in the app which uses the library, I do see two R files, and both of them have R.string.my_string and both of those are equal to the same numeric value.

0 投票
1 回答
1223 浏览

android - 您想在您的 android 应用程序中集成基于 POJO 或 Cursor 的库吗?

我的公司想为 android 发布一个库,以便其他人可以轻松地将我们的内容集成到他们的自定义应用程序中。

现在我仍然很不确定我应该如何提供内容。现在我正在使用 POJO 在我的项目中提供数据。

我正在关注“POJO 与游标”的辩论,结果证明对游标有利。我还看到了一个示例,其中有人将解析的资源存储在 SQLLite-DB 中,然后通过游标访问它。

我知道与 POJO 相比,Cursors 有很多优势。但是当你需要实现一个库时,你想弄乱游标吗?你们中的一些人可能也写过这样的库。你用了什么,为什么?


其他库是如何做到的......

Facebook 似乎使用 POJO:

响应格式:服务器响应是 JSON 字符串。SDK 提供了一个 Util.parseJson() 方法将其转换为 JSONObject,可以检查和访问其字段和值。

0 投票
4 回答
13654 浏览

android - android 从库项目中导入资源

是否可以在应用程序项目中使用库项目中定义的字符串等资源?如果是这样,如何?因为我似乎无法解析我想这样解析的字符串:

给了我这个例外

WARN/ResourceType(278):获取资源编号 0x00000000 的值时没有包标识符 WARN/System.err(278):android.content.res.Resources$NotFoundException:字符串资源 ID #0x0

我正在寻找的字符串(“样本”)肯定在库项目的 strings.xml 中提供的这个包中。我什至可以在 R.java 中看到它

0 投票
4 回答
12840 浏览

android - 使用 Android 库项目时,如何正确引用 xml 资源?

我有一个Android 库项目,其中包含在其 styles.xml 文件中定义的几个样式/主题。

通常,当在其他 xml 布局或清单文件中引用此样式时,您只需编写android:theme="@style/TheNameOfTheStyle"

使用库项目时,依赖项目现在如何正确引用该样式?将其保留原样android:theme="@style/TheNameOfTheStyle"会给我一个错误,提示找不到与该名称匹配的资源。

我想同样的问题也适用于其他参考,如@string、@color 等。

谢谢

编辑:好的,看来您应该像平常一样引用它,但是 Eclipse 中的控制台给了我这个错误:

错误:未找到与给定名称匹配的资源(在“主题”处,值为“@style/ThemeName”)。

(捂脸)编辑

我只需要在 Eclipse 中“清理项目”。现在它正在工作。

0 投票
1 回答
1071 浏览

android - 库项目中的 TabActivity,android.R.id.tabhost not found 错误

我正在尝试创建模板/BaseActivity 类供其他开发人员使用,作为框架的一部分。

我用 TabActivity 扩展了我的课程,我的 xml 看起来像这样/

当我通过在其他项目中扩展来使用此活动时,我收到一条错误消息,它无法获取 android.R.id.tabhost,这是必要的。

即使我在两种情况下都调用 getTabHost() 或 findViewById() 也会发生这种情况。

请注意:我在没有扩展 TabActivity 的情况下尝试了这个,以便在选项卡中使用视图。它工作正常。但我想使用活动作为我的标签内容。

我认为这是我们将其作为库项目并包含它时的问题。

如果您需要更多解释或知道一些解决方法,请告诉我,请提出建议。

0 投票
3 回答
996 浏览

android - Eclipse / ADT 在 Android 库项目方面有多聪明?

所以,我的"Utility"一些项目中有一些样式类。我很好奇是否可以将它们移动到包含所有或大部分非应用特定胶水代码(主要是包装器和接口)的 Android 库项目中。

所以,我的问题是该库中我不需要的文件会发生什么。我知道 Android 库项目基本上只是将他们的代码复制到另一个项目中,所以如果我说在我的“通用”库中使用 25% 的代码,我的应用程序实际上会包含所有 100% 的字节码,还是正确剥离它只包含我需要的东西。

过去我对 Proguard 中未使用的类有一些问题,所以我现在只是被 ADT 咬过一次,两次害羞......

0 投票
1 回答
1032 浏览

android - Android 库项目 - 定义类

嘿!(为这里的长篇道歉)

我正在编写一些基于基本相同代码的应用程序。

每个应用程序都会有其差异,有些应用程序会有新的活动,所有应用程序都会分配不同的资源。

我正在尝试使用一个 Android 库项目,以便我可以将所有公共代码放在一个地方,因此只需进行一次重大更改,所有项目都会更新。

现在,资源是一个简单的解决方案,因为我可以在主应用程序中定义每个资源,只要命名约定保持不变,这些资源就会覆盖库项目中的资源。

现在,我的问题是除了上课,我该怎么做?例如,我有一个基本视图作为跨所有视图的通用代码的包装器。在此,我开展了各种活动。如果所有三个应用程序都需要启动不同的活动,因为它们将包含不同的 UI 和功能怎么办?我该怎么办?库项目永远不会知道主项目想要使用不同的活动,因为它已经被编译。

我有几个我想到的解决方案,但我想知道是否有人有一些想法?这对这里的任何反馈都有很大帮助:

  1. 要启动的库项目中的 Activity 存储对要加载的类的引用,该类将在启动时在主应用程序中定义。这是库项目调用此活动时,它可以加载它被告知的内容。

  2. 我将所有不会更改的功能留在库项目活动中。然后我扩展这个活动,并覆盖 onCreate 来做我需要做的事情(比如加载不同的布局、设置视图等)。现在这有一个缺点,因为我必须在我的主应用程序中而不是在库项目中定义大部分入口点。

我希望你能关注我的问题。请问我是否解释得不好。

谢谢,

亚当

0 投票
2 回答
12397 浏览

android - android 库项目和活动

我正在开发一个 Android SDK 库。在这个库中,我声明并使用了一些活动。现在我尝试将库包含在应用程序中,但我注意到我必须在应用程序中声明所有库活动。这是一件非常糟糕的事情,因为在库中,我已经包含了很多活动,开发人员必须将所有活动复制到他自己的应用程序中。有解决方案吗?