1
在接下來的頁面,我瀏覽了Android的源代碼,BluetoothHeadset對象: http://androidxref.com/4.2.2_r1/xref/frameworks/base/core/java/android/bluetooth/BluetoothHeadset.javaBluetoothHeadset - 無法訪問公共方法
現在得到BluetoothHeadset對象後,我的代碼,我無法訪問的方法:
public void phoneStateChanged(args...)
有誰知道爲什麼它不可訪問?我嘗試使用反射,但沒有效果...
我的代碼:
protected BluetoothProfile.ServiceListener headsetProfileListener = new BluetoothProfile.ServiceListener()
{
@Override
public void onServiceConnected(int profile, BluetoothProfile proxy)
{
// mBluetoothHeadset is just a head set profile,
// it does not represent a head set device.
bluetoothHeadset = (BluetoothHeadset) proxy;
bluetoothHeadset.phoneStateChanged(...); //this method doesnt get autocompleted or recognised
}
};
編輯:我知道這個方法是不是在Android文檔中提到,但它可能是在源代碼中,也許是做私人的,也是我在何處運行函數聲明爲一個氰ROM ...
這是一個應用程序來嘗試與周圍的藍牙和發送通知...
而且我是新來使用反射,所以也許問題在於:
bluetoothHeadset.getClass().getDeclaredMethod("phoneStateChanged", null);
我編輯了我原來的帖子,我知道它不是100%支持,但我試圖用它來試驗... – Ferdau