首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android即时应用程序-无法从基本功能资产中找到符号

Android即时应用程序-无法从基本功能资产中找到符号
EN

Stack Overflow用户
提问于 2017-06-22 00:00:46
回答 1查看 915关注 0票数 3

我有一个基本功能模块和一个功能模块(您可以称它为“子”)。基本功能模块具有一个包含以下内容的strings.xml文件资产:

代码语言:javascript
复制
<resources>
   <string name="app_string">Test String</string>
</resources>

我试图在“子”功能的活动中引用此字符串资源,如下所示:

代码语言:javascript
复制
int resId = R.string.app_string;

Android似乎尊重这个引用,甚至在我单击它时会将我引导到app_string资源。但是,在编译期间,我遇到以下错误消息:

代码语言:javascript
复制
Error:(13, 25) error: cannot find symbol variable app_string

用于我的“子”特性的build文件也具有依赖性:

代码语言:javascript
复制
dependencies {
   ...
   implementation project(':base')
}

我也尝试过compile project(':base'),但没有成功。

有什么东西是我错过的吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-06-22 02:54:40

您的基本模块和子模块有不同的包名--假设它们是com.example.basecom.example.child。每个资源都包含自己的一组资源,它们的标识符将在单独的R包中收集:

  • com.example.base.R
  • com.example.child.R

因为您试图访问基模块中定义的资源,所以需要使用变量的完全限定名(即com.example.base.R.string.app_string )引用它。

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44688018

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档