Mam aplikację, która musi pobrać JSON z adresu URL za pomocą AsyncTask i onPostExecute() przekazać ten obiekt JSON do następnej aktywności przy użyciu metody putExtra, ale ciągle dostaję błąd, który brzmi "putExtra może być używany tylko do przekazywania ciągów znaków, a nie obiektów"? Jak to naprawić?Jak przekazać obiekt JSON do nowej aktywności
Odpowiedz
Czy to przy przejściu param:
intent.putExtra("json", jsonobj.toString());
A w swojej nowej działalności analizować je tak:
JSONObject obj = new JSONObject(getIntent().getStringExtra("json"));
Należy zdać zaszeregować lub parcelable obiektu poprzez putExtra, jak JSONObject nie jest ani serializowalny ani paralelowy obiekt, więc nie możesz go przekazać za pomocą putExtra.
Musisz więc utworzyć klasę Parcelable lub Serializable z parsowania JSONObject, następnie możesz użyć metody putExtra, aby ją przekazać.
Inną opcją jest przekazanie ciągu JSON z jsonOjbect.
W działalności, w których otrzymujesz dane JSON napisać następujący kod do wysyłania do aktywności TAB
Intent i = new Intent(getApplicationContext(), Another_Activity.class);
i.putExtra("key", jsonObject.toString());
startActivity(i);
dostęp do danych tj obiekt JSON Wpisz następujący kod w zakładce Aktywny
JSONObject jsonObject = new JSONObject(getIntent().getStringExtra("key"));
Toast.makeText(Another_Activity.this, ""+jsonObject.get("Your JSON VALUE"), Toast.LENGTH_SHORT).show();
Twoja WARTOŚĆ JSON jest polem, które jest obecne w danych. np "Business Id" 1 tutaj id firma jest wartość JSON, wymień go na twoje
Czy możesz dodać wyjaśnienia tekstowe do swojego kodu? –
- 1. Jak przekazać obiekt do HttpClient.PostAsync i serializować jako ciało JSON?
- 2. Jak przekazać obiekt Json z ajax do Spring Controller MVC?
- 3. Eclipse - tworzenie nowej aktywności
- 4. Jak przekazać wynik DataTable.Select() do nowej DataTable?
- 5. przekazać obiekt do angularjs szablonu z jadeitu
- 6. Jak przekazać obiekt z D do C++?
- 7. Jak przekazać obiekt do zdarzenia licznika czasu?
- 8. Jak przekazać obiekt jquery do funkcji?
- 9. Jak przekazać obiekt hash do znacznika haml
- 10. Jak przekazać dane json do serii highcharts?
- 11. Jak przekazać obiekt według wartości?
- 12. Czyszczenie zadania i rozpoczęcie nowej aktywności
- 13. Android: Rozpoczęcie nowej aktywności od klasy aplikacji
- 14. Jak powrócić JSON obiekt
- 15. Obiekt JS do łańcucha JSON?
- 16. Jak przekonwertować obiekt do json w Nim
- 17. Widok karty Kliknij kartę Przejdź do nowej aktywności
- 18. Jak przekazywać wartości z jednej aktywności do poprzedniej aktywności?
- 19. Jak przekazać parametr do konstruktora z deserializacją json
- 20. jak poprawnie przekazać obiekt json do serwera kolby przy użyciu jquery ajax
- 21. Czy można przekazać obiekt DataReaders do konstruktorów?
- 22. Dlaczego nie mogę przekazać parametrów do konstruktora aktywności Androida?
- 23. Jak utworzyć obiekt JSON jQuery
- 24. Jak przekazać kontekst do AsyncTask?
- 25. jquery jak deserializować obiekt json
- 26. Jak kryptograficznie mieszać obiekt JSON?
- 27. Czy mogę przekazać obiekt JavaScript do przeglądarki Android WebView?
- 28. Jak przekazać zawinięty obiekt C++ do wywołania zwrotnego JavaScript?
- 29. Jak przekazać obiekt do wywołania zwrotnego JavaScript w V8
- 30. Jak przekazać obiekt Blob z javascript do Androida?
dont zrozumieć, że R.id.param część, tutaj jest kod 'protected void onPostExecute (wynik Object) { \t \t \t Intent startApp = new Intent ("com.example.androidhive.HOME"); \t \t \t StartApp.putExtra (R.id.param, result.toString()); \t \t \t startActivity (startApp); \t \t \t // finish(); \t } ' –
To tylko klucz, możesz tam umieścić wszystko, co chcesz. –
usunąć R.id.param i przekazać dowolny ciąg jako klucz –