編輯:關於Android編程
一. 什麼是藍牙(Bluetooth)?
1.1 BuleTooth是目前使用最廣泛的無線通信協議
1.2 主要針對短距離設備通訊(10m)
1.3 常用於連接耳機,鼠標和移動通訊設備等.
二. 與藍牙相關的API
2.1 BluetoothAdapter:
代表了本地的藍牙適配器
2.2 BluetoothDevice
代表了一個遠程的Bluetooth設備
三. 掃描已經配對的藍牙設備(1)
注:必須部署在真實手機上,模擬器無法實現
首先需要在AndroidManifest.xml 聲明藍牙權限
<user-permission android:name="android.permission.BLUETOOTH" />
配對藍牙需要手動操作:
1. 打開設置--> 無線網絡 --> 藍牙 勾選開啟
2. 打開藍牙設置 掃描周圍已經開啟的藍牙設備(可以與自己的筆記本電腦進行配對),點擊進行配對
電腦上會彈出提示窗口: 添加設備
顯示計算與設備之間的配對碼,要求確認是否配對
手機上也會顯示類似的提示.
四. 掃描已經配對的藍牙設備(2)
4.1 獲得BluetoothAdapter對象
4.2 判斷當前移動設備中是否擁有藍牙
4.3 判斷當前移動設備中藍牙是否已經打開
4.4 得到所有已經配對的藍牙設備對象
實現代碼如下:
MainActivity:
[java]
import java.util.Iterator;
import java.util.Set;
import android.app.Activity;
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothDevice;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class MainActivity extends Activity {
private Button button = null;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
button = (Button)findViewById(R.id.buttonId);
button.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
//獲得BluetoothAdapter對象,該API是android 2.0開始支持的
BluetoothAdapter adapter = BluetoothAdapter.getDefaultAdapter();
//adapter不等於null,說明本機有藍牙設備
if(adapter != null){
System.out.println("本機有藍牙設備!");
//如果藍牙設備未開啟
if(!adapter.isEnabled()){
Intent intent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
//請求開啟藍牙設備
startActivity(intent);
}
//獲得已配對的遠程藍牙設備的集合
Set<BluetoothDevice> devices = adapter.getBondedDevices();
if(devices.size()>0){
for(Iterator<BluetoothDevice> it = devices.iterator();it.hasNext();){
BluetoothDevice device = (BluetoothDevice)it.next();
//打印出遠程藍牙設備的物理地址
System.out.println(device.getAddress());
}
}else{
System.out.println("還沒有已配對的遠程藍牙設備!");
}
}else{
System.out.println("本機沒有藍牙設備!");
}
}
});
}
}
import java.util.Iterator;
import java.util.Set;
import android.app.Activity;
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothDevice;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class MainActivity extends Activity {
private Button button = null;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
button = (Button)findViewById(R.id.buttonId);
button.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
//獲得BluetoothAdapter對象,該API是android 2.0開始支持的
BluetoothAdapter adapter = BluetoothAdapter.getDefaultAdapter();
//adapter不等於null,說明本機有藍牙設備
if(adapter != null){
System.out.println("本機有藍牙設備!");
//如果藍牙設備未開啟
if(!adapter.isEnabled()){
Intent intent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
//請求開啟藍牙設備
startActivity(intent);
}
//獲得已配對的遠程藍牙設備的集合
Set<BluetoothDevice> devices = adapter.getBondedDevices();
if(devices.size()>0){
for(Iterator<BluetoothDevice> it = devices.iterator();it.hasNext();){
BluetoothDevice device = (BluetoothDevice)it.next();
//打印出遠程藍牙設備的物理地址
System.out.println(device.getAddress());
}
}else{
System.out.println("還沒有已配對的遠程藍牙設備!");
}
}else{
System.out.println("本機沒有藍牙設備!");
}
}
});
}
}
Android注解越來越引領潮流,比如 Dagger2, ButterKnife, EventBus3 等,他們都是注解類型,而且他們都有個共同點就是編譯時生成代碼,而不
學習一下人家100日寫100個網頁的做法,我也用100日寫100個完整的Android程序。 這些程序的最基本要求: 1 完整性-每個程序都必須是獨立可運行的 2 不重復
使用“wrap_content”和“match_parent”要確保布局的靈活性並適應各種尺寸的屏幕,您應使用"
我們有時候通過動畫,去把一個視圖包裝的精美一些。讓其增加好感。 android動畫包含視圖動畫和屬性動畫。在這裡對視圖動畫做一下常用到屬性的記錄。從上圖中可以看出 Ani