日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Android 通過API獲取數據庫中的圖片文件方式

瀏覽:152日期:2022-09-25 18:38:48

Overview

今天復習了一下Android 如何將我們數據庫中圖片獲取出來,并且將其轉換為bitmap進行顯示。

開發環境以及技術

使用Visual Studio 2019

Android Studio 3.5

API 使用 ASP .NET WEB API 開發

數據庫操作只用Entity Framework

使用本地數據庫作為數據源

如果你是一個需要開發軟件和API的程序員,那么你可以看一下,如果你不是可以選擇跳過 $color{#6995C2}{API開發}$。

API 開發

這里我為了開發的方便,所以所使用的API比較簡陋。但是按照國際慣例我們先來看一下API方面的源代碼。

我個人比較喜歡json所以我們將所有的端口轉換為JSON。代碼如下:

public static class WebApiConfig{ public static void Register(HttpConfiguration config) { // Web API 配置和服務 // Web API 路由 config.MapHttpAttributeRoutes(); config.Routes.MapHttpRoute( name: 'DefaultApi', routeTemplate: 'api/{controller}/{id}', defaults: new { id = RouteParameter.Optional } ); GlobalConfiguration.Configuration.Formatters.XmlFormatter.SupportedMediaTypes.Clear(); }}

我們需要在我們的WebApiCinfig的類中添加一句代碼這樣我們就將所有的端口返回數據變成了JSON格式的數據了。

然后我們看一下如何返回我們的圖片數據:

// GET: api/Picturespublic object GetPictures(){ var showData = db.Pictures.ToList(); List<Tuple<int,string>> list = new List<Tuple<int, string>>(); foreach (var item in showData) { list.Add(new Tuple<int, string>(item.Id,Convert.ToBase64String(item.Img))); } return list;}

這里我們使用了Base64的方法,先是將我們的字節數組轉換為字符串并將其添加到元組中。并且進行返回。

這樣我們的API基礎部分就完成了。

Android 如何操作圖片

首先我們顯示獲取我們的網絡資源。

想來看一下代碼:

/** * ClassName- @MainActivity-@初始換主頁面底部的圖片 **/private void initPictureData() { new Thread(new Runnable() { @Override public void run() { //通過http網絡訪問,獲取到我們的網絡數據。將Http的GET方法進行了封裝 String httpData = Global.httpGet('Pictures', ''); //將JSON進行解析并且添加到List中 List<pictureEntity> list = pictureData_JsonHelper.getJsonData(httpData); Log.d('main_pictureData', String.valueOf(list.size())); final List<Bitmap> bitmapsList = new ArrayList<>(); for (int i = 0; i < list.size(); i++) {//在循環將String轉換為圖片。這里將我們的轉換方法進行了封裝bitmapsList.add(Global.stringToBitmap(list.get(i).getPicString())); } Log.d('BitmapsData', String.valueOf(bitmapsList.size())); //下面是ViewPager 控件的操作。 final List<View> viewsList = new ArrayList<>(); for (int i = 0; i < bitmapsList.size(); i++) {View view = View.inflate(MainActivity.this, R.layout.viewpage_item, null);ImageView imageView = view.findViewById(R.id.itemImageView);imageView.setImageBitmap(bitmapsList.get(i));viewsList.add(view); } runOnUiThread(new Runnable() {@Overridepublic void run() { ViewPager viewPager = findViewById(R.id.viewPager); viewPager.setAdapter(new viewPager_Adapter(viewsList));} }); } }).start();}

這樣我們的全部操作就完成了。接著我們看一下我們這里使用到自己封裝的方法了。

Http 的方法這里就不看了。我相信大家都會。

public static Bitmap stringToBitmap(String pictureString) { //使用Base64將String 轉換為 Bitmap 類型 byte[] bytes = Base64.decode(pictureString, Base64.NO_WRAP); //使用BitmapFactory將字節數組轉換為Bitmap //這邊我們需要對數據庫返回的base64的數稍稍的做一下處理。否則可能無法正常顯示圖像。 for (int i = 0; i < bytes.length; ++i) { if (bytes[i] < 0) { bytes[i] += 256; } } //生成圖片并且返回。 return BitmapFactory.decodeByteArray(bytes, 0, bytes.length);}

這樣我們的全部過程就已經完成了。

補充知識:android 獲取網絡數據(超簡單,直接調用)

我就廢話不多說了,還是直接上代碼吧!

String getNetData(String connectURL){ String result = ''; //用來取得返回的String; //發送post請求 HttpPost httpRequest = new HttpPost(connectURL); //Post運作傳送變數必須用NameValuePair[]陣列儲存 try { //發出HTTP請求 Log.d('請求連接', '在發送請求'); List params = new ArrayList(); params.add(new BasicNameValuePair('start', '123321'));//post請求(必須有,數據自定義) //params.add(new BasicNameValuePair('end', end+''));//可添加多個Post請求碼,php中按鍵值對獲取 httpRequest.setEntity(new UrlEncodedFormEntity(params, HTTP.UTF_8)); //取得HTTP response HttpResponse httpResponse = new DefaultHttpClient().execute(httpRequest); //若狀態碼為200則請求成功,取到返回數據 Log.d('連接值', String.valueOf(httpResponse.getStatusLine().getStatusCode())); if (httpResponse.getStatusLine().getStatusCode() == 200) { //取出字符串 Log.d('請求連接', '連接成功'); result = new String(EntityUtils.toString(httpResponse.getEntity(),'utf8')); } } catch (Exception e) { mHandler.post(new Runnable() { @Override public void run() {Toast.makeText(getContext(), '網絡出錯',Toast.LENGTH_SHORT).show(); } }); e.printStackTrace(); } return result;}//接下來就是解析獲取到的json數據了,json數據的解析就需要根據需求自定義了

以上這篇Android 通過API獲取數據庫中的圖片文件方式就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Android
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产一区欧美| 久久蜜桃av| 香蕉精品999视频一区二区| 国内精品99| 蜜桃视频一区二区| 精品一区二区三区视频在线播放| 精品国产欧美日韩一区二区三区| 在线人成日本视频| 久久人人99| 深夜日韩欧美| 精品国产乱码久久久| 国产精品网站在线看| 手机在线电影一区| 午夜一区在线| 久久av超碰| 伊人久久婷婷| 亚洲精品九九| 美女视频网站久久| 久久在线电影| 精品视频亚洲| 免费看日韩精品| 精品视频99| 国产视频久久| 久久精品国产久精国产| 久久麻豆精品| 蜜桃久久久久| 亚洲资源在线| 高清不卡一区| 免费在线观看一区二区三区| 午夜日韩福利| 欧美亚洲一区二区三区| 亚洲在线国产日韩欧美| 另类专区亚洲| 日本a级不卡| 性欧美69xoxoxoxo| xxxxx性欧美特大| 国产精品麻豆成人av电影艾秋| 久久国产99| 中文字幕在线看片| 国产精品亚洲欧美一级在线| 亚洲特级毛片| 精品女同一区二区三区在线观看| 国产亚洲在线| 蜜桃国内精品久久久久软件9| 麻豆国产精品777777在线| 久久国产精品久久w女人spa| 久久精品1区| 国产一区二区三区网| 国产亚洲电影| 久久亚洲美女| 美女久久一区| 亚洲三区欧美一区国产二区| 一区二区亚洲精品| 久久都是精品| 日本精品国产| 亚州av一区| 伊人久久成人| 欧美综合二区| 三级欧美韩日大片在线看| 五月综合激情| 影院欧美亚洲| 中文字幕免费一区二区| 亚洲深深色噜噜狠狠爱网站| 国产亚洲福利| 亚洲美女久久精品| 日韩欧美午夜| 美女少妇全过程你懂的久久| 999久久久91| 黄色精品网站| 中文在线不卡| 欧美日韩91| 日本国产亚洲| 国产精品第一| 日本在线精品| 亚洲www啪成人一区二区| 在线亚洲精品| 国产精品第一国产精品| 国产伦久视频在线观看| 一区在线视频观看| 日韩中文字幕不卡| 国产日韩中文在线中文字幕| 久久电影tv| 日韩中文字幕一区二区三区| 久久国际精品| 在线精品一区二区| 狠狠久久伊人中文字幕| 国产日韩电影| 亚洲一区中文| 国产精品一区二区美女视频免费看 | 国产成人1区| 九色porny丨国产首页在线| 亚洲欧美激情诱惑| 日韩欧美高清一区二区三区| 日本蜜桃在线观看视频| 亚洲欧洲日本mm| 免费在线欧美黄色| 久久国产精品毛片| 免费一二一二在线视频| 午夜在线一区二区| 国产91精品对白在线播放| 爽好久久久欧美精品| 国产激情久久| 亚洲伊人影院| 水蜜桃精品av一区二区| 蜜臀av性久久久久蜜臀aⅴ四虎 | 麻豆精品视频在线| 欧美日中文字幕| 欧美激情一区| 三级欧美韩日大片在线看| 你懂的国产精品永久在线| 久久青草久久| 美女网站视频一区| 久久不卡国产精品一区二区| 久久中文字幕二区| 激情久久99| 免费日韩一区二区三区| 久久精品色播| 免费在线播放第一区高清av| 日韩午夜在线| 黄色av日韩| 久热精品在线| 亚洲一区导航| 欧美日韩精品一本二本三本| 久久久久欧美精品| 国产精品3区| 亚洲精品在线国产| 日本不卡视频在线| 国产美女视频一区二区| 久久国际精品| 老司机免费视频一区二区| 日韩黄色av| 日韩不卡一区二区| 亚洲+小说+欧美+激情+另类| 亚洲精品四区| 日韩成人av影视| 国产精品一区二区av日韩在线| 国产日韩免费| 久久不见久久见免费视频7 | 日本中文字幕一区二区| 免费中文字幕日韩欧美| 日韩精品一级中文字幕精品视频免费观看| 午夜视频精品| 国产欧美日韩精品一区二区免费 | 激情婷婷综合| 在线一区免费观看| 一区二区三区四区日韩| 四虎精品永久免费| 日本精品久久| 中文字幕在线视频久| 蜜桃成人精品| 日本麻豆一区二区三区视频| 性欧美精品高清| 日韩av午夜在线观看| 成人台湾亚洲精品一区二区| 久久国产欧美| 日本精品在线播放| 在线人成日本视频| 六月丁香综合| 欧美日本二区| 日韩一区二区三区在线免费观看| 亚洲91久久| 欧美一区二区三区免费看| 色爱av综合网| 亚洲精品无播放器在线播放| 麻豆久久一区| 性欧美69xoxoxoxo| 国产欧美日韩综合一区在线播放| 国产毛片久久久| 一区二区日韩免费看| 精品视频在线观看网站| 亚洲天堂av资源在线观看| 色婷婷色综合| 国产欧美激情| 男女性色大片免费观看一区二区| 欧美激情91| 老鸭窝亚洲一区二区三区| 亚洲天堂资源| 国产精品99久久免费| 亚洲精品国产精品粉嫩| 91精品婷婷色在线观看| 亚洲另类视频| 深夜福利视频一区二区| 丝袜美腿亚洲一区二区图片| 色网在线免费观看| 欧美韩一区二区| 最新亚洲国产| 黄色av一区| 欧美特黄视频| 91精品国产乱码久久久久久久 | 亚洲我射av| 亚洲在线国产日韩欧美| av资源亚洲| 欧洲av一区二区| av一区在线| 在线国产一区| 国产专区一区| 日韩在线观看不卡| 在线亚洲欧美| 国产午夜精品一区二区三区欧美| 日本欧美不卡|