观码有感

由于公司业务需要对接Facebook登陆分享,没有想到SDK居然是开源的,大赞!以前也对过国内微信和支付宝的SDK,就没有这种开源的。
一样的这种需要跳转到Facebook客户端或者H5页面的回调是通过Activity的onActivityResult方法,然后我就发现了分享的requestCode是64207,对一个很奇怪的数字,这个code值肯定是在SDK中设定的,我这样想的然后SDK源代码中检索了一下‘64207’,咦,居然没有,那就只能一步一步debug了,最后终于发现Facebook的大牛是怎么设定的这个值的,只能说很艺术!

 public enum RequestCodeOffset {
        Login(0),
        Share(1),
        Message(2),
        Like(3),
        GameRequest(4),
        AppGroupCreate(5),
        AppGroupJoin(6),
        AppInvite(7),
        DeviceShare(8),;

        private final int offset;

        RequestCodeOffset(int offset) {
            this.offset = offset;
        }

        public int toRequestCode() {
            return 0xface + offset;
        }
    }

 

posted on 2017-07-24 17:19  zoup  阅读(125)  评论(0)    收藏  举报