簡體   English   中英

使用SharedPreferences在兩個應用之間共享數據

[英]Share data between two app using SharedPreferences

我在兩個應用程序之間共享數據,這是我從應用程序A中的共享pref獲取數據的代碼

    try {
        final Context mContext = createPackageContext("com.example.demo", Context.MODE_PRIVATE);
        final String val = mContext.getSharedPreferences("pref_name",Context.MODE_PRIVATE).getString(MY_KEY,"");
        Log.e("sharedtest",val);
        finish();
    } catch (Exception e) {
        e.printStackTrace();
    }

這段代碼在onCreate()方法中,我在任何地方都沒有任何代碼。 我的問題是,如果我在應用程序B中保存了一些值,而不是啟動我的應用程序A ,在檢索到我的活動正在完成的數據(我只有一個活動)之后,第一次正確檢索保存的數據,如果我啟動我的啟動器圖標並啟動我的應用程序A ,沒有更新的數據(它是相同的),從應用程序B更改。

另外,如果我從系統應用程序設置中刪除我的應用程序並像第一次啟動更新數據一樣啟動它,每次數據更改都需要我的應用程序從設置中刪除,我該如何解決? 我錯過了什么?

我找到了解決方案,這可能是一個技巧,但它適用於我,在我的應用程序A完成其工作后,我正在調用系統退出方法。

 System.exit(1); 

它讓應用程序“A”完全退出並完成工作

之后,我在我的偏好中獲得了最新的更新數據

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM