6

(2)创立应用,获取使用编号和密钥

手续如下:

  1. 登录facebook.com,在侧面能够旁观有个开发者项,点击管理应用程序。如图:
    图片 1
  2. 创制应用,并添加要发表的平台。填写Package NameDefault Activity Class Name
    图片 2

    注:Package Name为应用程序的包名,与Manifest里面包车型大巴包名对应。
    Default Activity Class
    Name为第3个运转的Activity,要用完整的类名,与申明如下的Activity类名对应。

         <intent-filter>
            <action android:name="android.intent.action.VIEW"/>
            <category android:name="android.intent.category.DEFAULT"/>
            <category android:name="android.intent.category.BROWSABLE"/>
            <data android:scheme="bigdevil"/>
        </intent-filter>  
    

例如:org.cocos2dx.lua.SplashActivity

  1. 生成KeyHash,并配置KeyHash。
    • 下载OpenSSL,并添加到环境变量。
    • 命令行执行:keytool -exportcert -alias androiddebugkey -keystore
      %HOMEPATH%\.android\debug.keystore | openssl sha1 -binary |
      openssl
      base64,注意-keystore前边是签名文件的门路,执行完将来会生成如图:
      图片 3
  2. 将转变的KeyHash(贰14个字符的字符串)配置到FB后台,可添加四个。
  3. 其余配置,如图:
    图片 4
    图片 5
    图片 6

“我一声惊叫后那妇女回了头,小编看看这张脸庞没有眼睛,只是在眼睛的职位有两汪泪水,不停地顺着脸颊淌下来,淌了一地。女子一下子就到了本身前面,冰凉的双手扼住自家的咽喉让作者发不出声,然后她又扯起本人飞到井场上,班长正在那里换着皮带……”

SDK接入(1)之Android Facebook SDK接入

鉴于玩耍已上线,且处于维护阶段,所以有空写写各个SDK接入进程和境遇的题材,也当作一种工作总计。SDK接入主流分为这么几类,登录支付分享推送统计等,达到借‘他山之石’的效果。顺便吐槽下,现在国内是个渠道就弄个所谓的本人的SDK,种种文书档案更新不立刻、文书档案与Sample不对应、Sample测试不全或运行报错、技术协理沟通无人回复等,真是深受其害。

8

(4)FB SDK接入

  1. 配备FB
    id(FB后台获取的应用编号)。打开res/values/strings.xml,添加:

    <string name="facebook_app_id">172633573185136</string>
    
  2. 配置AndroidManifest,添加权限

    <uses-permission android:name="android.permission.INTERNET"/>
    

    在application项下配置:

    <application android:label="@string/app_name">
        <meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/facebook_app_id"/>
    </application>  
    
  3. 起首化FB SDK和激活事件,在Application的onCreate()调用如下代码:

    public void onCreate() {
        super.onCreate();
        FacebookSdk.sdkInitialize(getApplicationContext());
        AppEventsLogger.activateApp(this);
    }
    
  4. 讲FacebookActivity配置到AndroidManifest中,如下:

    <activity
        android:name="com.facebook.FacebookActivity"
        android:configChanges="keyboard|keyboardHidden|screenLayout|screenSize|orientation"
        android:label="@string/app_name"
        android:theme="@android:style/Theme.Translucent.NoTitleBar" />  
    
  5. FB登录分为带推特(TWTR.US)按钮和不带Twitter按钮两种方式。带照片墙按钮须求将FB提供的LoginButton足够到温馨的布局中。而玩耍登录,只必要点击相应的游戏登录按钮再调用FB登录即可。所以下边介绍下,不带脸谱按钮的那种方式。

