您好,我正在尝试使用GCM
Android应用程序中需要检查是否已Google Play Service
安装使用程序的应用程序。为此,我已经编写了代码,但是当用户未Google Play Service
安装时,我不怎么处理这种情况。
有没有内置的方式来提示用户安装Google Play Service
并将其重定向到Play商店进行安装。
/**
* Check the device to make sure it has the Google Play Services APK. If
* it doesn't, display a dialog that allows users to download the APK from
* the Google Play Store or enable it in the device's system settings.
*/
public static boolean checkPlayServices(Context mContext) {
int resultCode = GooglePlayServicesUtil.isGooglePlayServicesAvailable(mContext);
if (resultCode != ConnectionResult.SUCCESS) {
if (GooglePlayServicesUtil.isUserRecoverableError(resultCode)) {
GooglePlayServicesUtil.getErrorDialog(resultCode, (Activity)mContext,Constants.PLAY_SERVICES_RESOLUTION_REQUEST).show();
}
return false;
}
return true;
}
//在这里检查设备是否已安装Google Play服务//如果已安装,则向GCM注册设备//否则重定向用户到Play商店进行安装。
if(Utils.checkPlayServices(getActivity())) {
new RegisterGCMDeviceAsynTask(new TaskCompleteListener() {
@Override
public void onTaskCompleted(String result) {
new TeemWurkAsyncTask(new TaskCompleteListener() {
@Override
public void onTaskCompleted(String result) {
Logger.d(TAG, result);
}
}, Constants.LOGIN_API_CALL).execute("");
}
}).execute();
} else {
// display the dialog that device do not have Google Play Service installed.
}
像这样的东西:
if(!isGooglePlayServicesAvailable()) {
GooglePlayServicesUtil.getErrorDialog(9999, this, RQS_GooglePlayServices).show();
}
9999是在中使用的请求代码(随机整数)onActivityResult()
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句