src:項目源代碼文件夾java
R.java:存放項目中全部資源文件的資源id,永遠不要修改linux
Android.jar:Android的jar包,導入此包方可以使用Android的APIandroid
libs:存放第三方jar包shell
assets:資源文件夾,存放視頻或者音樂等較大的資源文件,沒有資源id,使用IO流讀取api
bin:存放編譯打包後的文件app
res:資源文件夾,在這個文件夾中的全部資源,都會有資源id,讀取時經過資源id就能夠讀取。資源id中不能出現中文ide
drawable:存放圖片資源佈局
layout:佈局文件夾,保存佈局文件,Android中全部佈局文件都是xml文件this
menu:菜單配置文件夾,保存菜單的配置文件,決定菜單的樣式編碼
values
strings:字符串資源文件,用來定義字符串資源的
dimens:長度資源文件,用來定義長度資源
style:樣式和主題資源文件
清單文件中指定應用的包名做爲應用在系統中的惟一識別,好比 package="org.eniac.helloworld" ,則該應用生成的文件都會存放在此路徑下:data/data/org.eniac.helloworld
用versionCode指定應用的版本號
Android的四大組件在使用前所有須要在清單文件中配置
具備如下子標籤的Activity就是入口Activity
<intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter>
系統應用保存路徑:system/app
第三方應用保存路徑:data/app
adb(android debug bridge),即安卓調試橋,用創建開發環境和Android設備之間的鏈接。經常使用的adb指令以下:
adb start-server:啓動adb進程
adb kill-server:殺死adb進程
adb devices:查看當前與開發環境鏈接的設備,此命令也能夠啓動adb進程
adb install XXX.apk:向設備中安裝apk
adb install -s 設備編碼 XXX.apk:向指定設備中安裝apk,設備編碼經過adb devices查看
adb uninstall 應用包名:卸載設備中的應用
adb push 文件路徑/文件名 sdcard/文件名:把電腦上的文件「推」到手機SD卡上
adb pull sdcard/文件名:把手機SD中的文件「拉」到電腦上
adb shell:進入linux命令行
ls:羅列出當前目錄下的全部文件和文件夾
ps:羅列出當前系統運行的全部進程
netstat -ano:查看系統的端口占用狀況
功能:用戶輸入一個號碼,點擊撥打按鈕,啓動系統打電話的應用把號碼撥打出去
1 定義佈局
1.1 組件必須設置寬高,不然不能經過編譯
android:layout_width="wrap_content"
android:layout_height="wrap_content"
1.2 若是要在java代碼中操做某個組件,則組件須要設置id,這樣才能在代碼中經過id拿到這個組件
android:id="@+id/et_phone"
2 給按鈕設置點擊監聽
Button bt_call = (Button) findViewById(R.id.bt_call); // 經過id拿到按鈕對象 bt_call.setOnClickListener(new MyListener()); // 給按鈕設置事件監聽器
3 獲得用戶輸入的號碼
// 先拿到輸入框組件,在調用getText()方法 EditText et_phone = (EditText) findViewById(R.id.et_phone); String phone = et_phone.getText().toString();
4 把號碼打出去
4.1 Android系統基於動做機制,來調用系統的應用。你告訴系統你想作什麼動做,系統就會把能作這個動做的應用給你,若是沒有這個應用,就會拋出異常
4.2 設置動做,經過意圖告知系統
// 先建立一個意圖對象 Intent intent = new Intent(); // 設置動做,打電話 intent.setAction(Intent.ACTION_CALL); intent.setData(Uri.parse("tel:" + phone)); // 把意圖告訴系統 startActivity(intent);
4.3 添加權限
<uses-permission android:name="android.permission.CALL_PHONE"/>
定義一個MyListener類實現onClickListener接口(使用內部類實現事件監聽器)
Button bt1 = (Button) findViewById(R.id.bt1); bt1.setOnClickListener(new MyListener());
定義一個匿名內部類實現onClickListener接口(匿名內部類實現事件監聽器)
Button bt2 = (Button) findViewById(R.id.bt2); bt2.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { System.out.println("第二種"); } });
讓當前Activity實現onClickListener接口(當前activity類做爲事件監聽器)
Button bt3 = (Button) findViewById(R.id.bt3); bt3.setOnClickListener(this);
給Button節點設置onClick屬性
android:onClick="click"
而後在Activity中定義跟該屬性值同名的方法
public void click(View view){ System.out.println("第四種"); }
功能:用戶輸入號碼和短信內容,點擊發送按鈕,調用短信api把短信發送給指定號碼
1 定義佈局
輸入框的提示
android:hint="請輸入號碼"
2 完成點擊事件
2.1 先給Button組件設置onClick屬性
android:onClick="send"
2.2 在Activity中定義此方法
public void send(View v){
}
3. 獲取到用戶輸入的號碼和內容
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. 調用發送短信的api
SmsManager sm = SmsManager.getDefault(); // 調用發送短信的api sm.sendTextMessage(phone, null, content, null, null);// 發送短信
添加權限
<uses-permission android:name="android.permission.SEND_SMS"/>
若是短信過長,須要拆分
List<String> smss = sm.divideMessage(content);