//首先按照Umeng中配置
注意点:
1.复制Debug文件到App下
2.复制三个Values文件到App-values下
MyApp:
public class MyApp extends Application {
//QQ { PlatformConfig.setQQZone("100424468", "c7394704798a158208a74ab60104f0ba"); } @Override public void onCreate() { super.onCreate(); initJpush(); initumeng(); initImg(); }
//返回QQ头像时调用 private void initImg() { DisplayImageOptions options = new DisplayImageOptions.Builder().build(); ImageLoaderConfiguration configuration = new ImageLoaderConfiguration.Builder(this).defaultDisplayImageOptions(options).build(); ImageLoader.getInstance().init(configuration); } private void initumeng() { UMShareAPI.get(this); }
//Fragment:
private void initView() { mxiaoxi = view.findViewById(R.id.xiaoxi); micon = view.findViewById(R.id.qq_icon); mname = view.findViewById(R.id.qq_name); mqq = view.findViewById(R.id.ll_qq); mqq.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { UMShareAPI.get(getActivity()).getPlatformInfo(getActivity(), SHARE_MEDIA.QQ,umAuthListener); } }); } UMAuthListener umAuthListener = new UMAuthListener() { @Override public void onStart(SHARE_MEDIA share_media) { } @Override public void onComplete(SHARE_MEDIA share_media, int i, Map<String, String> map) { System.out.println("uid========"+map.get("uid")); System.out.println("name========"+map.get("name")); System.out.println("iconurl========"+map.get("iconurl"));//设置QQ头像 ImageLoader.getInstance().displayImage(map.get("iconurl"),micon);//设置QQ名字 mname.setText(map.get("name")); } @Override public void onError(SHARE_MEDIA share_media, int i, Throwable throwable) { } @Override public void onCancel(SHARE_MEDIA share_media, int i) { } }; @Override public void onDestroy() { super.onDestroy(); }
//最后在登录所在的Activity里复写onActivityResult方法,注意不可在fragment中实现, // 如果在fragment中调用登录,在fragment依赖的Activity中实现,如果不实现onActivityResult方法,会导致登录或回调无法正常进行 @Override public void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); UMShareAPI.get(this).onActivityResult(requestCode ,resultCode , data); }