我想一些String
數據發送到在前臺運行我以前開活動,而無需調用通過Intents
我如何發送一些信息到我的前臺活動在android系統
回答
最好的方式做到這一點是通過SharedPreferences
。 SharedPreferences會將您的數據寫入您的應用程序的apk中的鍵/值中的私人文件,即使您關閉設備,該文件也會持續存在。
您可以在onCreate中初始化SharedPreferences
,如下所示: SharedPreferences sharedPreferences = getSharedPreferences(getPackageName(), MODE_PRIVATE)
。
要存儲的值只需撥打: sharedPreferences.edit().putString("myKey", stringValue).commit();
從應用程序的任何地方檢索值,初始化SharedPreferences,然後用下面的代碼: String myData = sharedPreferences.getString("myKey");
讓我知道這是否有助於!
你可以使用一個接口來完成這個「詭計」。我會告訴你一個發送String的例子。
創建的接口,如:
public interface Communicable {
public void transportString(String data);
}
然後你實現這個接口對您活動:
public class MyActivity extends Activity implements Communicable {
//any code
@Override
public void transportString(String data) {
//do whatever what you wants
}
//any code
}
要完成,在新類的構造函數,使用傳染性爲參數並將您的活動傳遞給它:
public class MyClass {
private final Communicable communicable;
public MyClass(Communicable communicable) {
this.communicable = communicable;
}
public void myMethod() {
//any code
communicable.transportString("example");
}
}
您可以做的另一件事是創建一個新類,該類繼承應用程序,並使用它來通過您的應用程序傳輸任何數據。
這是一個多麼可怕的想法......永遠不要把活動的實例傳遞給下一個活動......是的,你可以將它用於活動交流的片段......但不是活動間......甚至通過應用程序類...只需將任何ui交互放入transportString中,並且您處於深度sh * – Selvin
呵呵,我從來沒打算在活動之間使用它,之前我在_Fragment_和_Activity_之間進行通信。但是,這很好的補充答案。謝謝! –
簡單的方法共享偏好。硬盤方式Sqlite或txt文件。
- 1. 我如何發送一些信息到我的前臺活動在android系統
- 2. Android系統OnDestroy我的後臺活動
- 3. 發送到我的活動
- 4. 活動 - 意圖發送信息到MainActivity
- 5. 從IntentService發送信息到活動
- 6. 如何發送notifyDataSetChanged從一個活動到以前的活動
- 7. 收集系統活動信息
- 8. 編程發現Android系統的信息
- 9. Android:我如何在後臺發送短信? (API最小爲21)
- 10. 我如何獲得cardview的信息,我點擊它將其發送到下一個活動
- 11. 如何返回到發送信息的舊活動
- 12. 我如何在android系統
- 13. 我想通過短信發送android系統
- 14. 我如何在PHP中獲取系統統計信息
- 15. 我想從我的活動javaclass在android系統
- 16. 如何在我的Android ListView中選擇一個值並將此信息發送給其他活動?
- 17. 從活動信息發送到服務 - Android電子
- 18. 我想發送listview數據到android中的另一個活動
- 19. 將ListItem中的信息發送到下一個活動
- 20. 在我的啓動器活動運行之前拋出ErrnoException(2)的Android系統
- 21. 我如何發送多個整數到一個新的活動?
- 22. Git將本地系統信息庫推送到本地系統信息庫(Windows)
- 23. 如何實現消息發送系統?
- 24. 如何發送片段信息的活動和在Android中反向
- 25. 如何使用broadcastReceiver onReceive()將我的活動帶到前臺?
- 26. 如何將客戶端操作系統活動用戶詳細信息發送到服務器?
- 27. android - 發送一些數據到打開的活動從廣播
- 28. iOS:將信息發送到未在前臺或後臺運行的程序?
- 29. 如何將信息從localhost發送到我的webapp?
- 30. 我如何從一項活動發送信息,在第二項活動中接收它並將其發送給主要活動?
幼稚的方式:將它保存在某個地方(FX:SP),然後將其加載到onResume ... – Selvin
保存它在我不保存在我的外部或內部存儲 – HassanUsman
你不保存(SP代表SharedPreferences),你不要使用意圖...然後這是不可能的...(旁邊,它沒有任何敏感 - 前期活動可能或可能不會仍然「活着」) – Selvin