1、项目结构和配置文件
2、主活动(MainActivity)
3、布局文件(XML)
4、资源文件(如图片、字符串等)
5、AndroidManifest.xml
6、依赖库和权限声明
下面是一个简单的安卓客户端源码示例:
1、项目结构和配置文件:
MyApp/ | app/ | | src/ | | ` main/ | | | java/com/example/myapp/ | | | ` MainActivity.java | | ` res/ | | | layout/ | | | ` activity_main.xml | | ` values/ | | ` strings.xml | ` build.gradle ` build.gradle
2、主活动(MainActivity):
package com.example.myapp; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } }
3、布局文件(XML):
<?xml version="1.0" encoding="utf8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/resauto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context=".MainActivity"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Hello World!" /> </LinearLayout>
4、资源文件(如图片、字符串等):
在res/values/strings.xml
中添加字符串资源:
<?xml version="1.0" encoding="utf8"?> <resources> <string name="app_name">MyApp</string> </resources>
5、AndroidManifest.xml:
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.myapp"> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/Theme.MyApp"> <activity android:name=".MainActivity"> <intentfilter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intentfilter> </activity> </application> </manifest>
6、依赖库和权限声明:
在build.gradle
文件中添加依赖库和权限声明:
apply plugin: 'com.android.application' android { compileSdkVersion 30 buildToolsVersion "30.0.3" defaultConfig { applicationId "com.example.myapp" minSdkVersion 21 targetSdkVersion 30 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguardandroidoptimize.txt'), 'proguardrules.pro' } } } dependencies { implementation 'androidx.appcompat:appcompat:1.2.0' implementation 'com.google.android.material:material:1.3.0' }