我已經下載了BLE示例,並且想編輯代碼。從Edittext中獲取文本
我在代碼中添加了一個編輯文本來發送數字,而不是原始代碼中的字符串「Praveen」,但是我的Galaxy S4甚至無法打開應用程序。該應用程序運行良好,沒有改變。
以下是我爲代碼所作的更改。註釋行來自原始代碼,下面的代碼行是我所做的更改。
預先感謝
public static EditText Oe;
//public static String dummyName = "Praveen";
public static String str = Oe.getText().toString();
public void sendAlert(BluetoothDevice device) {
Log.d(TAG, "sendAlert");
byte[] value = null;
byte cat = (byte) callCategory;
byte cnt = (byte) dummyCount;
try {
// String s = dummyName;
String s = str;
value = s.getBytes("UTF-8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
byte[] attVal = new byte[value.length + 2];
attVal[0] = cat;
attVal[1] = cnt;
for (int i = 0; i < value.length; i++)
attVal[i + 2] = value[i];
mNewAlert.setValue(attVal);
mBluetoothGattServer.notifyCharacteristicChanged(device, mNewAlert, false);
}
爲EDITTEXT
<EditText
android:id="@+id/Oe"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="10"
android:text="@string/Oe"/>
的XML我已經在OnCreate
public void onCreate() {
Log.d(TAG, "onCreate() called");
if (mBtAdapter == null) {
mBtAdapter = BluetoothAdapter.getDefaultAdapter();
if (mBtAdapter == null) {
Log.i(TAG, "adapter is null");
return;
}
}
if (mBluetoothGattServer == null) {
Log.i(TAG, "mBluetoothGattServer::null");
Log.i(TAG, "getting proxy::");
BluetoothGattAdapter.getProfileProxy(this, mProfileServiceListener, BluetoothGattAdapter.GATT_SERVER);
}
mSMSMMSObserver = new BluetoothSMSMMSContentObserver();
mCallObserver = new CallContentObserver();
getContentResolver().registerContentObserver(Uri.parse("content://mms-sms"), true, mSMSMMSObserver);
getContentResolver().registerContentObserver(CallLog.Calls.CONTENT_URI, true, mCallObserver);
Oe = (EditText)findViewById(R.id.Oe);
}
Mainactivity部分所限定的EDITTEXT
public void onClick(View v) {
switch (v.getId()) {
case R.id.btn_select:
if (!mBluetoothAdapter.isEnabled()) {
Log.i(TAG, "onClick - BT not enabled yet");
Intent enableIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
startActivityForResult(enableIntent, REQUEST_ENABLE_BT);
case R.id.button_send_alert:
Log.e("MainActivity", "Clicked");
if (mService != null)
mService.sendAlert(mDevice);
「我的Galaxy S4甚至無法打開應用程序」 - 您可以附加相關的logcat和/或控制檯日誌嗎? – 2013-05-03 23:48:48
嗨,愛德華。你到底意味着什麼? – 2013-05-04 00:24:25
^他意味着請顯示您獲得的錯誤行。 – 2013-05-04 00:25:32