在MainActivity中的onCreate()中注册登录回调,代码如下:

    callbackManager = CallbackManager.Factory.create();

    LoginManager.getInstance().registerCallback(callbackManager,
           new FacebookCallback<LoginResult>() {
                @Override
                public void onSuccess(LoginResult loginResult) {
                     // App code
                }

                @Override
                public void onCancel() {
                     // App code
                }

                @Override
                public void onError(FacebookException exception) {
                     // App code   
                 }
    });
  1. FB登录,注意登录权限需使用public_profile,并在onActivityResult中处理用户授权,代码如下:

    private static final String PERMISSION = "public_profile";  
    
    LoginManager loginManager = LoginManager.getInstance();
    loginManager.setDefaultAudience(loginManager.getDefaultAudience());
    loginManager.setLoginBehavior(loginManager.getLoginBehavior());
    loginManager.logInWithReadPermissions(AppActivity.context_self, Arrays.asList(PERMISSION));  
    

onActivityResult处理代码:

    public static void onActivityResult(int requestCode, int resultCode, Intent data) {
        if (callbackManager != null) {
            callbackManager.onActivityResult(requestCode, resultCode, data);
        }
    }
  1. 登录结果处理,在FacebookCallback中,代码如下:

    public void onSuccess(LoginResult loginResult) {
        AccessToken accessToken = loginResult.getAccessToken();
        String userId = accessToken.getUserId();
        String token = accessToken.getToken();
        // TODO:拿到userId和token,传给游戏服务器校验
    }
    
    public void onCancel() {
    }
    
    public void onError(FacebookException exception) {
        if (exception instanceof FacebookAuthorizationException) {
            LoginManager.getInstance().logOut();
            // TODO:
        }
    }
    
  2. 运用App伊夫ntsLogger来添加自定义总括事件,登录和付出(分别对应游戏FB登录和发起支付并开发成功时)的言传身教代码如下:

登录事件总计:

    Bundle parameters = new Bundle();
    parameters.putString(AppEventsConstants.EVENT_PARAM_CONTENT_ID, roleId);
    parameters.putInt(AppEventsConstants.EVENT_NAME_ACHIEVED_LEVEL, roleLevel);
    AppEventsLogger logger = AppEventsLogger.newLogger(this, FACEBOOK_AD_ID);
    logger.logEvent("Login", parameters);

付出事件计算:

    AppEventsLogger logger = AppEventsLogger.newLogger(this, FACEBOOK_AD_ID);
    logger.logPurchase(BigDecimal.valueOf(orderInfo.getInt("price")), Currency.getInstance(SdkImp.CURRENCY));  

本人通过窗户看到,楼下的水泥地上围着一群人,人群的正宗旨,2个巾帼以多少个格外怪诞的架势趴在地上,头上边包车型地铁职责洋蓟绿一片,看不清是迸出的鲜血依旧她的长发散落。

(1)接入前准备工作

  1. 需科学上网(FQ,VPN什么的祥和平消除决),注册推特(TWTR.US)(前面统称FB)帐号。
  2. FB
    SDK下载地址为:https://origincache.facebook.com/developers/resources/?id=facebook-android-sdk-current.zip
  3. FB
    SDK接入文档地址为:https://developers.facebook.com/docs/android/getting-started/
  4. FB
    SDK完整源码地址为:https://github.com/facebook/facebook-android-sdk

“跟什么人说话啊?”

FB SDK接入常见错误

  1. 报到权限十分,Facebook(Facebook)Callback的onError中回到脸书AuthorizationException:
    竭泽而渔:一般是FB帐号设置了平安评释,例如登录需要安全码之类的,须求修改FB安全设置。

  2. Invalid key hash错误。如图:
    图片 7
    缓解:须要肯定正式打包的签名文件(.keystore)和生成keyHash时是不是为同一个签名文件。

作者:AlphaGL
出处:http://www.cnblogs.com/alphagl/
版权全体,欢迎保留原来的文章链接举行转发 🙂

许静讲述的时候大概并不曾在意,只是随口说出了那句话,此番被小编再一次问起,她好像一转眼想开很可怕的事情一样,浑身颤抖着斜靠在椅子上,一句话也不说了。

(3)下载FB SDK,并安插参数

