<div class="markdown_views">
<p>本文鏈接: <a href="http://blog.csdn.net/xietansheng/article/details/50186313" target="_blank">http://blog.csdn.net/xietansheng/article/details/50186313</a></p>
1. 前提
已安裝好 Android 開發環境,包括如下:
- 已安裝 JDK7 或更高版本;
- 已安裝 Android SDK;
- 已安裝 Eclipse + ADT 或者 Android Studio;
在這裏建議 Eclipse, ADT 和 Android SDK 都使用官網發佈的最新版本。
2. 創建 Android 項目,添加 LibGDX 相應的庫
首先創建一個 Android 項目,然後添加相應 jar 包和 C/C++ 函數庫即可。
LibGDX 的 Android 平臺項目需要用到的基礎 jar 包有兩個,如下:
- gdx.jar
- gdx-backend-android.jar
然後還需要添加 Android 本地 C/C++ 動態庫,LibGDX 開發包中的三個文件夾,如下:
- armeabi
- armeabi-v7a
- x86
(1) Eclipse + ADT
Eclipse 項目的 jar 包和 .so 動態庫放置位置:
- jar 包添加到項目的 libs 文件夾中;
- 動態庫(包括文件夾)也是添加到項目的 libs 文件夾中。
添加結果如下:
(2) Android Studio
當前演示的 Android Studio 的版本爲 1.5 版本。
Android Studio 項目的 jar 包和 .so 動態庫放置位置(Project視圖下):
注意:
- jar 包添加到 HelloLibGDX / app / libs 文件夾下後,還需要將 jar 包作爲依賴庫添加到工程(鼠標選中 jar 包 -> 鼠標右鍵 -> Add As Library -> OK)。
- .so 動態庫和 jar 包放置的地方不同,.so 動態庫放置在 HelloLibGDX / app / src / main/ jniLibs 文件夾下。
- Android Studio 項目默認沒有 assets 和 jniLibs 文件夾,需要自己手動在 HelloLibGDX / app / src / main 文件夾下創建兩個文件夾,分別是 “ assets ” 和 “ jniLibs ” 文件夾。
3. 修改AndroidManifest.xml文件
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.libgdx.hellolibgdx"
android:versionCode="1" <!-- 應用的版本號 -->
android:versionName="1.0" > <!-- 應用的版本名稱 -->
<uses-sdk
android:minSdkVersion="15" <!-- 最低支持的 Android 版本, 15 表示只對支持到 Android 4.0.3,目前 Android 開發支持到 4.0 即可 -->
android:targetSdkVersion="23" /> <!-- 目標 Android 版本, 一般是本地 Android SDK 中的最高版本 -->
<application
android:allowBackup="false"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"> <!-- 修改主題 theme 爲無標題並全屏 -->
<!--
Android 應用啓動的第一個 Activity
手動添加這兩個配置
android:screenOrientation 屏幕方向配置,豎屏爲 portrait,橫屏爲 landscape
android:configChanges 配置改變監聽,需要添加四個值: keyboard|keyboardHidden|orientation|screenSize
-->
<activity
android:name=".AndroidLauncher"
android:label="@string/app_name"
android:screenOrientation="portrait"
android:configChanges="keyboard|keyboardHidden|orientation|screenSize">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
注意: Android Studio 創建的 Android 項目,其中 versionCode、versionName、minSdkVersion、targetSdkVersion 這幾個屬性定義在 HelloLibGDX / app / build.gradle 文件中。
4. 修改 Android 首個啓動的 Activity(AndroidLauncher 類)
package com.libgdx.hellolibgdx;
import com.badlogic.gdx.backends.android.AndroidApplication;
import com.badlogic.gdx.backends.android.AndroidApplicationConfiguration;
import android.os.Bundle;
/**
* Android平臺啓動器, 繼承 AndroidApplication(實際爲一個 Activity)類
*/
public class AndroidLauncher extends AndroidApplication {
@Override
protected void onCreate (Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
AndroidApplicationConfiguration config = new AndroidApplicationConfiguration();
// 啓動遊戲, MainGame 爲 遊戲主程序的啓動入口類
initialize(new MainGame(), config);
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
附加 MainGame 類演示:
package com.libgdx.hellolibgdx;
import com.badlogic.gdx.ApplicationListener;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.graphics.GL20;
/**
* 遊戲主程序的啓動入口類, 實現 ApplicationListener 接口
*/
public class MainGame implements ApplicationListener {
@Override
public void create() {
}
@Override
public void dispose() {
}
@Override
public void pause() {
}
@Override
public void render() {
// 設置清屏顏色爲紅色
Gdx.gl.glClearColor(1, 0, 0, 0);
// 清屏
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
}
@Override
public void resize(int width, int height) {
}
@Override
public void resume() {
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
部署程序到模擬器或真機運行,運行結果:
注意:Android SDK 中自帶的模擬器可能不支持 Open GL ES 2.0,可能會報錯,建議使用真機部署或使用第三方模擬器 “Genymotion”(這個模擬器非常好用,強烈建意 Android 開發者使用)。