Я могу отправить данные из первого действия, но повторение той же процедуры для второго действия для отправки данных на устройство ble не увенчалось успехом. Как я могу отправить данные из второго действия?
Как я могу отправить данные на устройство ble из второго или третьего действия той же программы
comment
вы хотите отправить данные из второго действия в первое или из второго в третье действие?
- person Anjali   schedule 17.11.2015
comment
Я хочу отправить данные на устройство ble
- person sitara   schedule 18.11.2015
comment
Я объявляю функции Bluetooth в первом действии. Я сделал то же самое во втором действии, чтобы отправить данные на устройство ble со второй страницы моего приложения, как это делает первая страница. Но это не сработало. Только с первой страницы данные шлют на бле.
- person sitara   schedule 18.11.2015
Ответы (2)
используйте это, чтобы сохранить
Intent intent = new Intent(FirstScreen.this, SecondScreen.class)
intent .putExtra(strName, keyIdentifer );
используйте это, чтобы получить
String newString;
if (savedInstanceState == null) {
Bundle extras = getIntent().getExtras();
if(extras == null) {
newString= null;
} else {
newString= extras.getString("STRING_I_NEED");
}
} else {
newString= (String) savedInstanceState.getSerializable("STRING_I_NEED");
}
person
Kastriot Dreshaj
schedule
17.11.2015
Если вы просто хотите отправить данные следующему действию, используйте Intentintent = new Intent(FirstActivity.this, SecondActivity.class)intent.putExtra("id_for_value", value); startActivity(намерение);
И восстановить его с помощью
value= getIntent().getExtras().getString("id_for_value");//if it is a string
ИЛИ
Если вы хотите отправить данные из второго действия обратно в предыдущее, вы должны использовать начальное действие для результатов.
Intent intent=new Intent(MainActivity.this,SecondActivity.class);
startActivityForResult(intent, 2)//where 2 is the request code
finish();
Снова в FirstActivity переопределите это
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
super.onActivityResult(requestCode, resultCode, data);
// check if the request code is same as what is passed here it is 2
if(requestCode==2)
{
String result=data.getStringExtra("ResultId");
}
}
И в вашей предыдущей активности вы передаете такие данные
Intent intent=new Intent();
intent.putExtra("ResultId",message);
setResult(2,intent);
finish();
person
Collins Abitekaniza
schedule
17.11.2015