어제까지해서 힘들게 트위터로 텍스트 쏴보내는부분은 끝냈는데요 아침에와서 일찍 xml디자인부분 가라로 대충 끝내고 이제진짜 마지막을 향해가네요; 이번엔 트위터에 텍스트쏠때 동시에 이미지를 등록할건데요..
 
이게 의외로 상당히 정보가없네요 ;게시판검색에 이미지부분은 하나도없고 네이버 블로그에 하나 있긴한데 다른 정보까지 같이있어서 좀 해깔리네요.
*추가
괜찮은 정보있는데 찾아서 주소 적어둘게요 전 여기서보고 하고있습니다 다른분들도 참고하시면 좋겠네요
여기서보고 빨간색이 제가 추가한 부분이고 형관팬이 오류나는 부분입니다.
 
public class BookShelf_twitter extends Activity{
 public static final String TWITPIC_API_KEY = "51e554089c667a3c05d6f5a63992f08b";
 public static String consumerKey = "NgYAODRth11mV5SIA";
 public static String consumerSecret = "JY7qHNXTsXOLg1iUU2ZkySDWfL2qaX1WaBdnTIMHDeQ";
 public static Uri CALLBACK_URL = Uri.parse("wefu://twitter");
---중략
  private void getAccessToken3() {
  try{
   
   edit = (EditText)findViewById(R.id.edittext);
   twitter.setOAuthAccessToken(acToken.getToken(), acToken.getTokenSecret());
  
   Configuration config = new ConfigurationBuilder().build();
   OAuthAuthorization oauth = new OAuthAuthorization(config, C.TWITTER_CONSUMER_KEY, C.TWITTER_CONSUMER_SECRET, new AccessToken(accessToken, accessTokenSecret));
   String path = Environment.getExternalStorageDirectory().getAbsolutePath();
   File picture = new File(path + image);
//image는 파일이름 들어있는 스트링문자열입니다path는 저장주소같구요
   ImageUpload uploader = TweetPhotoOAuthUploader.getTwitpicUploader(C.TWITPIC_API_KEY, oauth);
   String strResult = uploader.upload(picture , "");
   
   twitter.updateStatus(Result+" MyComent : "+edit.getText().toString() + " " + strResult);
   Toast.makeText(BookShelf_twitter.this, "twitterに伝送しました", Toast.LENGTH_LONG).show();
  }
  catch (TwitterException te) {
   te.printStackTrace();
   Toast.makeText(BookShelf_twitter.this, "伝送が失敗しました", Toast.LENGTH_LONG).show();
  }
 }
 
}
import는 컨트롤 시프트 o 눌러서 해주고 오류나는부분은 마우스 갔다가 대니까 임폴트 하라고 하는부분있어서 누르니까 대부분없어지고 남은게 저겁니다.
 
소스 좀더 보니까 String strResult = uploader.upload(picture , ""); 이부분은 어차피 그림 올리는거랑은 상관없이
URL 리턴받아서 텍스트옆에 + 주소 출력하는거같은데 ;맞을까요? 굳이 필요없다면 에러가 하나 줄어들긴하는데 ㅠ
 
problem 누르면 아래와같이 나옵니다(스샷첨부가 안되네요 ㅠㅠ)
accessToken cannot be resolved to a variable
accessTokenSecret cannot be resolved to a variable
C cannot be resolved to variable
The method upload(String, InputStream) in the type ImageUpload is nt applicable for the~
TweetPhotoOAuthUploader cannot be resolved
 
답변 부탁드립니다 ㅠ

 아래는 혹시모르니 전체소스입니다,  굳이 필요없다 생각하시는분은 안보셔도 됩니다
 
package com.utec.swc.bookshelf_lite;
import java.io.File;
import twitter4j.Status;
import twitter4j.Twitter;
import twitter4j.TwitterException;
import twitter4j.TwitterFactory;
import twitter4j.conf.Configuration;
import twitter4j.conf.ConfigurationBuilder;
import twitter4j.http.AccessToken;
import twitter4j.http.OAuthAuthorization;
import twitter4j.http.RequestToken;
import twitter4j.util.ImageUpload;
import android.app.Activity;
import android.content.ContentValues;
import android.content.Intent;
import android.database.sqlite.SQLiteDatabase;
import android.net.Uri;
import android.os.Bundle;
import android.os.Environment;
import android.util.Log;
import android.view.View;
import android.view.inputmethod.EditorInfo;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.widget.Button;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import android.widget.Toast;
import com.utec.swc.database.Database_Class_MakeDatabase;

