我創建了兩個共享相同用戶標識(sharedUserId)以及相同進程的Android應用程序。 在第一個應用程序中,在啓動時,我將一個靜態int變量設置爲1(默認值爲0)。 在第二個應用程序中,我從另一個應用程序加載(使用反射)相同的類並讀取靜態int變量。我讀了0.可以在同一個進程中運行的兩個應用程序有不同的STATIC對象值嗎?
由於兩個應用程序運行在相同的過程,我希望他們共享相同的靜態值,不是? 誰能告訴我底下的機制是什麼? (他們使用,也許,不同的apk/dex裝載機,並導致這種行爲?)
你確定他們實際上是在同一個進程中運行嗎? –
你爲什麼要這麼做?嘗試使用反射來訪問另一個應用程序中的靜態變量聽起來似乎是個壞主意。 – Simon
我想在我的兩個應用程序之間交換數據,這似乎比使用內容提供者或使用意圖更好(兩種方法都很好,但它們佔用兩個很多資源,特別是在涉及Bitmap時)。
我不明白爲什麼我的方法不起作用。 – EyalBellisha