FB SDK下载后的公文,形如:facebook-android-sdk-4.8.2.aar。
若使用AndroidStudio作为IDE,则导入该.aar文件。步骤为:

  1. 平昔将facebook-android-sdk-4.8.2.aar复制到工程的libs路径下。如图:
    图片 8
  2. 修改build.gradle,添加如下配置:

       repositories {
           flatDir {
               dirs 'libs'
           }
       }  
    
       compile(name: 'facebook-android-sdk-4.8.2', ext: 'aar')
    

    如图:
    图片 9
    然后,重新Rebuild Project一下,成功则会转变如下:
    图片 10

若选拔Eclipse作为IDE,则需将.aar文件解压。解压完如下图:
图片 11

拷贝assetsresAndroidManifest.xmlclasses.jar,新建Eclipse工程并掩盖对应文件。

“你俩……就那么睡在了九号?”玲子是三号的一个钱打二十六个结工,跟许静私人间的交情不错,经常三个人也是成双入对的。可是自身实际想不通,看上去娇滴滴的三个丫头,竟然有胆略睡在九号计量间。

那一个疑点干扰了小编很久,终归依旧没有解开。

“然后呢?”笔者就算没换过皮带,却也通晓安海这么操作是很是险象环生的。因为是新区,电力网设备很不平静,平常会油但是生闪断意况。为了防止抽油机偷停影响产量,许多抽油机都安装了自运维装置。即使缓解了因为电力闪断引起的偷停,却也致使不可胜数安全事故产生,因而那种装置又在几年后统一拆除了。

本人把许静撵到离门口稍远的交椅上坐着。

理所当然老家的人思考就不通,对于那种婚前产生了关乎而奉子成婚的事体多有诟病,那下更坐实了安海媳妇行为不端的骂名。

“你提前做梦已经见到过?”

忙活完安海,小编熄了病房的灯,1人跑到走廊的长椅上看随笔。作者那两日正在读3个United Kingdom女散文家写的悬疑小说《无人生还》,因为是译文版,猜想译者在举办翻译时参加了有个别情节渲染,因此整篇小说充满了惊悚感觉,看得自身头皮一阵阵酥麻。

安海是我们班长,小编休班离开采油区的这天,正赶上他从老家回来。大家在车站匆匆见了一面,作者只记得她马上脸色很差,甚至没跟自家说话就飞速的走了,没悟出才几天不见就出了事。

本人从没再追问许静,看得出这一天里她受的劫持已经够多了。许静家住得很远,作者操心他中午回家不安全,就在诊所门口的公寓里开了个房间,让他在酒店里好好休息一夜。

自个儿按着队里给的地方找到病房时许静也在。安海的臂膀已经做完了手术,正躺在病床上睡着,倒是许静被作者的推门声吓了一跳,抬头时本人发觉她面如土色。

果真,听着许静继续说道:“其实……今晚安哥被绞断胳膊的动静,小编今晚梦到了!”

“作者说……你下山时师傅就教你这一招啊?下把咱能还是不可能换个地点踢?”

据他们说自个儿不撵她走,许静春风得意了过多,连说“好好好!你要聊什么自身陪你,免费!”

图片 12

“那事真是太意外了……”

“那看得出来你是真挺害怕……”

15

“作者不是见你看得入神怕干扰您呢!你开的那破屋子连个窗帘都未曾,笔者一人躺那恐惧睡不着,就寻思着来找你聊会天。哪晓得你看个破书看得收视返听的,连自身走过来坐坐都没觉察!说!你终归看吗吧?是否你们捻脚捻手偷看的那种书?”

阴影看上去很淡,若有若无地印在几米远的地头上,从姿势来看影子的主人应该是面向着本人和许静,小编能感受到犹如有两道凄厉的眼光望着大家,那种感觉很惊悚。小编不敢乱动,只好把后背尽量贴在许静的随身,她怀里,揣着向阳屯那老人给本人的救命符。

1

许静低头一口一口地夹着饭菜,吃得一点也不快也很认真,过了一会,她突然抬起初望着作者。

自家嘿嘿地乐着说:“不过幸好本人的血多,放出点也没提到!”

“哪是看似……你都呻吟了,那叫二个响!”作者嘿嘿乐着说。