public class BookShelf_twitter extends Activity{
 public static final String TWITPIC_API_KEY = "";
 public static String consumerKey = "";
 public static String consumerSecret = "";
 public static Uri CALLBACK_URL = Uri.parse("wefu://twitter");
 //public static Uri CALLBACK_URL = Uri.parse("http://twitter.com/oauth/authorize");
 private Twitter twitter;
 private AccessToken acToken;
 private RequestToken rqToken;
 private Status status = null;
 private WebView webview;
 
 private String TAG = "Test"; 
 private EditText et;
 private Button bt, dbbtn2;
 
 private LinearLayout ll;
 private RelativeLayout rl;
 
 private String pin;
 private EditText edit;
 
 Database_Class_MakeDatabase dbHelper;
 EditText mText;
 
 SQLiteDatabase db;
 ContentValues row;
 String Result = "";
 String image="";
 public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.twitter_text); 
  
 
  et = (EditText) findViewById(R.id.pintext);
  et.setImeOptions(EditorInfo.IME_FLAG_NO_EXTRACT_UI);
  
  webview = (WebView) findViewById(R.id.webView);
  bt = (Button) findViewById(R.id.runbt);
  dbbtn2 = (Button) findViewById(R.id.DBbtn2);
  
  ll = (LinearLayout) findViewById(R.id.ll);
  rl = (RelativeLayout) findViewById(R.id.rl);
  
  dbHelper = new Database_Class_MakeDatabase(this);
  mText = (EditText)findViewById(R.id.edittext);
  getRequestToken();
  
  bt.setOnClickListener(new View.OnClickListener() {
   
   @Override
   public void onClick(View v) {
    
    getAccessToken();
   }
  });
  
  
  dbbtn2.setOnClickListener(new View.OnClickListener() {    
   @Override
   public void onClick(View v) {
    Intent intent = getIntent();
     Result = (intent.getStringExtra("TextIn"));
     image = (intent.getStringExtra("ImageIn"));
    getAccessToken3(); 
    finish();
   }
  });  
 }
 
 protected void onNewIntent(Intent intent) {
  super.onNewIntent(intent);
  Uri uri = intent.getData();
  
  if (uri != null && CALLBACK_URL.getScheme().equals(uri.getScheme())) {
   String oauth_verifier = uri.getQueryParameter("oauth_verifier");
   try {
    acToken = twitter.getOAuthAccessToken(rqToken, oauth_verifier);
    status = twitter.updateStatus("test twitter4j web application oauth");
   } catch (TwitterException e) {
    Log.e(TAG, e.getMessage());
    
   }
  }
 }
 
 private void getRequestToken() {
  twitter = new TwitterFactory().getInstance();
  twitter.setOAuthConsumer(consumerKey, consumerSecret);
  try {
   rqToken = twitter.getOAuthRequestToken();
   
   webview.loadUrl("rqToken.getAuthorizationURL();
   webview.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);
   webview.getSettings().setJavaScriptEnabled(true);
  } catch (TwitterException e) {
  
   e.printStackTrace();
  }
  
 }
 
 private void getAccessToken() {
  pin = et.getText().toString();
  try {
   acToken = twitter.getOAuthAccessToken(rqToken, pin);
  } catch (TwitterException e) {
  
   e.printStackTrace();
  }
  ll.setVisibility(View.GONE);
  rl.setVisibility(View.VISIBLE);
  
 }
 
 @SuppressWarnings("deprecation")
 private void getAccessToken3() {
  try{
   
   edit = (EditText)findViewById(R.id.edittext);
   twitter.setOAuthAccessToken(acToken.getToken(), acToken.getTokenSecret());
   
   Configuration config = new ConfigurationBuilder().build();
   OAuthAuthorization oauth = new OAuthAuthorization(config, C.TWITTER_CONSUMER_KEY, C.TWITTER_CONSUMER_SECRET, new AccessToken(accessToken, accessTokenSecret));
   String path = Environment.getExternalStorageDirectory().getAbsolutePath();
   File picture = new File(path + image);
   ImageUpload uploader = TweetPhotoOAuthUploader.getTwitpicUploader(C.TWITPIC_API_KEY, oauth);
   
   twitter.updateStatus(Result+" MyComent : "+edit.getText().toString());
   Toast.makeText(BookShelf_twitter.this, "twitterに伝送しました", Toast.LENGTH_LONG).show();
  }
  catch (TwitterException te) {
   te.printStackTrace();
   Toast.makeText(BookShelf_twitter.this, "伝送が失敗しました", Toast.LENGTH_LONG).show();
  }
 }
 
}