2011-09-30 28 views
13

tôi đã tích hợp thành công twitter API và tôi có thể gửi văn bản từ điện thoại của tôi nhưng tôi muốn biết hai điềuChúng tôi có thể đăng hình ảnh lên twitter bằng cách sử dụng API twitter trong Android không?

  1. là có thể gửi hình ảnh trên twitter sử dụng API trong Android?

  2. Trong twitter, chúng tôi đã sử dụng OAuth.OAUTH_TOKENOAuth.OAUTH_TOKEN_SECRET mã thông báo.I chuyển giá trị mã thông báo vào đối số thứ hai trong mã bên dưới là OK? hoặc tôi phải để trống?

    String token = prefs.getString(OAuth.OAUTH_TOKEN, OAuth_token_key); 
    String secret = prefs.getString(OAuth.OAUTH_TOKEN_SECRET, OAuth_token_secret); 
    

Tôi đã tìm kiếm để biết liệu là nó có thể post image on twitter using twitter API in Android nhưng tôi đã không tìm thấy bất kỳ liên kết mà tôi biết cho dù đó là tốt hay không.

Tôi gặp vấn đề về hình ảnh bài đăng tương tự cho iPhonethere is a answer also. Tôi không biết về iPhone vì vậy tôi không thể biết thời tiết nó là câu trả lời đúng hay không. Đây là một liên kết của câu hỏi tương tự của hình ảnh bài cho iPhone

Xin hãy giúp tôi ra khỏi vấn đề này.

Trả lời

15

Có Bạn có thể đăng các hình ảnh trên Twitter .

AIK, có hai phương pháp để tải ảnh lên Twitter.

Với Đầu tiên bạn phải triển khai API Twitter và sử dụng this Link để tải Photot lên Twitter.

Xin lỗi ví dụ. như tôi không nhận được bất kỳ ví dụ về cách sử dụng này.

Với Thứ hai bạn có thể thực hiện việc này với sự trợ giúp của API twitPic4j. Chỉ cần thêm API cho twitPic4j và viết mã bên dưới để tải ảnh lên.

Code:

File picture = new File(APP_FILE_PATH + "/"+filename+".jpg"); 
// Create TwitPic object and allocate TwitPicResponse object 
TwitPic tpRequest = new TwitPic(TWITTER_NAME, TWITTER_PASSWORD); 
TwitPicResponse tpResponse = null; 
// Make request and handle exceptions        
try {   
     tpResponse = tpRequest.uploadAndPost(picture, customMessageEditText.getText()+" http://www.twsbi.com/"); 

} 
catch (IOException e) {   
     e.printStackTrace(); 
     Toast.makeText(getApplicationContext(), "Please enter valid username and password.", Toast.LENGTH_SHORT).show(); 
} 
catch (TwitPicException e) {   
     e.printStackTrace(); 
     Toast.makeText(getApplicationContext(), "Invalid username and password.", Toast.LENGTH_SHORT).show(); 
     Toast.makeText(getApplicationContext(), "Please enter valid Username and Password.", Toast.LENGTH_SHORT).show(); 
} 
// If we got a response back, print out response variables        
if(tpResponse != null) {   
     tpResponse.dumpVars(); 
     System.out.println(tpResponse.getStatus()); 
     if(tpResponse.getStatus().equals("ok")){ 
      Toast.makeText(getApplicationContext(), "Photo posted on Twitter.",Toast.LENGTH_SHORT).show(); 
      //picture.delete(); 
     } 
} 

Trên mã các công trình trong trường hợp của tôi.

Hy vọng bạn đã nhận được sollution với thứ hai và tôi không biết làm thế nào để sử dụng đầu tiên.

Tận hưởng. :)

Cập nhật

Nếu nó vẫn không hoạt động cho bạn và thử một số dự án được liệt kê dưới đây:

Example 1

Example 2

Example 3

Example 4

Hy vọng rằng sẽ giúp bạn.

Mã hóa hạnh phúc.

==================================

CHO erdomester và trả lời Cập nhật

==================================

Vui lòng kiểm tra liên kết đầu tiên của tôi được đưa ra với Example1 và api của nó: Twitter4J Vì vậy, nếu bất kỳ thư viện nào ngừng cung cấp chức năng tải lên hình ảnh trên twitter, bạn có thể sử dụng thư viện khác cho tương tự. Vui lòng kiểm tra và đọc regrading Twitter4j.

