1、cygwin环境变量设置

可在Cygwin.bat 中设置

set NDK_ROOT=P:/android/android-ndk-r8e

或者在home\Administrator\.bash_profile中设置

NDK_ROOT=/cygdrive/p/android/android-ndk-r8e
export NDK_ROOT

或者在运行程序前设置(绿色方式)

setlocal enabledelayedexpansion
set NDK_ROOT=%cd%\android-ndk-r8e
start %cd%\adt-bundle-windows-x86-20130522\eclipse\eclipse.exe

NDK与eclipse在同一级目录下。

 

2、Android 属性相关

android:label="@string/app_name">

android:screenOrientation="sensorLandscape" //只允许横屏切换
android:label="@string/app_name">


//第一个Activity



3、Shell多行注释

: :||:<<\COMMENTS

注释内容

COMMENTS

4、SourceInsight配置

AStyle格式化工具: 在Command增加AStyle,在Run填写"~\AStyle.exe" --style=linux -s4 -S -N -L -m0 -M40 --suffix=none --convert-tabs %f,再配置快捷键

TabSiPlus外挂式的文件标签,下载后运行后再执行sourceinsight主程序

 

3、定时操作

Handler mHandler = new Handler();

mHandler.postDelayed(new Runnable()
{
@Override
public void run()
{
}
}, 3000);

4、TagSoup 是一个Java开发符合SAX的HTML解析器

5、android-ndk-r8e/build/gmsl/__gmsl:512: *** non-numeric second argument to `wordlist' function: ''.

将AndroidManifest.xml文件先移动到其他地方,编译成功后再mv回来,这样操作果然成功。

6、

程序主动触发系统回收资源
System.runFinalization();
System.gc();
进程真正退出
System.exit(0);

1.不需要后台运行的app需在退出时调用上面的代码,以便系统回收资源和进程真正退出
2.app运行过程中也可以在合适的时候主动触发系统回收资源

基本上是Activity退到后台时加入以下一段代码处理
if (isTaskRoot()) {
System.runFinalization();
System.gc();
System.exit(0);
}

7、退出所有Activity的方法

在BaseActivity类中

private static LinkedList activityList = new LinkedList();

在onCreate中activityList.add(this);每次进入新的Activity将this指针压入链表,

重写onDestroy()方法移除相应的Activity,activityList.remove(this);

退出所有的Activity时,只要调用finish();方法,并移除所有的Activity就可以了。

8、android系统jni示例

public class ImageDecoder {
static{
System.loadLibrary("mathappliedprodec");
}
public native boolean decode(String path, Bitmap bitmap, int imageType);
public native boolean encode(String path, Bitmap bitmap, int imageType);
}

#include

#ifndef _Included_com_noahedu_dataparser_ImageDecoder
#define _Included_com_noahedu_dataparser_ImageDecoder
#ifdef __cplusplus
extern "C" {
#endif

JNIEXPORT jboolean JNICALL Java_com_noahedu_dataparser_ImageDecoder_decode
(JNIEnv *, jobject, jstring, jobject, jint);
JNIEXPORT jboolean JNICALL Java_com_noahedu_dataparser_ImageDecoder_encode
(JNIEnv *, jobject, jstring, jobject, jint);


#ifdef __cplusplus
}
#endif
#endif

 注意函数名称命名方式。

java|包名|类名称|函数名称

Java_com_noahedu_dataparser_ImageDecoder_decode

9、jni调试

//在C工程、android工程 调试切换
#ifdef ANDROID
#include
#define LOG_TAG "mathapplied"
#define LOGI(...) __android_log_print(ANDROID_LOG_INFO, LOG_TAG, __VA_ARGS__)
#else
#define LOGI(...) printf(__VA_ARGS__);
#endif

10、jni杂记

jstring path

const char *file = (*env)->GetStringUTFChars(env, path, NULL);

(*env)->ReleaseStringUTFChars(env, path, file);

 

11、取消代码混淆编译

LOCAL_PROGUARD_ENABLED := disabled

12、使用jar包名称区分大小写

android:name="PenWriterLib"
android:required="false" />

 13、listview背景黑块问题

android:cacheColorHint="#00000000"

 

12、在android程序中,如何将LogCat上的日志输出到文件?

LogCat存储在circular memory buffers中。 

(1)、可以通过命令来导出Log: 

引用 adb logcat -d > logcat.txt



详细参考 
http://developer.android.com/tools/help/adb.html#logcat 

(2)、在程序中获取Log的方法: 

引用



Java代码   收藏代码
  1. public class LogTest extends Activity {  
  2.   @Override  
  3.   public void onCreate(Bundle savedInstanceState) {  
  4.     super.onCreate(savedInstanceState);  
  5.     setContentView(R.layout.main);  
  6.     try {  
  7.       Process process = Runtime.getRuntime().exec("logcat -d");  
  8.       BufferedReader bufferedReader = new BufferedReader(  
  9.       new InputStreamReader(process.getInputStream()));  
  10.   
  11.       StringBuilder log=new StringBuilder();  
  12.       String line;  
  13.       while ((line = bufferedReader.readLine()) != null) {  
  14.         log.append(line);  
  15.       }  
  16.       TextView tv = (TextView)findViewById(R.id.textView1);  
  17.       tv.setText(log.toString());  
  18.     } catch (IOException e) {  
  19.     }  
  20.   }  
  21. }  



详细参考 
http://www.helloandroid.com/tutorials/reading-logs-programatically 

转载于:https://www.cnblogs.com/colife/p/3466975.html

更多相关文章

  1. android APP隐私政策弹框的实现代码实例
  2. android手机打电话代码分析
  3. 根据文件名称修改安卓默认的蓝牙接收文件地址
  4. flutter包名、应用名称、图标、启动图片修改
  5. 如何编写高效的android代码(1)
  6. Android程序优化之对屏幕旋转的处理总结
  7. 使用 Eclipse PhoneGap 构建 Android 应用程序入门

随机推荐

  1. 安装后新建Android出现“AndroidManifest
  2. Android自定义控件中常见的方法
  3. Android应用开发相关下载资源
  4. Android(安卓)Studio错误:Connect to 127.
  5. android保存log信息
  6. ]Android(安卓)ADT SDK API 说明
  7. android实现录屏功能
  8. Android中如何获取应用版本号
  9. Android(安卓)隐藏APP图标
  10. Android万能分辨率适应法