V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
chenyu0532
V2EX  ›  程序员

关于 android 微信登录的问题,我已快疯!

  •  
  •   chenyu0532 · 2018-02-23 18:08:46 +08:00 · 2626 次点击
    这是一个创建于 2225 天前的主题,其中的信息可能已经有所发展或是发生改变。
    是 cocos2d lua 的方面,用的工具是 eclipse,还有什么需要的信息请留言。。。
    避免大佬们没有耐心看到最后,所以写到这:红包感谢,请留下您的支付宝或微信账号。
    1.lua 中点击微信登录按钮调下面的函数
    static public void wxLogin(final String text)
    {
    instance.runOnUiThread(new Runnable() {
    @Override
    public void run() {
    // TODO Auto-generated method stub
    if (wxapi.isWXAppInstalled()) {
    SendAuth.Req req = new SendAuth.Req();
    req.scope = "snsapi_userinfo";
    req.state = "wechat_qdwanhua";
    boolean a = wxapi.sendReq(req);
    System.out.println("aaaaa ===" + a); //返回了 true
    }
    }
    });
    }
    2. 在返回的 activity 中实现了下面的函数
    public class WXEntryActivity extends Activity implements IWXAPIEventHandler{
    private IWXAPI wxapi;
    @Override
    public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    wxapi = WXAPIFactory.createWXAPI(this, "wxa1d410125e441d3a", false);
    //wxapi.registerApp("wxa1d410125e441d3a");
    wxapi.handleIntent(getIntent(), this);
    }
    @Override
    public void onReq(BaseReq arg0) {
    // TODO Auto-generated method stub
    System.out.println("------<>--------");
    }
    @Override
    public void onResp(BaseResp resp) {
    // TODO Auto-generated method stub
    System.out.println("resp.errCode ==== " + resp.errCode); //这个值是 0,正确
    switch (resp.errCode) {
    case BaseResp.ErrCode.ERR_AUTH_DENIED:
    case BaseResp.ErrCode.ERR_USER_CANCEL:
    System.out.println("cancel");
    break;
    case BaseResp.ErrCode.ERR_OK:
    switch (resp.getType()) {
    case 1:
    String token = ((SendAuth.Resp) resp).token;
    System.out.println("wxtoken=" + token); //输出了 token
    //WXLoginUtils().getWXLoginResult(code, this);
    break;
    }
    break;
    }
    finish();
    }
    @Override
    protected void onNewIntent(Intent intent) {
    System.out.println("onNewIntent");
    super.onNewIntent(intent);
    setIntent(intent);
    wxapi.handleIntent(getIntent(), this);
    }
    但是拉不起授权页,我查看了微信的授权管理,并没有当前游戏的授权
    3. AppActivity.Manifest 里
    <activity android:name = ".wxapi.WXEntryActivity"
    android:label = "@string/app_name"
    android:exported = "true"
    android:launchMode="singleTop"
    android:theme="@android:style/Theme.Translucent"/>
    4. eclipse 中 android->build 其 custom debug keystore 中的文件是自己生成的 MD5 是
    5E:F3:1C:37:36:DB:4A:5C:1A:C8:D2:10:92:1D:A9:64

    微信后台的是
    应用签名:5ef31c3736db4a5c1ac8d210921da964
    包名:com.wanhua.games.quickcroods_triple
    5. 由于用的是 eclipse(引擎版本比较老,就没用 as),所以 jar 文件是:libammsdk.jar
    实在不知道哪里错了导致不出授权页,恳请大佬帮忙。
    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3732 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 00:14 · PVG 08:14 · LAX 17:14 · JFK 20:14
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.