Ogre3d 之使用 Android NativeActivity

昨天把Ogre3d 编译到Android 平台安装之后,再回头看代码才发现,在Android工程中居然没有Java源文件,从Manifest文件中才知道原来使用的是 NativeActivity 。这一下让我犯糊涂,没有Java文件,没有Activity,那我要接入广告或者其它的一些SDK该怎么做呢?如果我要从一个Activity再跳入游戏界面那该怎么做呢?

文章出自 QQ:790621656

Ogre3d 的 Manifest 文件内容如下: 文章出自 QQ:790621656

<?xml version="1.0" encoding="utf-8"?><!– BEGIN_INCLUDE(manifest) –><manifest xmlns:android=""package="com.example.native_activity"android:versionCode="1"android:versionName="1.0"><!– This is the platform API where NativeActivity was introduced. –><uses-sdk android:minSdkVersion="9" /><!– This .apk has no Java code itself, so set hasCode to false. –><application android:label="@string/app_name" android:hasCode="false"><!– Our activity is the built-in NativeActivity framework class.This will take care of integrating with our NDK code. –><activity android:name="android.app.NativeActivity"android:label="@string/app_name"android:configChanges="orientation|keyboardHidden"><!– Tell NativeActivity the name of or .so –><meta-data android:name="android.app.lib_name"android:value="native-activity" /><intent-filter><action android:name="android.intent.action.MAIN" /><category android:name="android.intent.category.LAUNCHER" /></intent-filter></activity></application></manifest> <!– END_INCLUDE(manifest) –>可以看到指定了程序的入口为 NativeActivity 。文章出自 QQ:790621656

文章出自 QQ:790621656

在不得解之际,想到应该可以用一个Activity继承NativeActivity ,然后立即尝试了,果然可以。

文章出自 QQ:790621656

如下步骤:

(1) 新建一个 MyActivity 并且创建对应的 布局文件,,创建一个按钮,添加响应事件,点击按钮跳到游戏界面。

(2) 新建一个 MainActivity 继承自 NativiActivity 。

(3) 修改Manifest文件中的 NativiActivity 为 MainActivity 。

(4) 修改Manifest 中的启动Activity 为MyActivity。

工程运行结果:

点击按钮切换到游戏Activity (好吧这里就是NDK Demo的纯色界面)

文章出自 QQ:790621656

Demo下载:

文章出自 QQ:790621656

当爱丽思丢失了通往仙境的钥匙,

Ogre3d 之使用 Android NativeActivity

相关文章:

你感兴趣的文章:

标签云: