一、新建android工程的时候eclipse没有生成MainActivity和layout布局

  最近由于工作上的原因,开始学习Android开发,在入门的时候就遇到了不少的坑,遇到的第一个坑就是"新建android工程的时候eclipse没有自动生成MainActivity和layout布局”,项目的创建过程如下图所示:

  展开HelloAndroid项目,可以看到创建好的项目的目录结构,如下图所示:

  我的项目是采用的是官方集成了ADT的Eclipse(adt-bundle-windows-x86_64-20140702)创建的,创建项目时选择的是【Blank Activity】,结果生成的项目的目录结构就成了如上图所示的样子,正常情况下,Eclipse会在src目录下创建一个名字为me.gacl.helloandroid的包,然后里面会有一个MainActivity.java的文件,然后layout文件夹中会有一个activity_main.xml文件,但是现在这两个都没有生成。由于HelloAndroid项目中没有可运行的Activity,那么直接运行HelloAndroid项目是无法运行的,如下图所示:

  在Eclipse中运行Android项目,操作步骤如下图所示:

  运行会在Console打印出 "No Launcher activity found!",并且模拟器也不运行,如下图所示:

  下面说一下"No Launcher activity found!"错误,叫Android的项目中都会有一个AndroidManifest.xml配置文件,如下图所示:

  我们看一下AndroidManifest.xml里面的代码,如下所示:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="me.gacl.helloandroid"
android:versionCode="1"
android:versionName="1.0" > <uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="21" /> <application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
</application> </manifest>

  可以看到,里面没有配置启动项,原因是因为Eclipse在创建项目时没有帮我们自动生成MainActivity.java和activity_main.xml文件,这应该是Eclipse在创建【Blank Activity】的bug,在<application></application>中少了这段代码

<activity android:name=".MainActivity" android:label="@string/app_name">

            <intent-filter>

                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />

            </intent-filter>

</activity>

  其中.MainActivity就是你的项目的主Activity,所以凡是遇到"No Launcher activity found!"错误,那么绝对是AndroidManifest.xml文件中没有配置启动的主Activity

二、新建android工程的时候eclipse没有生成MainActivity和layout布局的解决办法

  解决办法:在创建项目时把【Blank Activity】换成【Empty Activity】就可以解决上述所说的问题!

  删除HelloAndroid项目,重新创建,前面的创建步骤都一样,就是到【Create Activity】时选择【Empty Activity】,如下图所示:

  很多视频教程在【Create Activity】这一步时选择的都是【Blank Activity】,但是经过我实践证明,【Create Activity】时这一步时如果选择的是【Blank Activity】,那么创建出来的Android项目就会出现"新建android工程的时候eclipse没有自动生成MainActivity和layout布局的问题也就是没有生成MainActivity.java和activity_main.xml文件,缺少了MainActivity的Android项目是无法运行的,运行时就会出现上述所说的"No Launcher activity found!"错误。所以到了这一步千万要注意,【Create Activity】这一步时选择的是【Empty Activity】,而不是【Blank Activity】。这或许和我自身使用的Eclipse版本有关系,我使用的采用的是官方集成了ADT的Eclipse(adt-bundle-windows-x86_64-20140702),而有些版本的Eclipse在【Create Activity】这一步时选择【Blank Activity】是可以正常生成MainActivity和layout布局的,反正创建项目到【Create Activity】这一步时,如果自身使用的Eclipse版本在【Create Activity】这一步时选择【Blank Activity】可以正常生成MainActivity和layout布局的话,那么【Create Activity】就可以选择【Blank Activity】作为创建模板,如果不行,那么【Create Activity】就选择【Create Activity】作为创建模板,反正我们的目的就是希望Eclipse自动帮我们生成MainActivity和layout布局,哪一种模板可以做到就选择哪一种。

  点击【Finish】按钮完成创建,这样创建的android项目就会自动生成MainActivity.java和activity_main.xml文件,如下图所示:

  我们看看AndroidManifest.xml中的代码:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="me.gacl.helloandroid"
android:versionCode="1"
android:versionName="1.0" > <uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="21" /> <application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application> </manifest>

  在<application></application>中多了这段代码

<activity
android:name=".MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>

  我们直接运行创建的Android项目,如下图所示:

  运行Android应用时,是需要在模拟器上面运行的,到这一步时首先是要创建一个模拟器的,不过在Eclipse中创建模拟器时启动要花很长时间,刚好我手头上有一台台电的平板电脑,可以用于测试,因此就直接使用真机测试了,如下图所示:

  在平板电脑中的运行结果如下:

  平板电脑的桌面上也显示出了我们安装部署上面的HelloAndriod应用的图标,如下图所示:

