【问题标题】:facebook android app not set up correctly titaniumfacebook android 应用程序未正确设置钛
【发布时间】:2014-07-04 10:55:55
【问题描述】:

我通过 facebook 开发人员创建了一个应用程序,并添加了 iOS 平台和 Android 平台。 iOS 现在正在使用 3.2.2。然而,Android 不是。我的目标是将预先定义的消息发布到用户的墙上。我的代码如下。当我按下我的按钮 fbShare(如下所述)时,我会弹出一个屏幕,顶部是 facebook,并显示一条消息:

App Not Setup: The developers of this app have not set up this app properly for facebook

我在应用程序设置页面中添加了 android 平台,并从我的项目中复制了 bundleID。我还为我的调试密钥库的位置和我的实际生产密钥库生成了密钥哈希。两者都没有工作。我的分享代码如下:

var fbShare=Ti.UI.createImageView({
    image:'/images/fbShare.png',
    width:'36dp',
    height:'36dp',
    left:'5dp'
});

Navbar.add(fbShare);

fbShare.addEventListener("click", function (e){
    facebookLogin();
});


var fb;
var facebookLogin = function(){
     fb = require('facebook');
     fb.appid = 'xxxxxxxxxx';
    Ti.API.info('facebook logedin?' + fb.loggedIn);
    //login if not logged in
    if (!fb.loggedIn) {
        fb.permissions = ['publish_stream'];
        fb.forceDialogAuth = false;
        fb.authorize();
        fb.addEventListener('login', function(e) {
            if (e.success) {
                Ti.API.info("Facebook logged in - stage 1");  
                postToFacebook();

            } else if (e.error) {
                alert(e.error + " - stage 1");
            } else if (e.cancelled) {
                alert("Facebook login cancelled - stage 2");
            }
        });
    }else{
        postToFacebook();
    }
};


var data = {
            link : "www.mylink.com",
            name : "my name",
            message : "my message",
            caption : "my caption",
            picture : "myPic.jpg",
            description : "My description."
        };

var postToFacebook = function(){
    Ti.API.info("attempting to post to facebook...please wait");
    fb.requestWithGraphPath('me/feed', data,
    "POST", function(e) {
        if (e.success) {
            alert("Shared to facebook successfully!");
            fbShare.setEnabled(true);
        fbShare.setImage('/images/fbShare.png');
                Ti.API.info("Posted to facebook wall!");
        }else{
            if(e.error){
                Ti.API.info("cant post to facebook " + e.error);
            }else{
                Ti.API.info("something else happened...");
            }
            alert('Something went wrong with your post but facebook could not confirm what.');
            fbShare.setEnabled(true);
        fbShare.setImage('/images/fbShare.png');
        }
    });        
 };

我已经坚持了好几天了,感谢任何帮助或指导

【问题讨论】:

    标签: android facebook titanium


    【解决方案1】:

    我昨天遇到了类似的问题。我的代码是正确的,但我仍然收到该消息。我通过设置“你想让这个应用程序及其所有实时功能对公众可用吗?”来修复它。在 Facebook 开发者网站的“状态和评论”下为“是”。

    如果你已经这样做了,那么请确保你的密钥哈希是正确的。请记住,您需要一个调试密钥和释放密钥。

    如果您已完成上述步骤并确保您的密钥哈希正确,那么 将是其他一些问题。

    我希望这会有所帮助。

    【讨论】:

    • 非常感谢。它一直让我发疯。我终于没有收到“未正确设置消息”,我正在进入显示应用程序正在寻找权限的屏幕。但是,我正在访问我的 post facebook 功能的其他部分,日志中的错误是:“me/feed”调用的请求错误:(#200) 用户尚未授权应用程序执行此操作。我以为 fb.permissions = ['publish_stream'];会允许我的应用发布状态更新吗?
    • 很高兴它对您有所帮助。看看这里希望你能联系起来。 stackoverflow.com/questions/15796138/…
    • 添加“status_update”权限也无济于事……您使用了哪些权限?或者您是否在做与 Facebook 相关的帖子以外的其他事情
    • 我使用的是 Scringo 的 SDK,所以我没有为 Facebook 编写任何代码。我希望我能帮助你解决下一个问题。祝你好运
    猜你喜欢
    • 1970-01-01
    • 2019-02-01
    • 2014-08-24
    • 1970-01-01
    • 1970-01-01
    • 2014-02-15
    • 1970-01-01
    • 1970-01-01
    • 2012-12-19
    相关资源
    最近更新 更多