diff --git a/app/src/main/java/com/gh/common/util/MessageShareUtils.java b/app/src/main/java/com/gh/common/util/MessageShareUtils.java index 671edb3457..424f841b72 100644 --- a/app/src/main/java/com/gh/common/util/MessageShareUtils.java +++ b/app/src/main/java/com/gh/common/util/MessageShareUtils.java @@ -11,9 +11,11 @@ import android.graphics.Matrix; import android.net.Uri; import android.os.Bundle; import android.os.Environment; + import androidx.core.content.ContextCompat; import androidx.recyclerview.widget.GridLayoutManager; import androidx.recyclerview.widget.RecyclerView; + import android.view.Gravity; import android.view.KeyEvent; import android.view.View; @@ -27,12 +29,14 @@ import android.widget.TextView; import com.gh.common.constant.Config; import com.gh.gamecenter.R; import com.lightgame.utils.Utils; +import com.tencent.connect.auth.QQToken; import com.tencent.connect.share.QQShare; import com.tencent.mm.opensdk.modelmsg.SendMessageToWX; import com.tencent.mm.opensdk.modelmsg.WXImageObject; import com.tencent.mm.opensdk.modelmsg.WXMediaMessage; import com.tencent.mm.opensdk.openapi.IWXAPI; import com.tencent.mm.opensdk.openapi.WXAPIFactory; +import com.tencent.open.TDialog; import com.tencent.tauth.IUiListener; import com.tencent.tauth.Tencent; import com.tencent.tauth.UiError; @@ -79,7 +83,16 @@ public class MessageShareUtils { @Override public void onError(UiError uiError) { - Utils.toast(mContext, "分享失败!请检查是否已安装QQ"); + // 单分享图片不支持显示未安装弹窗,手动调出 + if (!ShareUtils.isQQClientAvailable(mActivity.getApplication())) { + new TDialog(mActivity, + "", + "http://openmobile.qq.com/oauth2.0/m_jump_by_version", + null, + new QQToken("")).show(); + } else { + Utils.toast(mContext, "分享失败"); + } } @Override @@ -110,21 +123,6 @@ public class MessageShareUtils { return instance; } - //检查是否安装手机QQ - public static boolean isQQClientAvailable(Context context) { - final PackageManager packageManager = context.getPackageManager(); - List pinfo = packageManager.getInstalledPackages(0); - if (pinfo != null) { - for (int i = 0; i < pinfo.size(); i++) { - String pn = pinfo.get(i).packageName; - if ("com.tencent.mobileqq".equals(pn)) { - return true; - } - } - } - return false; - } - public IWXAPI getIWXAPI() { return mIWXAPI; } @@ -260,7 +258,7 @@ public class MessageShareUtils { //官方分享 WXImageObject imgObj = new WXImageObject(); - imgObj.setImagePath(mContext.getExternalCacheDir().getPath() + "/ShareImg/" + picName); + imgObj.setImagePath(mContext.getExternalCacheDir().getPath() + "/ShareImg/" + picName); WXMediaMessage msg = new WXMediaMessage(); msg.mediaObject = imgObj; diff --git a/app/src/main/java/com/gh/gamecenter/ShareCardActivity.java b/app/src/main/java/com/gh/gamecenter/ShareCardActivity.java index 849b0f6ce3..2c134dca68 100644 --- a/app/src/main/java/com/gh/gamecenter/ShareCardActivity.java +++ b/app/src/main/java/com/gh/gamecenter/ShareCardActivity.java @@ -88,7 +88,6 @@ public class ShareCardActivity extends BaseActivity { picName = "shareImg.jpg"; setNavigationTitle(getString(R.string.title_share_card)); - ((TextView) findViewById(R.id.normal_title)).setTextColor(Color.WHITE); //修改沉浸栏以及ActionBar 颜色 mActionbar.setBackgroundColor(ContextCompat.getColor(getApplicationContext(), android.R.color.black)); diff --git a/app/src/main/java/com/gh/gamecenter/ShareCardPicActivity.java b/app/src/main/java/com/gh/gamecenter/ShareCardPicActivity.java index 6a7fd3d93e..b7cb1ad8c1 100644 --- a/app/src/main/java/com/gh/gamecenter/ShareCardPicActivity.java +++ b/app/src/main/java/com/gh/gamecenter/ShareCardPicActivity.java @@ -136,7 +136,6 @@ public class ShareCardPicActivity extends BaseActivity { currentImgPosition = 0; setNavigationTitle(getString(R.string.title_share_card_pic)); - ((TextView) findViewById(R.id.normal_title)).setTextColor(Color.WHITE); shareArrImg = new Vector<>(); if (arrImg != null) shareArrImg.addAll(arrImg); diff --git a/libraries/QQShare/libs/open_sdk_r5923_lite.jar b/libraries/QQShare/libs/open_sdk_r5923_lite.jar deleted file mode 100644 index c0053a4e76..0000000000 Binary files a/libraries/QQShare/libs/open_sdk_r5923_lite.jar and /dev/null differ diff --git a/libraries/QQShare/libs/open_sdk_r6019_lite.jar b/libraries/QQShare/libs/open_sdk_r6019_lite.jar new file mode 100644 index 0000000000..7950bea5ea Binary files /dev/null and b/libraries/QQShare/libs/open_sdk_r6019_lite.jar differ