1. 程式人生 > >android 學習心得

android 學習心得

2017.07.24
GSM      CDMA   9K/S

EDGES  2.5G 172K/S

3G時代  WCDMA  CDMA2000  TD-SCDMA
   
4G LTE

avd : android虛擬裝置

VGA  480*640

QVGA  240*320

HVGA  320*480

WVAG  480*800

FWVAG  480*854


adb.exe :   android debug bridge   (android  除錯橋)

adb devices  列出所有的連線裝置
reset adb    重啟adb的除錯橋
adb kill-server  殺死除錯橋
adb start-server  開啟除錯橋
netstat -ano  檢視埠號
adb install xxx.apk  安裝一個應用程式
adb uninstall    <包名>
adb -s  裝置名稱
adb pull 將檔案傳入電腦
adb push 將檔案傳入手機
adb shell 來到手機命令執行終端


 

2017.07.25

assets  資產目錄   存放一個檔案的  這些檔案會被打包到應用程式的 apk(安裝包)
bin  編譯後的檔案目錄
gen  自動生成的檔案目錄
project.properties   代表編譯的版本   對應android.jar 的版本


2017.07.29

點選事件的四種方式
一.建立一個內部類定義點選事件(具體程式碼貼在電話撥號器文字中)



二.採用匿名內部類建立定義點選事件,將整段MainActivity程式碼貼在下面:
package com.itheima.dail;

import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.support.v7.app.ActionBarActivity;
import android.text.TextUtils;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;


public class MainActivity extends ActionBarActivity {
    private EditText et_number;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);//載入佈局檔案
        Button bt_dail= (Button) this.findViewById(R.id.bt_dail);//查詢按鈕
        et_number = (EditText) MainActivity.this.findViewById(R.id.et_number);//查詢文字框
        bt_dail.setOnClickListener(new OnClickListener()
        {
            

            @Override
            public void onClick(View v)
            {
                // TODO Auto-generated method stub
                callphone();
            }
            
                
            
        }
                );//給按鈕註冊點選事件
        
            
        
        
    }
   



    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();
        if (id == R.id.action_settings) {
            return true;
        }
        return super.onOptionsItemSelected(item);
    }

    private void callphone() {
        // TODO Auto-generated method stub
        String number =  et_number.getText().toString().trim();//獲取文字框中的號碼;trim()是為了除去空格和字元
        if(TextUtils.isEmpty(number))
        {
            Toast toast = Toast.makeText(MainActivity.this, "您輸入的號碼為空", 0);
            toast.show();
            return ;
        }
        //意圖
        Intent intent = new Intent();
        intent.setAction(intent.ACTION_CALL);
        //url(統一資源定位符)uri(統一資源識別符號)更高階
        intent.setData(Uri.parse("tel:"+number));
        startActivity(intent);
    }
}



三.讓Actvity實現點選事件的介面

  import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;


public class MainActivity extends ActionBarActivity implements OnClickListener {
    private EditText et_number;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);//載入佈局檔案
        Button bt_dail= (Button) this.findViewById(R.id.bt_dail);//查詢按鈕
        et_number = (EditText) MainActivity.this.findViewById(R.id.et_number);//查詢文字框
        /*bt_dail.setOnClickListener(new OnClickListener()
        {
            

            @Override
            public void onClick(View v)
            {
                // TODO Auto-generated method stub
                callphone();
            }
            
                
            
        }
                );//給按鈕註冊點選事件*/
        //
        bt_dail.setOnClickListener(this);
        
            
        
        
    }
   



    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();
        if (id == R.id.action_settings) {
            return true;
        }
        return super.onOptionsItemSelected(item);
    }

    private void callphone() {
        // TODO Auto-generated method stub
        String number =  et_number.getText().toString().trim();//獲取文字框中的號碼;trim()是為了除去空格和字元
        if(TextUtils.isEmpty(number))
        {
            Toast toast = Toast.makeText(MainActivity.this, "您輸入的號碼為空", 0);
            toast.show();
            return ;
        }
        //意圖
        Intent intent = new Intent();
        intent.setAction(intent.ACTION_CALL);
        //url(統一資源定位符)uri(統一資源識別符號)更高階
        intent.setData(Uri.parse("tel:"+number));
        startActivity(intent);
    }



//3.接口裡未實現的方法
    @Override
    public void onClick(View v) {
        switch(v.getId())
        {
        // TODO Auto-generated method stub
        case R.id.bt_dail:
        callphone();break;
        default:
            break;
        }
        
    }
}