正文已委托第①方维权,转发请联系:<获取授权>

本人在休班的时候接到队长电话,说安海受伤了,让自家代表队里去诊所看护他。

上一篇:鬼话连篇

作者无心境睬她,把书仔细折好放进包里,站出发推开了病房的门。

许静牙关紧咬,脸色发青,然而幸亏呼吸还算平稳,在护师过来从前,她一度协调醒了,手攥着被角望着作者说:“小编刚才,好像又做了个梦魇……”

老人把黄纸符进行,又细致入微地卷成个桶型,划着火柴一把火烧了,在纸灰飘落的时候老头眯着双眼缓缓说道:“大概……最初她没想放过她老公呢?”

“哎!对了!正是作者家地点,在你来以前,那整条椅子都以小编要好的,小编想怎么躺就怎么躺。”

为了幸免双重挨踢,笔者急忙转移话题:“跟自个儿说说呗,班长咋受的伤。”

“没在意,小编意外竟然真产生了,当时吓得魂都没了,根本没空去看闸刀开关。”

“真的?”

下半夜走廊里变得相当的冷,该死的2月天气,怎么会说降温就温度降低?小编和许静挤在长条椅子上竞相靠体温取暖。

“要不……笔者送你回到吧,你看您在那还不便,推延作者睡觉。”

“我怎么推延您安息了?都快把整条椅子给你了!你想睡就睡呗!管自身回不回去!”

世界上,总有个别工作是你笔者都心有余而力不足通晓的,它们指鹿为马,有悖于常理,它们违反科学,诡秘莫测。

9

“你见过何人写情书里面没好话的?”作者当成无语了。

“没有啊!所以笔者才会担心呢,望着她状态就不正规。笔者赶到时他早就放手了旧皮带,正往上套着新的,而且半个身体都靠在皮带轮上,本身却就好像一点都没察觉。”

13

11

本身须臾间转过身,后边什么都并未,唯有昏暗的走道里四只惨白灰的廊灯,一闪一灭地照耀出地上一条长达影子。

“竟然真产生了……是怎么意思?”

10

许静忿忿不平地嚷着,停了一晃,又低声说了一句:“小编不回去,自身一人在旅舍里,小编恐惧!在此间有您陪着……还是可以安心点。”

“嗯!很领会!然后笔者一焦躁就醒了!玲子还在那呼呼睡着……”

安海媳妇怒火攻心之下,孩子没午月就寻了短见。安海没悟出后果甚至如此严重,他痛悔了,一心想把子女能够养大,回来之后跟这一个女孩子建议了分离,何人知女子竟然喝了农药。


自家轻拍了下许静的肩,带他相差病房,来到过道尽头的长椅边。

7

自家一面躲闪她的二指禅,一边咕哝着:“你才有病!糟糕幸亏旅馆里睡觉,跟个鬼似的跑来,还或多或少场地都未曾,诚心要吓死人是不?”

14

“胳膊让抽油机皮带绞断了,具体景况作者不太明了,当时就许静在,然则他跟着救护车送安海去诊所了。单位那边夏检刚刚伊始,我们都走不开,只可以你先在那顶几天,夜班笔者先找人替你。”

笔者抱着小腿坐倒在地上,那回是真疼,疼的充足!那死丫头总喜欢意外市突袭小编,而且每一回都以小腿,连地点都不带换的,偏偏小编还躲不开。

“算了吧你!笔者又不是没看见,就牙印上稍微血丝而已,好像作者放了您多少血似的!”

“别闹!”
看岗位女孩子应该就站在自家的身后,作者以为是许静跟在后面恐吓小编,转身去推他却推了个空,许静从长椅上斜着肉体表露一张脸,神色里带着狐疑。

本身心头有事,因而不要睡意,许静却早已困得迷迷糊糊,整个脑袋像失去了辅助一样,东摇西晃地四次搭在作者肩上。

许静坐在隔壁的椅子上,看来是被自个儿突然的一嗓子吓得够呛,连喊都忘了喊,足足定了好半天,才上来一把掐住自家胳膊。