Kiểm tra Twitter4J API để upload file lên Twitter: Twitter4j Image Upload

Ví dụ giúp bạn cũng có thể kiểm tra mã dưới đây để tải lên tập tin hình ảnh trên Twitter.

Mã để tải lên hình ảnh:

/** 
* To upload a picture with some piece of text. 
* 
* 
* @param file The file which we want to share with our tweet 
* @param message Message to display with picture 
* @param twitter Instance of authorized Twitter class 
* @throws Exception exception if any 
*/ 

public void uploadPic(File file, String message,Twitter twitter) throws Exception { 
    try{ 
     StatusUpdate status = new StatusUpdate(message); 
     status.setMedia(file); 
     twitter.updateStatus(status);} 
    catch(TwitterException e){ 
     Log.d("TAG", "Pic Upload error" + e.getErrorMessage()); 
     throw e; 
    } 
} 

Tôi hy vọng điều này sẽ giúp bạn nhiều hơn cho truy vấn của bạn.

Nhờ eredomester để thông báo cho tôi rằng tweetpic không hoạt động tốt hơn trên Twitter. Nhưng xin vui lòng không làm downvote để trả lời cho đến khi bạn đã không tìm kiếm đầy đủ trên trả lời nhất định. Cho thư viện Twitter4J trong Example1 đưa ra ý tưởng rõ ràng về việc tải hình ảnh lên twitter và bạn có thể dễ dàng thực hiện nó.

Để được trợ giúp nhiều hơn và mã bạn cũng có thể kiểm tra: Twitter Upload media

Lưu ý: Để sử dụng này xin vui lòng chắc chắn rằng bạn có file jar mới nhất. Tôi đã sử dụng twitter4j-core-2.2.5.jar trở lên cho việc này.

Vui lòng nhận xét tôi thay vì downvoting câu trả lời này, nếu bạn gặp phải bất kỳ vấn đề nào trong vấn đề này.

+0

mã này được làm việc tối đa tuần trước. Bây giờ mã này nói tên người dùng và mật khẩu không hợp lệ. Vấn đề gì tôi không nhận được. Tôi đang nhập đúng tên người dùng và tên người dùng – sai

+0

@sai: kiểm tra tên người dùng và mật khẩu của nó. Hoặc vui lòng xóa ứng dụng đó và cài đặt lại rồi kiểm tra. –

+0

nó không hoạt động cho ứng dụng trước đó? – sai

1

Có bạn có thể đăng hình ảnh lên Twitter bằng cách sử dụng Twitter api như twitter4j nhưng tôi sẽ đề nghị bạn sử dụng lớp HttpPost và lớp DefaultHttpClient vì thực hành tốt và bạn không cần thêm bất kỳ api twitter nào vào nó.

+0

Bạn có liên kết nào không? và nếu chúng ta sử dụng httppost thì không cần thêm api twitter bên ngoài? – Dharmendra

+0

Hãy nhìn khi chúng tôi tải ảnh lên mà không sử dụng bất kỳ api bên ngoài nào trên twitter, chúng tôi phải tải lên ảnh đó trong Đa phần/biểu mẫu. chỉ cần đi đến liên kết này và nghiên cứu về twitter phần còn lại tài liệu api https://dev.twitter.com/docs/api/1/post/statuses/update_with_media và nếu câu trả lời của tôi đã giúp bạn plz upvote nó. – Rocker

2

Có thể đăng Ảnh trên twitter bằng API trong Android không?

Có, bạn có thể tải hình ảnh lên Twitter sau khi xác thực thành công bằng cách sử dụng Twitter Media Uplload.

Trong twitter chúng tôi sử dụng OAuth.OAUTH_TOKEN và OAuth.OAUTH_TOKEN_SECRET tokens.I đi qua giá trị mã thông báo số thứ hai trong mã dưới đây là nó ok? hoặc tôi phải để trống?

Bạn nên thêm cả Mã và Token bí mật chính nó sẽ hữu ích cho setTokenWithSecret methos của Tiwtter trong đó bạn phải gửi cả Mã và Token bí mật ..

Các vấn đề liên quan