LibGDX_1.4: Android 環境搭建:Eclipse+ADT 或 Android Studio

                <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>

LibGDX 基礎教程(總目錄)

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 文件夾中。

添加結果如下:

sy_eclipse_android_preject.png

(2) Android Studio

當前演示的 Android Studio 的版本爲 1.5 版本。

Android Studio 項目的 jar 包和 .so 動態庫放置位置(Project視圖下):

sy_as_project.png

注意

  • 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

部署程序到模擬器或真機運行,運行結果:

sy_android_run.png

注意:Android SDK 中自帶的模擬器可能不支持 Open GL ES 2.0,可能會報錯,建議使用真機部署或使用第三方模擬器 “Genymotion”(這個模擬器非常好用,強烈建意 Android 開發者使用)。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章