私は現在、Scribe を使用して、メディア以外のメッセージの認証と Twitter への投稿を成功させています。これは非常に簡単で、最初のテスト メッセージは問題なく投稿されました。ただし、写真を投稿することはまったくできないようです。こことここの両方で、メディアへの投稿に関する Twitter の指示を確認しました。
Github にあるすべての Scribe/Twitter の例は、メディア以外の投稿用です。Scribe を介して Twitter に写真を投稿する方法の確かな例を誰かが提供できれば素晴らしいことです!
特に 2 つの問題があります。
1) 私の投稿は承認を通過しません。上記の例を真似てみましたが、何もうまくいかないようです。
2) 画像を byte[] から文字列に変換すると、停止する前に 4113 文字しか取得できないようです。私の理解では、これは文字列が保持できる文字数をはるかに下回っています。
写真を抽出する方法は次のとおりです。
// GET PHOTO FILE AND FILE LENGTH
// INSTANTIATE UPLOAD VARIABLE WITH FILE LENGTH
File file = new File(photo); // ("photo" is a string path to the photo file)
int fileLength = (int) file.length();
uploadFile = new byte[fileLength];
// CREATE BUFFER INPUT STREAM OF FILE
BufferedInputStream inputStream;
try {inputStream = new BufferedInputStream(new FileInputStream(file));}
catch (FileNotFoundException e)
{
inputStream = null;
Toast.makeText(this.getApplicationContext(), "Buffer input stream error!", Toast.LENGTH_LONG).show();
}
// READ DATA FROM FILE INTO UPLOAD VARIABLE
// CLOSE INPUT STREAM
try {inputStream.read(uploadFile);}
catch (IOException e) {Toast.makeText(this.getApplicationContext(), "Read input stream to upload variable error!", Toast.LENGTH_LONG).show();}
try {inputStream.close();}
catch (IOException e) {Toast.makeText(this.getApplicationContext(), "Close input stream error!", Toast.LENGTH_LONG).show();}