【腾讯android的SDK】mTencent总是实例化失败,各位大神菜鸟求教!!!
2017-01-02 14:05
337 查看
在腾讯下载的SDK没完全读懂,导致不会用=_=!哎菜鸟没救了么
在运行下面的代码的时候总是提示mTencent类实例化失败(即总是抛出NullPointer异常);
我觉得是Tencent.createInstance(APP_ID,this.getApplicationContext());中的参数有错。但不明白第二个参数这么写对不对,全局Context是这样么?最好能有简单的Demo供参考,腾讯的太乱了。
这个第三方登录的类是项目中的一个单独的Activity,算不算全局Context呢,项目总框架后面有附图
项目框架如下图:
第三方登录界面如下:
在运行下面的代码的时候总是提示mTencent类实例化失败(即总是抛出NullPointer异常);
我觉得是Tencent.createInstance(APP_ID,this.getApplicationContext());中的参数有错。但不明白第二个参数这么写对不对,全局Context是这样么?最好能有简单的Demo供参考,腾讯的太乱了。
这个第三方登录的类是项目中的一个单独的Activity,算不算全局Context呢,项目总框架后面有附图
public class QQSinaLogin extends Activity implements OnClickListener { Button QQloginBtn, SinaloginBtn; public static Tencent mTencent; private static final String APP_ID = "100489529"; private static final String SCOPE = "get_user_info, get_simple_userinfo, add_share";// 权限:读取用户信息并分享信息 protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.qqsinalogin); /* * 引用 Tencent类SDK访问开放OpenAPI, * @param1——APP_ID, * @param2——应用程序全局Context */ mTencent = Tencent.createInstance(APP_ID,this.getApplicationContext()); QQloginBtn = (Button) findViewById(R.id.QQlogin); SinaloginBtn = (Button) findViewById(R.id.Weibologin); QQloginBtn.setOnClickListener(this); } @Override public void onClick(View v) { switch (v.getId()) { case R.id.QQlogin: onClickLogin(); break; } } private void onClickLogin() { if (!mTencent.isSessionValid()) { IUiListener listener = new BaseUiListener() { @Override protected void doComplete(JSONObject values) { // TODO:登录成功的一些处理 } }; mTencent.login(this, SCOPE, listener); } else { mTencent.logout(this); } } private class BaseUiListener implements IUiListener { @Override public void onComplete(JSONObject response) { doComplete(response); } protected void doComplete(JSONObject values) {} @Override public void onError(UiError e) {} @Override public void onCancel() {} } public boolean onKeyDown(int keyCode, KeyEvent event) { // 返回键返回Homepage if (keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_DOWN) { Intent intent = new Intent(QQSinaLogin.this, Homepage.class); startActivity(intent); overridePendingTransition(R.anim.translate_left_enter, R.anim.holding_anima); //设定新的Activity进入和当前Activity退出时的动画。 this.finish(); return true; } return super.onKeyDown(keyCode, event); } }
项目框架如下图:
第三方登录界面如下:
相关文章推荐
- Android App调用SDK 登录第一次总是失败的解决方法
- 为什么Android SDK manager的API有的总是下载失败
- android SDK总是更新失败怎么办
- 为什么Android SDK manager的API有的总是下载失败
- conn = netconn_new(NETCONN_TCP)创建TCP连接总是失败,代码在下面,是做tcp服务器的代码。各位大神给看看什么情况
- ubuntu下eclipse Android ADT中SDK Manager中安装SDK失败的方法
- Android SDK Manager下载和更新失败方法详解
- 请问各位高手,我出现了一个令我头痛的问题:在HibernateUtil类中创建SessionFactory总是失败:
- 解决android sdk manager更新失败问题
- Android2.1以后sdk安装更新失败解决办法
- 解决android sdk manager更新失败问题
- NxCreatePhysicsSDK 总是失败
- Android SDK Manager 加载sdk url失败(fetching refused) 解决办法
- Eclipse Android SDK Manager下载失败解决
- Android SDK Manager 下载SDK失败的解决办法
- Android SDK Manager下载SDK失败解决方法
- android 的sdk在线安装失败问题处理
- 编程菜鸟群哈 欢迎各位菜鸟. 大神 进来交流下
- 解决android sdk manager更新失败问题