android - 为什么我在使用此代码发布图像之前看不到应用程序允许访问 facebook 照片发布的屏幕?

标签 android facebook facebook-graph-api android-layout android-widget

在我的应用程序中,我使用以下代码上传照片。

当我卸载应用程序并重新安装应用程序并在 facebook 上发布照片时,如果 faceboook id 是新的,那么它会显示应用程序允许访问。 但有时它没有给我那个屏幕。我不知道它有什么问题。

请查看代码并提供解决方案。 为什么我无法让应用程序允许访问屏幕。 谢谢。

代码是:

 // For Facebook ===================================
            Button facebookButton = (Button) saveButtonDialog.findViewById(R.id.facebook);
            facebookButton.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    saveButtonDialog.dismiss();

                    saveImageFunction(); // to save the Image

                    facebook.authorize(TWSBIDrawMainActivity.this, new String[]{ "user_photos,publish_checkins,publish_actions,publish_stream"},new DialogListener() {                     
                        @Override                     
                        public void onComplete(Bundle values) {   
                            postImageonWall(); 
                            Toast.makeText(getApplicationContext(), "Image Posted on Facebook.", Toast.LENGTH_SHORT).show();
                            //File f = new File(APP_FILE_PATH + "/"+filename+".jpg");
                            //f.delete();
                        }                      
                        @Override                     
                        public void onFacebookError(FacebookError error) {                     
                        }                      
                        @Override                     
                        public void onError(DialogError e) {                     
                        }                      
                        @Override                     
                        public void onCancel() {                     
                        }                 
                    }); 
                }
            });


 public void postImageonWall() {             
    byte[] data = null;               

    Bitmap bi = BitmapFactory.decodeFile(APP_FILE_PATH + "/"+filename+".jpg");
    //Bitmap bi = BitmapFactory.decodeResource(getResources(), R.drawable.icon);             
    ByteArrayOutputStream baos = new ByteArrayOutputStream();              
    bi.compress(Bitmap.CompressFormat.JPEG, 100, baos);              
    data = baos.toByteArray();                
    Bundle params = new Bundle();              
    params.putString(Facebook.TOKEN, facebook.getAccessToken());              
    params.putString("method", "photos.upload");              
    params.putByteArray("picture", data);               
    AsyncFacebookRunner mAsyncRunner = new AsyncFacebookRunner(facebook);              
    mAsyncRunner.request(null, params, "POST", new SampleUploadListener(), null);       
} 

最佳答案

可靠的猜测:这是因为您过去曾允许此应用程序(应用程序 ID),所以您只需登录您的 Facebook 帐户 - 转到您的应用程序并删除该应用程序。所以下次它会问。

您尝试了另一个 unm 和 pwd 然后它也没有正确显示?那么我现在没有解决方案..将不得不搜索那个...但与此同时你可以做一件事利用另一个应用程序 ID 或 unm/pwd 并检查你的代码!

然后解决您的错误(我猜是因为还没有遇到这样的问题)..当登录窗口出现时来自 facebook 默认应用程序..所以这一切问题都会发生..删除它并调用您自己的弹出对话框,请参阅 My Answer Here .

谢谢。

关于android - 为什么我在使用此代码发布图像之前看不到应用程序允许访问 facebook 照片发布的屏幕?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8558407/

相关文章:

facebook - 弃用 fb :page_id to claim a domain 的理想解决方案

ios - FBSDKShareKit 视频保存在应用程序中

android - 如何测试演示者 MVP Android

android - 以编程方式删除对回收者 View 项目单击的涟漪效应

php - 在android中创建动态表单

Facebook 选项卡 ssl 最低要求

html - 使用开放图在 Facebook 上共享音频

ios - 使用 Facebook Graph API 提取用户信息时出现身份验证错误

android - 未登录时是否可以获取公共(public) facebook 墙提要?

Android 完全透明的状态栏?