#Android項目的目錄結(jié)構(gòu)
*Activity:應用被打開時顯示的界面
*src:項目代碼
*R.java:項目中所有資源文件的資源id
*Android.jar:Android的jar包,導入此包方可使用Android的api
*libs:導入第三方jar包
*assets:存放資源文件,比方說mp3、視頻文件
*bin:存放編譯打包后的文件
*res:存放資源文件,存放在此文件夾下的所有資源文件都會生成資源id
*drawable:存放圖片資源
*layout:存放布局文件,把布局文件通過資源id指定給activity,界面就會顯示出該布局文件定義的布局
*menu:定義菜單的樣式
*Strings.xml:存放字符串資源,每個資源都會有一個資源id
###Android的配置文件(清單文件)
*指定應用的包名
package="com.itheima.helloworld"
* data/data/com.itheima.helloworld(上面代碼指定的包名)
* 應用生成的文件都會存放在此路徑下
*Android的四大組件在使用前全部需要在清單文件中配置
*的配置對整個應用生效
*的配置對該activity生效
---
#DDMS
*Dalvik debug monitor service
*Dalvik調(diào)試監(jiān)控服務
---
#常用的adb指令
###Android debug bridge:安卓調(diào)試橋
*adb start-server:啟動adb進程
*adb kill-server:殺死adb進程
*adb devices:查看當前與開發(fā)環(huán)境連接的設備,此命令也可以啟動adb進程
*adb install XXX.apk:往模擬器安裝apk
*adb uninstall 包名:刪除模擬器中的應用
*adb shell:進入linux命令行
*ps:查看運行進程
*ls:查看當前目錄下的文件結(jié)構(gòu)
*netstat -ano:查看占用端口的進程
---------------
#電話撥號器
>功能:用戶輸入一個號碼,點擊撥打按鈕,啟動系統(tǒng)打電話的應用把號碼撥打出去
###1. 定義布局
1.組件必須設置寬高,否則不能通過編譯
android:layout_width="wrap_content"
android:layout_height="wrap_content"
2.如果要在java代碼中操作某個組件,則組件需要設置id,這樣才能在代碼中通過id拿到這個組件
android:id="@+id/et_phone"
###2. 給按鈕設置點擊偵聽
1.給按鈕設置偵聽
//通過id拿到按鈕對象
Button bt_call = (Button) findViewById(R.id.bt_call);
//給按鈕設置點擊
bt_call.setOnClickListener(new MyListener());
###3. 得到用戶輸入的號碼
//得到用戶輸入的號碼,先拿到輸入框組件
EditText et_phone = (EditText) findViewById(R.id.et_phone);
String phone = et_phone.getText().toString();
###4. 把號碼打出去
1.Android系統(tǒng)中基于動作機制,來調(diào)用系統(tǒng)的應用,你告訴系統(tǒng)你想做什么動作,系統(tǒng)就會把能做這個動作的應用給你,如果沒有這個應用,會拋異常
2.設置動作,通過意圖告知系統(tǒng)
//把號碼打出去
//先創(chuàng)建一個意圖對象
Intent intent = new Intent();
//設置動作,打電話
intent.setAction(Intent.ACTION_CALL);
intent.setData(Uri.parse("tel:" + phone));
//把意圖告訴系統(tǒng)
startActivity(intent);
3.添加權限
----------
#點擊事件的四種寫法
###第一種
*定義一個MyListener實現(xiàn)onClickListener接口
Button bt1 = (Button) findViewById(R.id.bt1);
bt1.setOnClickListener(new MyListener());
###第二種
*定義一個匿名內(nèi)部類實現(xiàn)onClickListener接口
Button bt2 = (Button) findViewById(R.id.bt2);
bt2.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
System.out.println("第二種");
}
});
###第三種
*讓當前activity實現(xiàn)onClickListener接口
Button bt3 = (Button) findViewById(R.id.bt3);
bt3.setOnClickListener(this);
###第四種
*給Button節(jié)點設置onClick屬性,
android:onClick="click"
*然后在activity中定義跟該屬性值同名的方法
public void click(View v){
System.out.println("第四種");
}
--------
#短信發(fā)送器
> 功能:用戶輸入號碼和短信內(nèi)容,點擊發(fā)送按鈕,調(diào)用短信api把短信發(fā)送給指定號碼
###1. 定義布局
*輸入框的提示
android:hint="請輸入號碼"
###2. 完成點擊事件
*先給Button組件設置onClick屬性
*
onClick="send"
*在Activity中定義此方法
*
public void send(View v){}
###3. 獲取到用戶輸入的號碼和內(nèi)容
EditText et_phone = (EditText) findViewById(R.id.et_phone);
EditText et_content = (EditText) findViewById(R.id.et_content);
String phone = et_phone.getText().toString();
String content = et_content.getText().toString();
###4. 調(diào)用發(fā)送短信的api
//調(diào)用發(fā)送短信的api
SmsManager sm = SmsManager.getDefault();
//發(fā)送短信
sm.sendTextMessage(phone, null, content, null, null);
*添加權限
*如果短信過長,需要拆分
List smss = sm.divideMessage(content);