Toast未在android中显示

Toast未在android中显示,android,Android,我是android新手。我想把烤面包放在中间。当没有安装Google Play服务时,我想重定向到Google Play服务并显示Toast @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); this.requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R

我是android新手。我想把烤面包放在中间。当没有安装Google Play服务时,我想重定向到Google Play服务并显示Toast

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    this.requestWindowFeature(Window.FEATURE_NO_TITLE);
    setContentView(R.layout.map_layout);

    context = this;

    int resultCode = GooglePlayServicesUtil.isGooglePlayServicesAvailable(this);
    if(resultCode != ConnectionResult.SUCCESS) {
        Toast toast = Toast.makeText(context, getString(R.string.install_google_play_service), Toast.LENGTH_LONG);
        toast.setGravity(Gravity.CENTER, 0, 0);
        toast.show();
        context.startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=com.google.android.gms")).setFlags(Intent.FLAG_ACTIVITY_NEW_TASK));
    }

从toast下面的
runOnUiThread()
中,我假设这是在另一个线程上运行的。祝酒是UI的一部分,所以它需要在UI线程上运行


只需将所有的
Toast
代码移动到UI线程中,它就会正常工作。

从Toast下面的
runOnUiThread()
中,我假设这是在不同的线程上运行的。祝酒是UI的一部分,所以它需要在UI线程上运行

只需将所有的
Toast
代码移到UI线程中,它就可以正常工作。

这对我来说很有效

我把那面国旗从墙上移开了

context.startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=com.google.android.gms")));
这对我有用

我把那面国旗从墙上移开了

context.startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=com.google.android.gms")));

不,仍然没有工作..我移动到runOnUiThread()中,我看不出有任何理由不显示更新的代码。您确定
resultCode!=连接结果。成功
?您可能需要记录它或使用调试器逐步完成。是。它将我重定向到Google Play服务,但没有祝酒词。我正在直接运行应用程序而不是调试我想在应用程序设置中启用通知。它可能已禁用,但仍然不起作用..我移动到runOnUiThread()中,我看不出有任何理由不在更新的代码中显示它。您确定
resultCode!=连接结果。成功
?您可能需要记录它或使用调试器逐步完成。是。它将我重定向到Google Play服务,但没有祝酒词。我正在直接运行应用程序而不是调试我认为在应用程序设置中启用通知。它可能是禁用
runOnUiThread
将在不同的时间运行给定的代码thread@Shushant用代码更新的问题
runOnUiThread
将以不同的方式运行给定的代码thread@Shushant使用codeIt更新了问题调用的最佳实践另一个应用程序使用flag_ACTIVITY_NEW_任务,这样,如果用户在Play Store上时离开你的应用程序,并在一段很长的时间后再次回来,他不会直接进入Play Store,这将是你任务堆栈中的活动。您可以在调用startActivity之前创建一个意图,并在调用中提供相同的意图。最佳做法是使用flag flag_ACTIVITY_NEW_任务调用另一个应用程序,这样,如果用户在Play Store上时离开了您的应用程序,并在很长一段时间后再次回来,他不会直接进入游戏商店,这将是任务堆栈中的活动。您可以在调用startActivity之前创建意图,并在调用中提供相同的意图。