“吃点吧,依据本身的阅历,人唯有吃饱和穿暖了才不会害怕。”

睡到半夜好像一转眼醒了,头依然疼,作者想起来喝点水,却发现屋里站着个高个子女子,隔着窗户往阀组间里面看。作者吓得大喊大叫,不过玲子好像睡死了平等,笔者叫得那么大声,她一些反响都不曾。这女孩子听见叫声,一下子扭曲头……”

“作者一旦想给旁人写情书还用你支持送?给您的!但是先别看,等今晚再打开!”

“安心?”小编心里苦笑着,却又拿他不能。

许静低着头不出声,可是看他多少发抖的双肩,明显还从未从惊吓中苏醒过来,失神的眼光里还带着惊恐。

12

“然后笔者就用力喊他,他也像一下子醒来了相同,赶紧往外跑,抽油机就在这时候运行了。他纵然躲开了身子,两只胳膊却被卷进了皮带轮,笔者随即着他任什么人被甩出好几米远,胳膊当时就血肉模糊了。作者吓得要死,上去拽他又拽不动,只能跑回来打电话。亏妥帖时正有一辆救护车在紧邻,说是去边上的中间转播站拉3个喝农药的女工人,结果就把小编俩一起拉回来了。”

小编带着她的辞职报告回到队里时,蜚言已经满天飞了。人们都说安海在中间转播站搭上了个有夫之妇,正是跟她受伤同一天喝农药的那多少个女生。本来俩人只是偷鸡摸狗的暗地里不清不楚,何人知后来那女士的男士不知怎么就意识了。

自个儿横坐在长椅上,尽量把腿伸得老长,占住了门口附近的多少个椅子,把许静逼到角落里。

“怎么了?”作者无心地追问一句,许静没有回复,只是如金鱼一样张大了嘴巴,鼻翼急迅地开阖着,就如很努力地想吸气却吸不到,然后就晕过去了。

“对不起……小编一害怕……就想咬东西,越是害怕,咬得越狠……”

是呀!假使早期他没想放过安海,那许静救了安海正是多事,安海媳妇报复许静也就自然了。

许静的梦魇  小编:徐海阳

“嗯!为了迎接检查,前日全队的人在九号组织会战,等忙完天都黑了,班车早走了。队长买了些吃的得到鹅子家,让鹅子妈又炖了只鸡,说是要问长问短大家。作者和玲子没吃酒,吃了些饭后无意回队部,就在总结间一向睡下了。”

妇人离婚过后,开始逼着刚刚新婚5个月的安海娶她,安海被作得不能,回到老家大闹了一场,毁谤她儿媳妇刚结合七个月就临产,孩子来路不明,吵着要离婚。

3

许静抬腿想踢作者,想了想又放下。

可后来许静又给自己讲了要命没讲完的梦。

“当然!那是自己在笔者那计量间值夜班时计算出的经验,百试百灵!”

“是啊!前日实在是太累了,胃疼的决心,眼皮直打架,实在是不想往队部走,结果糊里糊涂就回了计量间。可是新兴安哥也回到了,作者和玲子睡值班室,安哥和其余计量间的多少个男的近乎喝多了,回来后睡在了阀组间。

自身挪了挪肩膀,想让她靠得舒心些,许静一下醒了,坐直身子理了理头发说:“作者好像睡着了……”

转眼间一股寒意窜遍了浑身,小编吓得大喊大叫了一声,灯又亮了,妈的,声音控制灯……

既然如此想害安海,为何要让许静看到?假设想放过安海,为何许静救了安中国人民解放军海军后勤部,她又扭曲想报复?

走道的另一侧突然发生出一声撕心裂肺的呼号,紧接着整个住院部沸腾一样,随处响起杂乱的足音,人们揉着模糊的睡眼从各种病房里探出头来,又随即人流涌向楼下。

在本人讲的时候,老头一向笑着摇头不语,于是小编又追问了一句。

4

“行吗!不回就不回,正还好那陪作者聊聊天,打发慢慢长夜。”

“安哥咋受的伤?”

