使用Android Studio新建Project并建立多个module
使用Android Studio新建Project并建立多个module
分类: Android 2014-03-29 23:25 187人阅读 评论(0) 收藏 举报
说明:本篇内容涉及如何在AS中新建一个Project(应用工作区)并在Project里创建多个Module(项目),记录了在创建Module时遇到的问题,比如新建一个Module后选择要运行的项目时,项目标有红色的叉叉导致无法运行。 Getting Start 在使用Android Studio(以下简称AS)新建项目时都会有这样一个概念: Eclipse中的WorkSpace相当于AS中的Project; Eclipse中的Project相当于AS中的Module(只就新建而言)。 所以Eclipse中在一个WorkSpace中建立多个Project 等同于 在AS的Project中建立多个Module。 1. New Project "File-> New Project" 弹出以下新建项目向导窗口: Module Name是Project中的第一个Module的名字。 Minimum required SDK用来选择应用支持的最低的Android版本,底部的Support Mode会随着所能够支持的最小SDK的选择而变化,如下图所示,选择Android 3.0,底部的Fragment等选项自动消失: 因为在Android3.0及之后,其SDK已经开始支持Fragment。如果是Android 3.0之前的版本需要使用到Fragment的话,勾选了底部Support Mode的Fragment就会为低版本的sdk提供相应的支持Fragment的库文件。 一路“Next”之后,设置默认的Activity及其生成的布局文件: 点击“Finish”完成项目的创建,项目新建完成后,项目结构如下图所示: 2. New Module “HelloWorld”是Project中的第一个创建的Module,再创建一个新的Module选择“File -> New Module”后弹出: 在弹出的New Module向导对话框选择“Android Application”,点击“Next”后: 新建的Module命名为“HelloChina”,一路“Next”,在以下窗口中选择“Blank Activity”空白的Activity 上述操作完后进入Module的启动Activity的设置: 可以看到Layout Name中默认显示activity_main2,因为第一个Module中已经生成了activity_main.xml(觉得这里不是很方便,每个Module新建时默认的Activity可以同名但是其对应的布局文件命名不能同名,对于不同的项目而言这种限制不是很爽)。Navigation Type可以选择导航类型,右边的视图会相应显示布局效果。 点击“Finish”完成Module的创建,创建后的工程结构如下图: 3. Run Module 接下来我们来运行新建的项目(这里所说的项目指的是Module),在AS顶部的工具栏里选择要运行的项目,从下图可以看到项目"HelloChina"上标了红叉: 点击“Edit Configurations”去看看哪里出问题 错误指出是找不到默认的Activity(我们在Activity模块里看到勾选的是启动默认Activity) 但是在项目中已经生成了默认的Activity了即MainActivity,为什么还会找不到呢? 起初遇到该问题时以为是除了第一次随新建Project时创建的Module之外,之后再创建的Module都要手动在配置里设置默认启动的Activity,于是乎我就手动设置了默认Activity,如下图所示,指定了“HelloChina”项目的默认启动Activity——MainActivity: 设置之后原先在“HelloChina”的红叉不见了,也可以点击运行按钮了,但是运行之后项目并没有启动成功,在logcat里打印出如下内容: ----------------------------------------Log------------------------------------------ Waiting for device. Launching application: com.aliao.hellochina/com.aliao.hellochina.MainActivity. ----------------------------------------Log------------------------------------------ 百度知道后,打开了HelloChina项目的AndroidManifest.xml文件,发现: MainActivity即默认启动的Activity竟然没有生成IntentFilter,含有如下设置的IntentFilter的Activity会被应用程序指定为程序的入口,即最先启动的Activity。
[java] view plaincopy
在<activity></activity>里加上这段代码后,项目的红叉消失了,原先在"Run/Debug Configuration"配置窗口里的Activity配置部分,仍然勾选 “Launch default activity”选项。 注:之后新建的Module生成的Manifest文件里默认的Activity标签里都没有<intent-filter>...</intent-filter>,只能手动添加,不知道AS这么做的目的是什么。由于我用的AS版本是0.3.7,最新的AS已经到0.4.x了,不晓得这个东东在最新版的AS里会不会有,有待验证。 运行项目成功: 自动生成的Navigation Drawer用起来很舒服! |
使用Android Studio新建Project并建立多个module相关推荐
- android studio 不动,解决Android Studio“building project卡住不动”的问题
问题根源: 新建项目或打开项目时studio会从 {android-studio-home}/gradle/tmp/wrapper/dists 中寻找对应的gradle版本,如果没有则从http:// ...
- 使用android studio新建keystore失败,提示“android studio Cannot create new key or keystore”,解决方法。
使用android studio新建keystore: 点击ok后,提示"android studio Cannot create new key or keystore".新建失 ...
- Android Studio新建类头部注释和添加函数注释模板及快捷键
一,Android Studio新建类头部注释 是不是有时候看到这个很心烦 其实Studio中有设置修改这些注释模板的信息的功能 其实很简单,只需要两步: 1.打开Setting设置面板,找到File ...
- android studio 新建函数注释模板
今天,简单讲讲如何使用 android studio 新建函数注释模板. 这个其实也很简单, Android Studio默认函数注释为 /*** */ 下面方法将要改为如下格式 /** ...
- android application 方法,Android Studio新建Android application配置的详细方法
Android Studio如何新建Android application配置呢?下面是小编介绍的Android Studio新建Android application配置的详细方法,有需要的小伙伴一 ...
- 04.android studio 新建一个项目
以下内容均已录制 查看B站视频 File->new->new project 选择Empty Activity->next 选择java语言 SDK版本可以选默认的 版本比较低 兼容 ...
- Android Studio新建module,以及module引用aar等相关问题
该篇文章主要记录module的一些问题,以及jar和aar引用等相关问题,会持续记录更新. 一.新建module如果是作为lib被引用,需要选择Android Library. 二.作为lib的mod ...
- Android Studio 新建项目的R文件丢失的解决方法
最近Android Studio炒的比较热,于是笔者决定赶赶时髦,从Eclipse转到了Android Studio.不幸的是,用Android Studio创建项目的时候就遇到了一个比较尖锐的 ...
- android studio新建layout,【Android Studio安装部署系列】十六、Android studio在layout目录下新建子目录...
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 一般用于分类显示不同模块的layout布局文件. 在res/layout文件夹下创建子目录 res/layout鼠标右键--New- ...
最新文章
- 局部敏感哈希(Locality Sensitive Hashing)二三问[2]
- mysql根据叶子找父亲_MySQL:如何在特定节点中查找叶子
- poj3061尺取法/前缀和 二分(java)
- 批量添加自定义用户控制,界面闪烁解决方案
- 2020年中国服装行业数据中台研究报告
- keras中的回调函数
- plotcylinder matlab,Matlab在任意两点之间绘制三维圆柱
- leetcode647 回文子串
- 一文弄懂什么是RPC
- 《原力计划【第二季】》第 7 周周榜揭晓!!!
- 聊天机器人5步重塑酒店业
- 【Linux云计算架构:第三阶段-Linux高级运维架构】第23章—— Linux手动木马查杀过程
- vue图片时间轴滑动_响应式垂直时间轴组件– vuetimeline
- 小程序wx.request通过post方式提交数据给服务器-小程序支付开发教程
- app显示服务器图片不显示,如何将存在本地服务器的图片,在APP前台显示
- django之七(模型层ORM相关)
- 《高质量C/C++编程指南》第1期
- 系统注册表方式修改背景颜色
- Struts2的OGNL表达式语言
- 最有效的5条改进措施
热门文章
- 1.QT刷新ROS地图画面时,地图画面时不时卡住,甚至整个界面挂掉退出
- 错误LNK1107文件无效或损坏: 无法在 0x338 处读取
- 线性最小二乘问题求解的豪斯荷尔德法C实现
- ads无法启用状态服务器,NAC ADSSO 无法工作在Microsoft 2008服务器版本
- 电脑网络禁用了怎么恢复_网卡禁用怎么启用恢复
- Unable to instantiate default tuplizer [org.hibernate.tuple.entity.PojoEntityTuplizer]
- 设计模式学习每天一个——Factory模式 和 Abstract Factory模式
- 【ASP.NET Web API教程】2.3.3 创建Admin控制器
- OU/Group/Group Policy组织单元、组和组策略
- iphone实现下拉列表(iOS开发 )