### Bitmap 在 Android 內使用 Bitmap 是十分常見的事,有時我們可能需要把 Bitmap 存為 JPEG 檔案,應該要怎麼做呢? ### Bitmap Compress 原來 Bitmap 自己本身已經寫好了有關的方法,我們只需要使用就可以了。 ```java // file output stream FileOutputStream fos = new FileOutputStream(new File("PATH_TO_FILE")); // compress bitmap as jpeg format with 85% quality bitmap.compress(Bitmap.CompressFormat.JPEG, 85, fos); // flush stream fos.flush(); // recycle bitmap memory bitmap.recycle(); ``` 真的是非常之方便 !
### Gallery Images / Videos 在 Android 上要取出 Gallery 的相片 / 影片,在以前我們可以使用 media query 來達成,但是在 API 的變更後,現在要改為使用 content resolver 來達成了。 ### Content Resolver 其實就是簡單的一句可以取得 content resolver,和以前 media query 比起來只差一點點。 ```java context.getContentResolver(); ``` 以下是一個完整的代碼來用取出 Gallery 內的圖片。 ```java // select image data Uri uri = android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI; // columns for each row String[] projection = { MediaStore.MediaColumns.DATA }; // run query Cursor cursor = context.getContentResolver().query(uri, projection, null, null, null); // get column index int index = cursor.getColumnIndexOrThrow(MediaStore.MediaColumns.DATA); // do each cursor while (cursor.moveToNext()) { // get the file path String path = cursor.getString(index); // do something with the file path } ``` ### URI 不同的 URI 是指對應不同的資料表 (Table),下面會列出兩個最常用的 Uri : 指向圖片的資料表 > android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI 指向影片的資料表 > android.provider.MediaStore.Video.Media.EXTERNAL_CONTENT_URI
這個五六月真的是兩個很忙的月分,讀書考試及工作上的事情都弄到透不過氣來。 今天終於都有時間定下來可以寫一下 19 Site。 今年修讀的三個 OU 科目 (COMPS224, 332, 368) 都已經全部完成考試,現在也就是等放成績的時間。因為肺炎疫情關係,所有的考試都變為了 Take-Home Exam / Take-Home Assignment 來進行,當然也變得有辣有唔辣。 辣的地方是因為變成為了 Open Book Exam,所以題目的出題方法變得非常 Open Ended。除非已經深入了解課文後的原理,否則靠死背書是必死的。因為寫 Definition 的題目只餘下大約 10 分左右,用來拉及格是可以的,但是靠它來取分就必死了。而唔辣的地方就當然是不同背書,可以在書中 Copy & Paste 需要的內容就可以,大大減少寫字的時間。 總的來說這次的考試安排都唔錯,系統順暢,不過在 Submit 考卷時卡住。開發人員值得一讚,也辛苦了 CC's 及各 Tutor's 了。 不知道是不是因為疫情的影響,公司的客戶常常想到新的些法去改變現有的東西,東改改西改改,常常要花時間去了解客戶想要的真正意思。真的花掉了很多時間。