android sdk 无法更新或更新太慢 备注信息:sdk manager中加入mirrors.opencas.org,强迫http方式;或者下载nvidia提供的CodeWorksforAndroid工具。 ADT下载地址:http://dl.google.com/android/ADT-23.0.6.zip

远程调试android程序 进入android sdk/platform-tools目录,保证被调试手机开启可调试选项,并且可以ping通手机,执行如下命令

1
2
3
4
5
6
adb shell
adb connect IP
top -m 10 -s cpu
dumpsys meminfo PID
dumpsys meminfo <package_name>
kill PID

插入usb调试时,不用进入shell,可以执行如下命令:

1
2
adb push/pull
adb install/uninstall com.android.example

Unity3D导出工程作为Android工程库使用时,在启动时退出 错误原因:没有在xml配置文件中设置android:screenOrientation=“landscape”

Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define … 错误原因:在项目中出现了多个相同的jar包,需要删掉多余的jar文件 备注信息:在Unity3d项目移植到Eclipse中时,不需要手动添加Unity安装目录中的class.jar文件

java.lang.UnsatisfiedLinkError: Couldn’t load lib…… findLibrary returned null 错误原因:使用了System.loadLibrary(“filename”),但找不到需要链接的库文件 备注信息:Eclipse中libs目录下的armeabi文件夹需要改名为armeabi-v7a,需要与Unity3d导出工程中的libs目录下文件夹名一致

android中一个程序出现两个相同的图标 错误原因:如下所示,在AndroidManifest.xml文件中出现了多个android.intent.action.MAIN,可能存在于不同的Activity中

1
2
3
4
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>

JNI使用GetStringUTFChars导致程序崩溃 错误原因:要转换jstring到const char*,使用函数GetStringUTFChars可能返回一个NULL对象

1
2
3
4
5
6
const char* str = env->GetStringUTFChars(arg, 0);
if (str == NULL){ 
    return; 
}else {
    env->ReleaseStringUTFChars(arg, str);
}

HttpConnection调用GetResponseCode()出现EOFException 错误原因:客户端使用了已经被服务器关闭的连接。下面的修正方法并不是很好,效率低。 最好的解决办法是,不使用HttpConnection,而是使用HttpClient来避免这个bug。

1
System.setProperty("http.keepAlive", "false");

希望用Int得到Float类型的值 这个错误属于再犯了,下面的代码正确吗?

1
2
3
4
5
DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
final int screenWidth = dm.widthPixels;
final int screenHeight = dm.heightPixels;
final float screenScale = screenHeight / 720;