我试图从URL下载图像,并将其转换成位图的Android位图,但行从URL总是空
Bitmap myBitmap = BitmapFactory.decodeStream(input);
总是导致调试器跳到下面一行
return null;
没有实际打印出堆栈跟踪,并且Exception变量在调试器中列出的变量中也不存在。我读了很多关于如何可能存在与实际导致图像的URL不一致的问题,格式不正确的图像等,但仍然存在与硬编码图像相同的问题,这是我积极的存在。
public static Bitmap getBitmapFromURL(String src) {
try {
URL url = new URL(
"http://www.helpinghomelesscats.com/images/cat1.jpg");
HttpURLConnection connection = (HttpURLConnection) url
.openConnection();
connection.setDoInput(true);
connection.connect();
InputStream input = connection.getInputStream();
Bitmap myBitmap = BitmapFactory.decodeStream(input);
return myBitmap;
} catch (IOException e) {
e.printStackTrace();
return null;
}
}
由于好像manifest.xml文件可能涉及我编辑添加在这里。
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.delivery"
android:versionCode="1"
android:versionName="1.0">
<uses-permission android:name="android.permission.CALL_PHONE"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".IntroPage"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".Browse"></activity>
<activity android:name=".ViewProduct"></activity>
<activity android:name=".ViewOrder"></activity>
<activity android:name=".GetAddress"></activity>
<activity android:name=".ConfirmOrder"></activity>
</application>
你使用互联网的权限? – Nikhil
请尝试查看已抛出的内容,可以使用Log.i(“TAG”,e.getMessage)记录IOexception并将其发布到 –
如果调试器跳到'catch'中的'return null;'分支,那里_must_被抛出异常,变量'e'应该包含该异常。 – Ridcully