新建android工程的时候eclipse没有生成MainActivity和layout布局的更多相关文章

  1. Android开发中遇到的问题(二)——新建android工程的时候eclipse没有生成MainActivity和layout布局

    一.新建android工程的时候eclipse没有生成MainActivity和layout布局 最近由于工作上的原因,开始学习Android开发,在入门的时候就遇到了不少的坑,遇到的第一个坑就是&q ...

  2. eclipse中无法新建Android工程 出现问题:Plug-in org.eclipse.ajdt.ui was unable to load

    转自:http://www.bubuko.com/infodetail-757338.html eclipse中打开后新建Android项目区仍无法创建,出现下列提示对话框: Plug-in org. ...

  3. Eclipse新建Android工程,在模拟器运行的时候提示Unfortunately,XXX has stopped.

    刚新建好的android工程在模拟器运行的时候出错,提示Unfortunately,XXX has stopped 查看Eclipse下面的错误信息,双击第一条 把ActionBarActivity前 ...

  4. 新建Android工程没有自动生成R.JAVA,应该先升级下ADT

    前几天非常郁闷,本来计划在Android上做个小东西,结果打开Eclipse新建工程,发现居然没有R.JAVA! 反复测试很多次,均未成功,最后试着升级了下ADT,结果搞定,在这里记下,下次遇到这样的 ...

  5. appcompat_v7 引起的新建Android工程编译不过的问题 (转载)

    转自:http://blog.csdn.net/zhao7134/article/details/34449641 eclipse adt 上新建基于Android4.4(kk)的Android项目时 ...

  6. eclipse自动生成的appcompat_v7出错

    用eclipse新建Android工程时,自动生成的appcompat_v7出错,有个红色交叉,而且新建的Android工程有一个红色感叹号. 这时你去看看你新建的Android工程是不是没有生成R文 ...

  7. Android基础之用Eclipse搭建Android开发环境和创建第一个Android项目(Windows平台)

    一.搭建Android开发环境 准备工作:下载Eclipse.JDK.Android SDK.ADT插件 下载地址:Eclipse:http://www.eclipse.org/downloads/ ...

  8. Android:创建Android工程

    创建Android工程,在Eclipse左栏右键 new->project..   (版本不一样,名字会有所区别) 然后选择Android下的Android application projec ...

  9. 在eclipse中将android工程打包生成apk文件

    1.)生成keystore 按照下面的命令行 在C:\Program Files\Java\jdk1.6.0_10\bin>目录下,输入keytool -genkey -alias androi ...

随机推荐

  1. javascript中的浅复制和深复制

    //浅复制:实现基本类型的复制没有问题,但是复制的是引用类型的话,则修改child将会修改parent function extend(parent,child){ var child = child ...

  2. Linux 守护进程二(激活守护进程)

    //守护进程--读文件 #include <stdio.h> #include <stdlib.h> #include <string.h> #include &l ...

  3. PowerDesigner16建表在SQL SERVER 2008报 对象名 'sysproperties' 无效。

    http://blog.itpub.net/30150152/viewspace-1454979/

  4. 泛型委托 Predicate/Func/Action

    Predicate 泛型委托  表示定义一组条件并确定指定对象是否符合这些条件的方法.此委托由 Array 和 List 类的几种方法使用,用于在集合中搜索元素.看看下面它的定义: // Summar ...

  5. WinForm编程数据视图之DataGridView浅析

    学习C#语言的朋友们肯定或多或少地接触到了WinForm编程,在C#语言的可视化IDE中(如VS.NET中)使用设计器可以让我们轻松地完成窗体.按钮.标签.图片框等等控件的组合,我们可以轻易地做出界面 ...

  6. CSS 实现加载动画之三-钢琴按键

    今天做的这个动画实现也是非常简单,简单数几行代码就可以搞定.给这个动画取了个优雅的名字--钢琴按键,也实在是想不出什么更形象的名字了.废话不多说,直接上图. 1. 先看gif图 2. 代码实现思路 2 ...

  7. Java集合---Arrays类源码解析

    一.Arrays.sort()数组排序 Java Arrays中提供了对所有类型的排序.其中主要分为Primitive(8种基本类型)和Object两大类. 基本类型:采用调优的快速排序: 对象类型: ...

  8. GDB深入研究——20135308芦畅

    GDB深入研究 一.GDB代码调试 (一)GDB调试实例 在终端中编译一个示例C语言小程序,保存到文件 gdb-sample.c 中,用GCC编译之 #include <stdio.h> ...

  9. WPF开发时光之痕日记本——终于完工了。。晒晒截图(三)(已上传安装包)

    由于是业余时间学习的 WPF 的相关开发且不怎么会使用 Blend 软件,所以开发这个客户端着实花费了我很长时间,比如文本编辑器的开发,最初是在 Simple.HtmlEditor 的基础上做的修改, ...

  10. Mtk Ft6306 touch 驱动 .

    1.1.    MTK Touch 驱动的组成Mtk  Touch  driver 驱动包括:Mtk platform 虚拟平台设备驱动.Module touch IC 驱动.Input subsys ...