我是android新手。我想在中心显示Toast。如果没有安装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));
}
答案 0 :(得分:4)
从吐司下面的runOnUiThread()
开始,我假设这是在另一个主题上运行的。 Toasts是UI的一部分,因此需要在UI线程上运行。
只需在UI线程中移动所有Toast
代码,它就可以正常工作。
答案 1 :(得分:0)
这对我有用。
我删除了意图上的标志。
context.startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=com.google.android.gms")));