本篇文章旨在为初学者提供创建Android项目的详细步骤,并介绍了如何在模拟器或真实设备上运行项目以及如何调试代码。这篇文章是继前两篇介绍Android基础知识的文章之后的第三篇。
若想了解Android内核的更多信息,请参考这篇文章:
1. 打开EclipseIDE
2. 选择File -> New -> Android Application Project
3. 在新Android应用屏幕中:
4. 点击Next
5. 配置启动图标,可以从库中选择任何图片。
6. 创建空白Activity,然后点击Next,接着点击Finish。现在可以进入更详细的部分。
这是可以添加.java类和所有逻辑的地方。例如,下面代码中的MainActivity类继承自Activity类,并且位于src/com.example.helloworld包中。
package com.example.helloworld;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
可以使用这个库来访问所有资源,比如图片、声音文件、菜单和布局。
有一个各种drawables文件夹,用于小/中/大/x大/xx大设备,应该添加这些不同尺寸的图片,以确保应用设计适应所有设备屏幕尺寸。
这个文件夹包含所有屏幕的布局。创建项目并选择MainActivity.java后,会自动创建一个与之相关的.xml布局文件,名为activity_main.xml。每个Activity类型的类都必须与一个xml布局文件相关联,不同的类可以与同一个布局文件相关联。
这是一个布局.xml文件(activity_main.xml)的示例,它代表了MainActivity的布局/外观。
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/hello_world"/>
</RelativeLayout>
这是一个.xml文件,代表用户点击菜单时出现的菜单项,如下所示:
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/action_settings"
android:orderInCategory="100"
android:showAsAction="never"
android:title="@string/action_settings"/>
</menu>
可以添加不同的xml文件,比如color.xml、dimens.xml和strings.xml,以添加一些默认值,以便稍后在应用中使用。
例如styles.xml:
<resources>
<style name="AppTheme" parent="AppBaseTheme">
</style>
</resources>
例如dimens.xml:
<resources>
<dimen name="activity_horizontal_margin">16dp</dimen>
<dimen name="activity_vertical_margin">16dp</dimen>
</resources>
例如strings.xml:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">HelloWorld</string>
<string name="action_settings">Settings</string>
<string name="hello_world">Hello world!</string>
</resources>
这个文件包含配置,比如当前版本、最低SDK和目标SDK,以及所有类(必须将所有Activity类包含到这个文件中)的引用,并设置哪个类作为默认类以及启动应用。此外,还可以在这个文件中添加任何需要的权限,比如通过添加权限来访问互联网。
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.helloworld"
android:versionCode="1"
android:versionName="1.0">
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17"/>
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme">
<activity
android:name="com.example.helloworld.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>
1. 右键点击项目 -> Run As -> Android Application,然后等待它打开模拟器并启动应用。
现在,将在物理设备上运行应用,这比模拟器更可取,因为它更快、更好,而且模拟器不允许测试所有功能,比如录音或相机。