android獲取圖片地址
⑴ android 下使用Cursor如何獲得專輯圖片
android下使用cursor獲取專輯圖片,主要是在資料庫裡面先保存專輯圖片的url地址,當使用cursor游標遍歷資料庫數據的時候,使用資源操作類進行載入相應的url,如下代碼:
Cursor cursor = context.getContentResolver().query(Media.EXTERNAL_CONTENT_URI, columns, null, null, null);
Log.e("cursor" , (cursor==null) + "");
while(cursor.moveToNext()) {
// 查找封面圖片
long albumId = cursor.getLong(5);
// 讀取專輯圖片
String album_uri = "content://media/external/audio/albumart"; // 專輯Uri對應的字元串
Uri albumUri = ContentUris.withAppendedId(Uri.parse(album_uri), albumId);
// 取圖片 ==> 得到一個輸入流
Bitmap coverPhoto = null ;
try {
InputStream is = context.getContentResolver().openInputStream(albumUri);
if(null != is) {
coverPhoto = BitmapFactory.decodeStream(is);
}
} catch (Exception e) {
e.printStackTrace();
}
data.add(new Audio(cursor.getLong(0), cursor.getString(1) , cursor.getString(2) , cursor.getLong(3) , cursor.getString(4) , albumId , coverPhoto));
}
cursor.close();
⑵ Android 兩個Activity之間怎樣使用Uri傳遞圖片,怎樣獲取圖片的Uri,怎樣通過Uri得到圖片
圖片類:
class Image implements Serializable{
private String url;
private Bitmap bitmap;
}
傳遞:
Image image = new Image();
image.seturl(url);
image.setbitmap(bitmap);
intent.putExtra("image", image);
獲取
Image image = intent.getSerializableExtra("image");
String url = image.geturl();
Bitmap bitmap =image.getbitmap();
⑶ Android中 怎麼獲取apk中的素材圖片
有些APK程序里的圖標、圖片很漂亮,在使用程序時你可能會想,如果能把這些漂亮的圖標、圖片提取出來就好了,其實這是可以辦到的,請看教程。
更多例子請參考android學習手冊,裡面有源碼。android學習手冊包含9個章節,108個例子,源碼文檔隨便看,例子都是可交互,可運行,源碼採用android studio目錄結構,高亮顯示代碼,文檔都採用文檔結構圖顯示,可以快速定位。360手機助手中下載,圖標上有貝殼
本教程以「電影超人」的APK安裝包為例,其它APK程序的提取方法基本相同。以下內容需要在電腦中進行操作。
1.用壓縮軟體打開APK
APK程序其實就是個ZIP壓縮包,想提取其中的資源就得先用解壓縮軟體將其打開,如圖我們在APK安裝包上右鍵、打開方式、選擇壓縮軟體,我這里選擇的是RAR,如果你安裝的是其它的解壓縮軟體,選擇它即可。如果你以前沒有用壓縮軟體打開過APK文件,可以點擊選擇默認程序然後找到解壓縮軟體進行打開。
2.解壓圖片文件夾
用解壓縮軟體打開APK程序後,如圖裡面有幾個文件夾,我們拖出「res」這個文件,一般APK程序的圖片資源都在這個文件中。
3.尋找需要的圖片
把「res」文件夾解壓後我們打開可以看到裡面的幾個文件夾一般程序圖標等圖片都在「drawable-hdpi」這個文件夾,打開看看,是不是有自己需要的東西,如果沒有再到其它的幾個文件夾中查找一下。APK文件里的圖片都是png格式的,可直接查看,這點比水果要厚道了許多。
4.反編譯查找資源
也許大家發現了,解壓後「電影超人」里大量的電影圖片並沒有看到,那是因為APK程序製作時把它們編譯到了「resources.arsc」文件里我們想提取的話把APK文件進行反編譯就可以了。具體反編譯方法這里就不講解了,請自行網路。
⑷ android 網路獲取圖片並在activity上顯示
在Android應用中,獲取網路圖片並在Activity中顯示,是一個常見的需求。首先,你需要使用HttpURLConnection或OkHttp等網路庫來下載圖片。這里,我們可以使用OkHttp,因為它提供了簡潔且高效的API。
以下是一個簡單的示例代碼,用於從網路獲取圖片並將其設置為Activity的背景:
1. 添加依賴
在項目級build.gradle文件中添加OkHttp依賴:
implementation 'com.squareup.okhttp3:okhttp:4.9.0'
2. 獲取網路圖片
使用OkHttp發起網路請求獲取圖片。這里我們使用一個簡單的GET請求:
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder().url("https://example.com/image.png").build();
Response response = client.newCall(request).execute();
if (response.isSuccessful()) {
byte[] bytes = response.body().bytes();
Bitmap bitmap = BitmapFactory.decodeByteArray(bytes, 0, bytes.length);
}
3. 設置圖片為Activity背景
獲取到圖片後,可以將其設置為Activity的背景。我們可以在Activity的onCreate方法中完成這一操作:
ImageView imageView = findViewById(R.id.background_image);
imageView.setImageBitmap(bitmap);
View backgroundView = findViewById(R.id.activity_background);
backgroundView.setBackground(new BitmapDrawable(getResources(), bitmap));
以上步驟展示了如何從網路獲取圖片並在Android應用的Activity中顯示。值得注意的是,為了提升用戶體驗,應當確保網路請求非同步執行,避免阻塞主線程。
此外,在實際應用中,還需要處理可能出現的異常情況,比如網路請求失敗或圖片下載失敗等。可以使用try-catch語句來捕獲並處理這些異常。
通過這種方式,我們可以在Android應用中輕松實現從網路獲取圖片並在Activity中展示的功能。
⑸ android 調用相冊的圖片 圖片無法找到 路徑應該怎麼寫
先引入Environment類,然後調用getExternalStorageDirectory()函數獲得sd卡路徑,然後連接在你的filename前面,應該就可以解決.
具體:
import android.os.Environment;
......
File f = new File(Environment.getExternalStorageDirectory() + fileName);
其他用到fileName的地方類似.
另外,讀寫sd卡需要在AndroidManifest.xml文件內加入許可權,具體:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />