上篇补充:先看下流程图
还需要进行箭头标记的步骤
1.成功支付后,需要在将回调的地方,将结果发给服务器,由服务器调用查询订单接口查询,以服务器的结果为准。
2.可购买的商品一般都会有自己的数据表配置,所以把上篇定义的接口做了修改,将金额字段改为商品ID,金额由服务器读取数据表查询(充值金额不能以客户端为准,你懂得)。
3.最后更新商品数量
以下开始今天内容(特别简单)
需要先下载到Sharesdk官网下载Unity示例工程,地址如下
https://github.com/MobClub/New-Unity-For-ShareSDK
1.将上篇用到的微信支付Eclipse项目打开(因为我自己只是用了微信登陆所以只拖入了微信用到的jar包)
以下文件都在Sharesdk的Unity示例工程中有
libs文件夹需要拖入的文件
src文件夹
bin文件夹
2.AndroidMainifest修改如下
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="包名"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="26" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.MANAGE_ACCOUNTS"/>
<uses-permission android:name="android.permission.GET_ACCOUNTS"/>
<uses-permission android:name="android.permission.RECEIVE_SMS" />
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<application
android:name="com.mob.MobApplication"
android:allowBackup="true"
android:icon="@drawable/app_icon"
android:label="@string/app_name">
<meta-data
android:name="Mob-AppKey"
android:value="moba0b0c0d0" />
<meta-data
android:name="Mob-AppSecret"
android:value="5713f0d88511f9f4cf100cade0610a34" />
<activity
android:name="com.flyx.top.MainActivity"
android:label="@string/app_name"
android:configChanges="orientation|screenSize|keyboardHidden"
android:screenOrientation="unspecified">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<meta-data android:name="unityplayer.UnityActivity" android:value="true" />
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<data android:scheme="微信开发平台ID"/>
</intent-filter>
</activity>
<activity
android:name="包名.PayActivity"
android:configChanges="orientation|keyboardHidden|screenSize"
android:screenOrientation="behind"
android:theme="@android:style/Theme.Translucent.NoTitleBar">
<!--android:launchMode="singleTop">-->
</activity>
<activity
android:name="包名.wxapi.WXEntryActivity"
android:theme="@android:style/Theme.Translucent.NoTitleBar"
android:configChanges="keyboardHidden|orientation|screenSize"
android:exported="true" />
<activity
android:name="包名.wxapi.WXPayEntryActivity"
android:exported="true"
android:launchMode="singleTop">
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<data android:scheme="微信开发平台ID"/>
</intent-filter>
</activity>
<receiver
android:name=".AppRegister"
android:exported="false">
<intent-filter>
<action android:name="包名.plugin.openapi.Intent.ACTION_REFRESH_WXAPP" />
</intent-filter>
</receiver>
<activity
android:name=".apshare.ShareEntryActivity"
android:theme="@android:style/Theme.Translucent.NoTitleBar"
android:configChanges="keyboardHidden|orientation|screenSize"
android:exported="true"/>
<meta-data android:name="Mob-AppKey" android:value="自己sharesdk平台的AppKey"/>
<meta-data android:name="Mob-AppSecret" android:value="自己sharessdk平台的AppSecret"/>
</application>
</manifest>
3.导出jar(上篇介绍的还是只导出Src文件夹的内容)
更新Unity中的jar包
更新unity中libs中的文件(注意不要重复导入)
将bin文件夹拖入unity中(Android文件夹下)
4.微信授权登陆流程
//注册授权回调
ssdk.authHandler = OnAuthResultHandler;
ssdk.showUserHandler = OnGetUserInfoResultHandler;
//开始授权
//是否安装了微信
if (!ssdk.IsClientValid(platform))
{
switch (platform)
{
case PlatformType.WeChat:
弹窗提示;
break;
case PlatformType.QQ:
//PromptWindow.box.Show(null, 104u);
break;
default:
break;
}
return;
}
//开始授权登陆
ssdk.Authorize(platform);
//获取微信授权信息
ssdk.GetAuthInfo(PlatformType.WeChat);
//将openID,token 发送给服务器验证是否授权成功
//下篇预告:支付宝支付接入