2012-01-18 23 views
0

私はアンドロイドアプリケーションからFacebookの壁に画像を投稿しようとしています。私はFacebookのSDKを使用しています。私は、接続してIDを取得するためにFBConnectionActivityを呼び出すとき、私は、nullポインタ例外Facebookエラー無効なAPIキー

を取得

MainActivityから、私はこのような2つの方法呼び出しています: - FBConnectionActivity

view.setOnClickListener(new OnClickListener() { 
    @Override 
    public void onClick(View arg0) { 
      setConnection(); 
      getID(); 
    } 
} 

、これら二つを、isSession()の呼び出しで

public void setConnection() { 
      mContext = this; 
      mFacebook = Utility.mFacebook; 
      mAsyncRunner = new AsyncFacebookRunner(mFacebook); 
    }  
    public void getID(TextView txtUserName, ProgressBar progbar) { 
      username = txtUserName; 
      pb = progbar; 
      if (isSession()) { 
        Log.d(TAG, "sessionValid"); 
        mAsyncRunner.request("me", new IDRequestListener()); 
      } else { 
        // no logged in, so relogin 
        Log.d(TAG, "sessionNOTValid, relogin"); 
        mFacebook.authorize(this, PERMS, new LoginDialogListener()); 
      } 
    }  
    public void getID(){ 

     if (isSession()) { 
       Log.d(TAG, "sessionValid"); 
       mAsyncRunner.request("me", new IDRequestListener()); 
     } else { 
       // no logged in, so relogin 
       Log.d(TAG, "sessionNOTValid, relogin"); 
       mFacebook.authorize(this, PERMS, new LoginDialogListener()); 
     } 
    } 

isSessionValid()にメソッド呼び出しを:メソッドは次のように定義されていますメソッドは常にfalseを返します。

セッションが有効でない場合は、新しい有効なアクセストークンを取得する方法を教えてください。アプリケーションから画像をアップロードしようとするたびに、isSessionValid()メソッドはfalseを返します。また、私は次のエラーが表示されます: -

01-18 12:46:35.928: D/Facebook-Example(28459): Response: {"error_code":101,"error_msg":"Invalid API key","request_args":[{"key":"method","value":"photos.upload"},{"key":"format","value":"json"}]} 
01-18 12:46:35.948: W/Facebook-Example(28459): Facebook Error: Invalid API key 

私を助けてください。

私は以下の方法でFacebookに画像を投稿しています。ここに何か悪いことはありますか?

あなたが一緒に添付ファイルを追加しながら、Facebookの壁に

If you map wrong Key and Value Pair you will get Invalid API Key. 

を画像を投稿含んですから、ポスト画像の正しいキーと値のペアを使用していることを確認し、注意してください、あなたのコードスニペットを投稿していない

public void postImageonWall() { 
     Log.e("BrowsePictureActivity ", "Inside postImageonWall method"); 
     byte[] data = null; 

     Bitmap bi = BitmapFactory.decodeFile(selectedImagePath); 
     ByteArrayOutputStream baos = new ByteArrayOutputStream(); 
     bi.compress(Bitmap.CompressFormat.JPEG, 100, baos); 
     data = baos.toByteArray(); 

     Log.d("BrowsePictureActivity ", "data.length : " + data.length); 

     Bundle params = new Bundle(); 

    params.putString("method", "photos.upload"); 
    params.putByteArray("picture", data); 
    AsyncFacebookRunner mAsyncRunner = new AsyncFacebookRunner(facebook); 
    mAsyncRunner.request(null, params, "POST", new SampleUploadListener(), 
      null); 
} 

答えて

0

画像付き。

は、Facebookの壁に画像を投稿するためにこれを試してみてください:

private void postToWall(String accessToken) { 
    AsyncFacebookRunner mAsyncRunner = new AsyncFacebookRunner(facebook); 
    ByteArrayOutputStream stream = new ByteArrayOutputStream(); 
    bm.compress(Bitmap.CompressFormat.PNG, 100, stream); // bm is bitmap object of your image 
    byte[] byteArray = stream.toByteArray(); 
    Bundle param = new Bundle(); 
    param = new Bundle(); 
    param.putString("message", "All"); 
    param.putString("filename", "Test"); 
    param.putByteArray("image", byteArray); 
    mAsyncRunner.request("me/photos", param, "POST", new fbRequestListener(), null); 

} 

public class fbRequestListener implements RequestListener { 
    @Override 
    public void onComplete(String response, Object state) { 
    } 
    @Override 
    public void onIOException(IOException e, Object state) { 
    } 
    @Override 
    public void onFileNotFoundException(FileNotFoundException e,Object state) { 
    } 

    @Override 
    public void onMalformedURLException(MalformedURLException e,Object state) { 
    } 
    @Override 
    public void onFacebookError(FacebookError e, Object state) { 
    } 
} 
+0

私はFacebookを利用して画像を投稿するため、以下の方法を使用しています。ここに何か悪いことはありますか? –

+0

上記スニペットメイトを試してください。 – Venky

+0

@スワーティラワット答えが役に立つのであればそれを受け入れてください。 – Venky

関連する問題