Articles of android library

Android Studio中的导入模块无法find导入的类

我最近下载了ViewPagerIndicator库并将其导入android studio。 将它添加到我的项目后,我得到一个渲染错误“无法find以下类:”并指向com.viewpagerindicator.IconPageIndicator。 我采取的步骤是Files->Import Module->’library name’ , Project Structure -> Dependencies -> + the imported module 。 然后到我的布局xml文件,我添加了 ,之后我得到了缺少的类问题。 它编译得很好,我浏览了所有build.gradle和settings.gradle文件,并将它们与在线应该进行比较。 MyApp->build.gradle在dependencies settings.gradle下有compile project(‘:library’) MyApp->build.gradle include ‘:library’ ,没有构建错误。

在Android库中调试本机代码

我的工作区布局是: . ├── ApplicationLibrary │ ├── AndroidManifest.xml │ ├── … │ ├── jni │ ├── libs │ ├── … │ └── src └── Application ├── AndroidManifest.xml ├── ant.properties └── … 如何在Eclipse中调试本机库? 有人暗示过这个吗?

android库项目和活动

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

如何防止客户端在Android库中看到内部私有类?

我有一个包含几个包的图书馆 – 我们说吧 包a; 包装b; 在包内我有公共a_class 在包内b我有公共b_class a_class使用b_class。 我需要从中生成一个库,但我不希望客户端看到b_class。 我所知道的唯一解决方案是将我精美易懂的软件包压缩为单个软件包,并使用b_class的默认软件包访问。 还有另一种方法吗? 也许使用接口或某种forms的设计模式?

共享库项目的清单服务和权限

我想开发一个由GCMIntentService组成的库项目,它执行GCM注册过程并接收通过GCM发送的消息。 我已经使用AIDL将我的库项目服务暴露给宿主应用程序,但我还需要在应用程序项目中声明服务…..我怎样才能避免这种情况? 此外,我还需要在应用程序清单中声明GCM所需的所有权限。 是否有任何方法可以从主机应用程序中引用库项目的所有权限和服务,而无需在清单中再次声明它们? 我搜索过这个并发现: 1. 是否可以在Android框架(库)中封装权限 这清楚地表明我想要实现的目标是不可能的。 2.有用的库项目清单文件是否合并? @Hayes Haugen的回答说“在ADT工具的第20版中支持AndroidManifest.xml合并” 我正在使用ADT版本20.0.3 无论如何我可以实现提供GCM集成的库项目吗?

Retrofit 2示例教程但GsonConverterFactory显示错误“无法解析符号”

我正在尝试遵循Retrofit的2 教程,但是在这部分代码中有一个显示错误的GsonConverterFactory Cannot resolve symbol : public class ServiceGenerator { public static final String API_BASE_URL = “http://your.api-base.url”; private static OkHttpClient httpClient = new OkHttpClient(); private static Retrofit.Builder builder = new Retrofit.Builder() .baseUrl(API_BASE_URL) //THIS IS THE LINE WITH ERROR!!!!!!!!!!!! .addConverterFactory(GsonConverterFactory.create()); public static S createService(Class serviceClass) { Retrofit retrofit = builder.client(httpClient).build(); return retrofit.create(serviceClass); } } 之前我在gradle.build中添加了,我不确定是否应该添加GSON,因为他们说Retrofit 1.9有它但是没有提到Retrofit […]

对于android库项目,在manifest中有意义吗?

这一切都在标题中。 虽然我看到在我看过的所有示例库项目的AndroidManifest.xml中都指定了 ,但我感觉它无关紧要。 事实上,我怀疑也是无关紧要的,除了package之外, 所有属性也是如此。 谁能确认一下?

android项目层次结构中Android私有库,引用库和Android Dependies的目的是什么?

我想知道android项目层次结构中Android私有库 , 引用库和Android依赖项的确切用法?

在Android库项目中替换(或“覆盖”)字符串

我一直在尝试创建一个android库项目,虽然构建过程工作正常,但是在替换使用该库的项目中的资源时遇到了一些麻烦。 在我的图书馆,我有: 包含的library_layout.xml <TextView的 机器人:ID = “@ + ID / str_my_string” 机器人:layout_width = “WRAP_CONTENT” 机器人:layout_text = “WRAP_CONTENT” > 一个调用的java文件 ((的TextView)this.findViewById(R.id.str_my_string))的setText(R.string.my_string)。 包含的资源strings.xml 占位符 在使用我的库的项目中 包含的资源strings.xml 实际字符串内容 我期望的行为是,当我使用库运行项目时,文本视图显示实际字符串内容 ,但它实际上包含false 。 查看使用该库的应用程序,我确实看到两个R文件,它们都有R.string.my_string并且它们都等于相同的数值。

Aspectj与android库

我有一个使用方面的lib,可以通过maven获得,现在我正在尝试在Android应用程序中使用该lib。 如果我将这个插件包含在app gradle文件中,一切正常,但我的目标是提取classpath ‘com.uphyca.gradle:gradle-android-aspectj-plugin:0.9.+’和apply plugin: ‘android-aspectj’ (插件所需)到my.lib gradle文件而不是在我的应用程序中声明。 那可能吗? app gradle文件: classpath ‘com.uphyca.gradle:gradle-android-aspectj-plugin:0.9.+’ apply plugin: ‘android-aspectj’ dependencies { compile ‘my.lib:example:1.0.0’ } 目标: app gradle文件: dependencies { compile ‘my.lib:example:1.0.0’ } my.lib gradle文件: classpath ‘com.uphyca.gradle:gradle-android-aspectj-plugin:0.9.+’ apply plugin: ‘android-aspectj’ dependencies { compile ‘org.aspectj:aspectjrt:1.7.3’ }