Android 基础&杂

基础&杂




<--! 注释 -->

点击左上角的DDMS进入调试界面




资源


语言

(IE-Internet选项-语言)

  • res/values-zh 中文包 res/values-zh-rCN

* res/values-en 英文包

资源目录下的String.xml

res/values/strings.xml

例:

<string name="omg">欧迈嘎</string>
<string-array name="tag">
    <item >ABC</item>
    <item >DEF</item>
    <item >GRE</item>
    <item >JKL</item>
</string-array>

调用
String[] TagStrings = getResources().getStringArray(R.array.tag); // 获取Tag数组


styles 主题样式

res/values/styles.xml

例:

<style name="my_style">
    <item name="android:textColor">#00ff00</item>
    <item name="android:textSize">59dp</item>
</style>

调用:
* 控件属性+:style="@style/my_style"
* AndroidManifest.xml/application+:android:theme="@style/my_style"

系统有自带样式,详情百度




一些函数

关闭当前界面 finish();




知识


缩写

  • ANR (Application NotResponding):无响应 - 在5秒内没有响应输入的事件 或 BroadcastReceiver在10秒内没有执行完毕。

* OOM (Out of Memory):内存不足 - 多用缓存,注意图片

sdk的目录结构

  • add-one 额外功能附属文件(google地图等…)
  • docs 开发文档
  • extras usb的驱动、摄像头驱动等等
  • platforms Android系统的版本
  • platform-tools 平台工具(adb)
  • samples 范例代码(一些案例)
  • sources 源码
  • system-images 系统镜像

* tools 开发用到的工具(模拟器)

常见分辨率

  • VGA : 480 * 640
  • HVGA : 480 * 320
  • QVGA : 240 * 320
  • WVGA : 480 * 800
  • FWVGA : 480 * 854




提示


//TODO 标记名 标记


Log信息

Log.i("标签名","输出信息");        
Log.d(TAG, "Error setting camera preview: "  +   e.getMessage());
// Log. v/i/e/d/w 都可以 级别/颜色不一样

函数注释

/**
* 获得我自定义的样式属性?
*
* @param context
* @param attrs
* @param defStyle
*
* @return
*
* @author ly
*/




测试

  • monkey 2000 //狂点手机2000次 用于压力测试 有其它参数
    写一个类继承AndroidTestCase里面写测试
    断言:assertEquals(期望值,实际值); //对比
    配置函数库:
清单文件+<instrumentation android:name="android.test.InstrumentationTestRunner" android:targetPackage="包名" />
// application + <uses-library android:name="android.test.runner" />

运行Android JUnit Test




环境&软件


环境的搭建

环境变量:值/例
ANDROID_SDK_HOMED:\Software\Android\SDK (SDK路径)
JAVA_HOMEC:\Program Files\Java\jdk1.7.0_79 (安装的JDK包路径)
CLASSPATH.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
Path%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;%ANDROID_SDK_HOME%\tools;%ANDROID_SDK_HOME%\platform-tools;

配置完成后,运行->cmd,输入java或者javac测试命令看成功与否.







adb命令


导入 导出文件

  • adb push 把电脑的文件发送到手机

    adb push filename.txt /sdcard/filename.txt

  • adb pull 把手机的文件发送到电脑
    adb pull /sdcard/filename.txt filename.txt

安装命令

  • adb install xx.apk 安装应用
  • adb uninstall 包名 卸载应用

    adb uninstall com.example.testnew


  • adb shell 进入终端

  • shell 退出终端

  • adb kill -server // 杀死adb的服务(当安装卡住时,,,等等)

  • adb start-server //启动 (杀死再重启服务)

  • adb 占用 5037端口 (在cmd中输入netstat -ano // 查询占用端口)

  • monkey 2000 //狂点手机2000次 用于压力测试 有其它参数


就是 Linux 命令

  • ls :: 列出当前目录文件
  • cd 目录名 :: 打开目录

    cd sdcard

  • rm -r filename 删除文件

    rm -r abc.txt

  • chmod 777 文件名 //修改文件权限 7读写执行 111 二进制 读4 写2 执行1


数据库

1 adb shell
2 cd data
3 cd data
4 cd com.android.providers.contacts
5 cd databases
6 sqlite3 contacts2.db
7 .tables
8 select * from contact;







Eclipse


Eclipse快捷键

  • Alt+/ – 列出值列表
  • Ctrl+Shift+F – 格式化文件(排列好)
  • F3 – 跳到声明或定义的地方
  • Alt + 左键 (<-) – 后退光标位置(不会还原修改,可以打开之前关闭的文件)
  • Ctrl + Q – 跳到最后一次的编辑处
  • Ctrl + / – 注释 //
调试快捷键
  • F5 单步执行程序,遇到方法时进入;
  • F6 单步执行程序,遇到方法时跳过;
  • F7 单步执行程序,从当前方法跳出;
  • F8 直接执行程序。遇到断点时暂停;

项目文件目录

  • src – 界面原代码
  • gen – 自动生成的代码文件 & 控件资源的 ID
  • Android 版本号 – 开发依赖SDK的jar包
    • assets – 打包的一些资源(直接保存进apk里,直接调用,,比如一些MP3…)
  • bin – 自动生成的编译临时文件(编译后的文件 - .class -> .dex -> .apk)
  • libs – 向下支持的jar包(安卓各版本支持的jar包)
  • res – 项目资源文件
    • drawable – 应用程序的图片
    • layout – 应用程序的布局
    • menu – 应用程序的菜单
    • values – 应用程序的字符串
    • AndroidManifest.xml – 非常重要的配置文件,用于指定应用程序的包名、图标、名称、权限等…
    • project.properties – 应用程序编译的版本



更新SDK

Android SDK Manager -> Tools -> Options…
* HTTP Proxy Server :: mirrors.neusoft.edu.cn
* HTTP Proxy Port :: 80
* Force http://… :: 选中







按钮事件监听器的四种方法


1. 在界面中按钮控件属性加:

android:onClick = "Ckcck"
public void Ckcck(View v) {
            if (v.getId() == R.id.btn1 ) Toast.makeText(this,"单击按钮1", Toast.LENGTH_LONG).show();
            else if (v.getId() == R.id.btn2) Toast.makeText(this,"单击按钮2",Toast.LENGTH_LONG).show();
            else Toast.makeText(this,"未定义",Toast.LENGTH_LONG).show();
}

2. 内部类

Button btn1 = (Button) findViewById(R.id.btn1);
btn1.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View v) {
        Toast.makeText(MainActivity.this, "MainActivity.btnMsg click", Toast.LENGTH_LONG).show();
   }
});

3. 重写类 (重写按钮事件监听器类)

    Button btn1 = (Button) findViewById(R.id.btn1);
    MyOnClickListener myOnClickListener = new MyOnClickListener();
    btn1.setOnClickListener(myOnClickListener);
    class MyOnClickListener implements OnClickListener {
        public void onClick(View v) {
            Toast.makeText(MainActivity.this, "click", Toast.LENGTH_LONG).show();
    }
    }

4. 继承类

    修改Activity:public class MainActivity extends Activity implements OnClickListener  //接口
    Button btn1 = (Button) findViewById(R.id.btn1);
    btn1.setOnClickListener(this);
    @Override
    public void onClick(View v) {
        if (v.getId() == R.id.btn1 ) Toast.makeText(this,"单击按钮1", Toast.LENGTH_LONG).show();
        else if (v.getId() == R.id.btn2) Toast.makeText(this,"单击按钮2",Toast.LENGTH_LONG).show();
    }




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值