过程:
基础教学
2.开发后,出现问题主要归为以下几类:
1)android.mk:(log信息的问题,之前没有这个句报错--)
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := deviceInfo
LOCAL_SRC_FILES := deviceInfo.cpp
LOCAL_LDLIBS := -L$(SYSROOT)/usr/lib -llog
include $(BUILD_SHARED_LIBRARY)
2)application.mk:(一样是导入android库的问题,包括string等库文件)
APP_ABI := armeabi armeabi-v7a x86 arm64-v8a #mips只生成某架构的CPU用的lib,要生成所有平台的可以改为all
APP_STL := stlport_static
#APP_PLATFORM := android-19
3)string to jstring 以及 jstring to string 问题,卡在这里很久()
E:\Client\bugrpt\src\crash\jni\debug.cpp 中 有这两个函数,比较好,可以通过
参考str2jstring
http://www.cnblogs.com/lichien/archive/2011/10/11/2206828.html(常常闪退,发现与原因是没有对齐,有内存溢出!!)
4)编译问题,NDK中出现奇怪的编译问题:...make.exe stop 说明重新运行(待续)
总结:
1)学习NDK开发中,有好的教程很重要,一步一步走可以省很多弯路
2)学习中,发现包括关键几点需要考虑,
内存地址访问错误、使用野针对、内存泄露、堆栈溢出、初始化错误、类型转换错误、数字除0等常见的问题