PhoneGap中文网

 找回密码
 立即注册
查看: 25002|回复: 5
打印 上一主题 下一主题

关于CordovaPlugin自己写插件调用QQ登录功能

[复制链接]

2

主题

4

帖子

24

积分

新手上路

Rank: 1

积分
24
跳转到指定楼层
楼主
发表于 2015-9-1 16:54:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
安卓已经实现了点击后跳转到QQ登录界面,但是无法获得返回的json信息。
CallbackContext都不会执行到,有人有研究过吗?
腾讯sdk:Android_SDK_V2.9.3
phonegap:phonegap-2.9.0
public class QqLogin extends cordovaPlugin{
    private static Tencent mTencent;
    private Context context;
    private Activity activity;
    private CallbackContext  mCallbackContext = null;
    public void initialize(CordovaInterface cordova, CordovaWebView webView) {  
        super.initialize(cordova, webView);
        activity=this.cordova.getActivity();
        context = this.cordova.getActivity().getApplicationContext();
        mTencent = Tencent.createInstance("我的key", context);
    }
    public boolean execute(String action, JSONArray args,CallbackContext callbackContext) throws JSONException
    {
        mCallbackContext=callbackContext;
        if (action.equals("login")) {
            String message = args.getString(0);
            this.login(message, callbackContext);
            return true;
        }
        return false;
    }
    private void login(String message, CallbackContext callbackContext) {
        this.cordova.getActivity().runOnUiThread(new Runnable() {
            @Override
            public void run() {
                mTencent.login(activity, "all", prizeQueryUnexchangeListener);
            }
        });
    }
    private IUiListener prizeQueryUnexchangeListener = new IUiListener() {
        @Override
        public void onError(UiError e) {
            mCallbackContext.error(0);
        }
        @Override
        public void onCancel() {
            mCallbackContext.error(0);
        }
        @Override
        public void onComplete(Object response) {
            System.out.println("onComplete"+response.toString());
            mCallbackContext.success("123");
        }
    };
    @Override  
    public void onActivityResult(int requestCode, int resultCode, Intent intent) {
        mTencent.onActivityResult(requestCode, resultCode, intent);
        super.onActivityResult(requestCode, resultCode, intent);  
        // 传递返回值 给js方法  
        mCallbackContext.success(1);  
    }
}
后台日志:
09-01 16:52:25.208: E/openSDK_LOG.UIListenerManager(9745): setListener action is null! rquestCode=11101
09-01 16:52:25.218: E/openSDK_LOG.APNUtil(9745): getApn has exception: No permission to write APN settings: Neither user 10324 nor current process has android.permission.WRITE_APN_SETTINGS.
报了这两条错,不懂为什么

回复

使用道具 举报

52

主题

528

帖子

1652

积分

金牌会员

Rank: 6Rank: 6

积分
1652
沙发
发表于 2015-9-1 21:47:26 | 只看该作者
http://bbs.phonegap100.com/thread-1496-1-1.html  这个帖子下面有别人写好的你参考一下
回复 支持 反对

使用道具 举报

2

主题

4

帖子

24

积分

新手上路

Rank: 1

积分
24
板凳
 楼主| 发表于 2015-9-2 16:50:08 | 只看该作者
已经解决了,发现是腾讯官方jar包的问题,我原来用的是最新的v2.9.3的,一直不行,一直报设计监听器为空,结果换了一个别人写好的,放在github上的包就没问题了
回复 支持 反对

使用道具 举报

2

主题

4

帖子

24

积分

新手上路

Rank: 1

积分
24
地板
 楼主| 发表于 2015-9-2 16:50:43 | 只看该作者
测试一把 发表于 2015-9-1 21:47
http://bbs.phonegap100.com/thread-1496-1-1.html  这个帖子下面有别人写好的你参考一下


已经解决了,发现是腾讯官方jar包的问题,我原来用的是最新的v2.9.3的,一直不行,一直报设计监听器为空,结果换了一个别人写好的,放在github上的包就没问题了
回复 支持 反对

使用道具 举报

0

主题

1

帖子

4

积分

新手上路

Rank: 1

积分
4
5#
发表于 2015-9-8 01:09:47 | 只看该作者
我正在学习,一个问题一直困扰,jar包该如何在插件中使用?
回复 支持 反对

使用道具 举报

1

主题

14

帖子

43

积分

新手上路

Rank: 1

积分
43
6#
发表于 2015-9-22 15:36:43 | 只看该作者
zhanghuayan 发表于 2015-9-2 16:50
已经解决了,发现是腾讯官方jar包的问题,我原来用的是最新的v2.9.3的,一直不行,一直报设计监听器为空, ...

求一个写好的可以使用的qq分享插件。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

ionic4视频教程

Archiver|手机版|小黑屋| PhoneGap中文网 ( 京ICP备13027796号-1 )  

GMT+8, 2025-1-6 20:26 , Processed in 0.103241 second(s), 34 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表