私は Android アプリを開発しています。URL から承認を得て、いくつかの単純な XML ファイルをダウンロードする必要があります。ローカル コンピューターの Java で既に何かが動作しています [末尾のコード]。Android アプリでこの関数を使用しようとすると、LogCat は何千ものエラーをスローします。インターネット許可を含めました。エラーを投稿に添付します。だから、ここに私のダウンロード機能があります。時間が経っても変わらないため、base64文字列をハードコードしました...:
public String getXmlFromUri(String url)
{
String strFileContents = new String("");
try{
String base64 = "Basic " + "hardcodedBase64String";
URL pURL = new URL(url);
URLConnection conn = pURL.openConnection();
conn.setRequestProperty("Authorization", base64);
BufferedReader in=new BufferedReader(new InputStreamReader(conn.getInputStream()));
String data = new String("");
while((data = in.readLine()) != null)
{
strFileContents += data;
}
in.close();
}catch(IOException e) {}
if(strFileContents == "") strFileContents = "An error occured or the downloaded file was empty!";
return strFileContents;
}
私の logcat は非常に長いので、pastebin にアップロードしました: http://pastebin.com/DhFra9SG
この機能はまだ完成していません。現在、承認が必要な Web サイトでのみ使用しています。
結論: Windows では動作しますが、Android では動作しません! それ