如果需要更新服務,我需要在當前活動中顯示Toast。因此,服務呼叫服務器,如果它是一些更新,我需要不知道他在哪個活動的用戶。我嘗試實現這樣的:在當前服務中顯示吐司
Toast.makeText(ApplicationMemory.getInstance(), "Your order "+progress+"was updated",
Toast.LENGTH_LONG).show();
其中
public class ApplicationMemory extends Application{
static ApplicationMemory instance;
public static ApplicationMemory getInstance(){
return instance;
}
}
,並沒有工作。我也嘗試獲取當前活動名稱與
ActivityManager am = (ActivityManager) ServiceMessages.this.getSystemService(ACTIVITY_SERVICE);
List<ActivityManager.RunningTaskInfo> taskInfo = am.getRunningTasks(1);
ComponentName componentInfo = taskInfo.get(0).topActivity;
componentInfo.getPackageName();
Log.d("topActivity", "CURRENT Activity ::" + componentInfo.getClassName());
但不知道如何從ComponentName中獲取上下文對象。
ComponentName中沒有Context對象。嘗試在Toast.makeText()中使用getApplicationContext()作爲Context。 – DunClickMeBro
試圖做到這一點,但它不顯示 –