我可以在 android 中显示来自 none-UI 服务的 Toast 吗?
Can I show Toast from none-UI Service in android?
我有一个在后台运行的服务。
How can I show Toast text message from Service that does not have UI?
没有Activity,这是none-UI服务。
可能吗?
在你的后台线程中试试这个。
new Handler(Looper.getMainLooper()).post(new Runnable() {
@Override
public void run() {
Toast.makeText(context, "Running background", Toast.LENGTH_SHORT).show();
}
});
你当然可以做到。一个服务就是一个上下文。所以你可以打电话给
Toast.makeText(this, "My Information", Toast.LENGTH_SHORT).show();
我一直在使用应用程序 class 实例从虚拟 classes 中展示它,基本上这意味着您可以在应用程序中的任何地方展示它(包括服务)。
public class DemosApplication extends Application {
private static DemosApplication instance;
private Toast toast;
public static DemosApplication getInstance() {
return instance;
}
@Override
public void onCreate() {
super.onCreate();
if (instance == null) {
instance = this;
}
}
public void showToast(int resID) {
showToast(getString(resID));
}
public void showToast(String text) {
if (toast != null) {
toast.cancel();
}
toast = Toast.makeText(this, text, Toast.LENGTH_SHORT);
toast.show();
}
}
随时随地使用
DemosApplication.getInstance().showToast("Lalalala");
我有一个在后台运行的服务。
How can I show Toast text message from Service that does not have UI?
没有Activity,这是none-UI服务。
可能吗?
在你的后台线程中试试这个。
new Handler(Looper.getMainLooper()).post(new Runnable() {
@Override
public void run() {
Toast.makeText(context, "Running background", Toast.LENGTH_SHORT).show();
}
});
你当然可以做到。一个服务就是一个上下文。所以你可以打电话给
Toast.makeText(this, "My Information", Toast.LENGTH_SHORT).show();
我一直在使用应用程序 class 实例从虚拟 classes 中展示它,基本上这意味着您可以在应用程序中的任何地方展示它(包括服务)。
public class DemosApplication extends Application {
private static DemosApplication instance;
private Toast toast;
public static DemosApplication getInstance() {
return instance;
}
@Override
public void onCreate() {
super.onCreate();
if (instance == null) {
instance = this;
}
}
public void showToast(int resID) {
showToast(getString(resID));
}
public void showToast(String text) {
if (toast != null) {
toast.cancel();
}
toast = Toast.makeText(this, text, Toast.LENGTH_SHORT);
toast.show();
}
}
随时随地使用
DemosApplication.getInstance().showToast("Lalalala");