4.3、Libgdx启动类和配置
(原文:http://www.libgdx.cn/topic/45/4-3-libgdx%E5%90%AF%E5%8A%A8%E7%B1%BB%E4%B8%8E%E9%85%8D%E7%BD%AE)
对每个平台来说,必须有一个启动类。这个类对于各个平台来说是独立的。这里只介绍Android。
**Android**
Android应用不适用main()方法作为入口,而是需要一个Activity。打开Android项目,会找到如下代码:
package cn.libgdx.game;
import android.os.Bundle;
import com.badlogic.gdx.backends.android.AndroidApplication;
import com.badlogic.gdx.backends.android.AndroidApplicationConfiguration;
public class MainActivity extends AndroidApplication {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
AndroidApplicationConfiguration cfg = new AndroidApplicationConfiguration();
cfg.useGL20 = false;
initialize(new MyGdxGame(), cfg);
}
}
这里主入口方法是Activity的onCreate()方法。在Android应用中,一个Android应用可以拥有多个Activities。但是在Libgdx游戏中只能有一个activity。不同的游戏界面在libgdx中完成,而不是分成多个界面。这样做的原因是创建一个activity同样需要创建一个新的OpenGL context,这就意味着所有的资源需要被重新载入。
**AndroidManifest.xml文件**
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="cn.libgdx.game"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="5" android:targetSdkVersion="15" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity
android:name=".MainActivity"
android:label="@string/app_name"
android:screenOrientation="landscape"
android:configChanges="keyboard|keyboardHidden|orientation">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
添加权限:
<uses-permission android:name="android.permission.RECORD_AUDIO"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.VIBRATE"/>
(www.libgdx.cn版权所有,如需转载,注明出处)