有谁知道我在哪里可以找到旧版本的Android NDK?我们的代码不是用r6构建的.当然必须存在某个存档版本.
我目前正在使用大量的C++代码开发大型Android应用程序.它编译和运行,到目前为止一切顺利.
不幸的是,每当我修改我的本机源结构中的某些内容(添加/删除/重命名/移动文件)时(经常会发生这种情况),ndk-build会重建整个源代码,甚至是未触及的文件.
有谁知道如何设置Android NDK以某种方式逐步建立?
提前致谢
我已经开始玩Android NDK了.我刚刚学到的一件事是创建一个application.mk文件来指定armv7 abi.
我正在使用以下参数构建san-angeles示例.
APP_MODULES := sanangeles
APP_PROJECT_PATH := $(call my-dir)/../
APP_OPTIM := release
APP_ABI := armeabi-v7a
Run Code Online (Sandbox Code Playgroud)
然而,这似乎以与之前完全相同的速度运行(即严重).我只是GL限制而不是CPU限制或这里有什么问题吗?
我注意到在编译时我发出了以下命令行选项:
-march=armv7-a -mfloat-abi=softfp -mfpu=vfp -mthumb
Run Code Online (Sandbox Code Playgroud)
令我担心的是"softfp".有提到v7 abi,VFP fpu的东西,我猜"拇指"指的是"拇指-2"指令(虽然我不知道究竟是什么).然而,"softfp"确实与我有关.难道不应该是"hardfp"吗?
有人对这些问题有任何想法吗?我想我可能已经准备好开始为我的HTC Desire实现一些GL ES 2.0代码,但我想确保我从中获得最佳速度:)
提前干杯!
这是我一直遇到的一个问题,我希望这里的某个人能够对此有所了解.
我有一个Android游戏加载一个GLSurfaceView谁的渲染器设置如下:
public class GameRenderer implements GLSurfaceView.Renderer
{
public void onSurfaceCreated(GL10 gl, EGLConfig config)
{
BaseLib.init(); // Initializes the native code
}
public void onSurfaceChanged(GL10 gl, int width, int height)
{}
public void onDrawFrame(GL10 gl)
{
BaseLib.render(); // Call to native method to render/update the current frame
}
}
Run Code Online (Sandbox Code Playgroud)
视图是这样的:
public class GameView extends GLSurfaceView implements SurfaceHolder.Callback
{
private GameRenderer _renderer;
private GameListener _listener;
public GameView(Context context)
{
super(context);
this._renderer = new GameRenderer();
setRenderer(this._renderer);
this._listener = new GameListener();
BaseLib.setListener(this._listener);
} …Run Code Online (Sandbox Code Playgroud)