“你命里火旺金衰,因此会常常碰到些不可捉摸的工作,笔者改不了你的金相,只能让您的火相更旺些,让那个东西只可以干扰你,却近不了你的身!”

小编忽然想起许静的那一句“笔者出人意料竟然真发生了 。”

“什么?”作者当然已经准备好要承受那一记许氏飞脚了,突然没了下文还真有点不适应。

想必,那世界不是有所的业务都会有答案……鬼魂的想法……又有何人能真正懂?

“有人昏倒了,快来!”

许静想了一会,才慢条斯理说道:“他此次从家回来就窘迫,天天阴着个脸魂不守宅的,跟何人也不开口。今晚自小编看她扛了捆皮带去后面包车型客车井,心里怕她出事就在后头随着,什么人知照旧出事了……”

“要死啊你!大上午的威胁小编!有病!”

“干嘛呀你?你家的地点啊?”许静不情愿地向一旁挪了千古,嘴里嘟囔着。

廊灯透过门口照亮了病床前的本地,安海隐在昏天黑地里看不清脸,可是听呼吸声就好像睡得很沉。笔者正想关门出来,突然地面上多个女孩子的影子吓了自小编一跳。

“那口井皮带断了?”

“他没拉掉闸刀开关吗?”

“神秘兮兮的……肯定没好话!”许静一边嘟囔着,一边把信封揣进里侧的兜里。

“你懂什么?作者是疼得心在滴血……”

“没事!自言自语!”笔者火速掩上了房门,透过门上的玻璃,那2个黑影已经不翼而飞了。

“看您如此乖的份上,送你个东西吗!”笔者从兜里掏出个叠得整齐的封皮递给许静。她呼吁接过,奇怪地问小编:“那是怎么样?情书?给本人的?依然想让本人帮你转给哪个人?”

“你怎么?没事吗?第一次见那种血腥的外场,是不是吓坏了?”

“行了,别多想!”小编重新拍了拍她的肩头,打算安慰他几句就让她回去,许静突然一把抓过我的手,张口用力地咬了下来。

本身抱起许静冲进病房里,随手点亮了屋里的灯。

影子忽左忽右地在大家身边徘徊了很久,终于扬弃的偏离,稳步流失在甬道的无尽。

笔者上去一把推开安海,把许静平放在病床上,按响了床头的呼叫键。

“跟你说件事……”

通话器里传来护师懒洋洋的声息:“九号床,什么事?”

2

正看到留声机里幽幽响起那首诡异的童谣时,走廊的灯突然灭了。乌黑中自小编隐隐觉得身边就像有细小的呼吸声音,小编条件反射地抬头,猛地发现1个影子就坐在身边,脑袋大约都挨上了小编的双肩。

“那张符只可以够救你3遍,用完记得还自个儿。”

安海蜷缩在病床上,双臂捂着脸,指缝间全都以泪液。

本人拿着黄纸符去还给向阳屯的老翁,并向她讲了整件事情的通过。

许静说到此处,突然瞪大了双眼看向笔者身后,脸上一下失去了独具血色。

许静拆开了自身的“情书”,发现了个中只是一张画满了意外符文的黄纸。

“好啊!下次你说踢哪!”

“您说……安海媳妇在卫生院里害死了非凡女生,而且只怕是因为孩子的原因又放过了安海,那些小编都能知晓,可他那晚一度纠缠自个儿和许静是为着什么?”

5

笔者买了些饭赶回,推到许静前边。

“小编直接没说……小编那样害怕,还有2个缘故……”

归来病房时安海醒了,作者扶他上了个厕所。只怕是因为麻药劲还没过,作者想喂她吃点东西他摆摆拒绝,然后又迷迷糊糊地睡了千古。

看得出许静的图景上涨了一部分,眼里的惊恐也回涨了累累,取代之的是恶狠狠的怒视。

第3天班长就辞职了,他本正是村民合同制工人,由此离职的步骤卓殊方便人民群众,在病床上打了个报告,托小编交给队里就再没有出现过。

“你看见了安海被皮带轮绞死?”