999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

同城快遞iOS-App系統(tǒng)設(shè)計與實現(xiàn)

2018-11-03 06:04:06曾志歐陽承
現(xiàn)代計算機 2018年28期
關(guān)鍵詞:用戶系統(tǒng)

曾志,歐陽承

(惠州學(xué)院信息科學(xué)技術(shù)學(xué)院,惠州 516007)

0 引言

隨著我國經(jīng)濟崛起以及與國際交流日益頻繁,人們對物資與信息流通產(chǎn)生了更大、更多元化、更個性化的需求,快遞服務(wù)迎來了飛速的發(fā)展,形成了國際、國內(nèi)與同城三種模式[1]。同城快遞是快遞企業(yè)為處在同一城市不同轄區(qū)的發(fā)件人和收件人所進行的快件收發(fā)活動,是國際快遞和國內(nèi)異地快遞的有力補充。其重點是“同城”,因此更突出配送效率和個性化服務(wù)。在當(dāng)前同城共同配送體系不健全的環(huán)境下,同城快遞主要抓住了用戶對“末端快遞配送”的服務(wù)需求點:時效性強、個性化明顯、安全性高和服務(wù)靈活。可以大大節(jié)省收發(fā)快遞的時間,凸顯了App帶來的成本與效率的雙重增長。與一般的快遞App不同[2-4],首先,同城快遞iOS-App使用范圍為同一城市,避免了同一城市快遞分揀而導(dǎo)致隔日遞送的缺點,使得快遞在數(shù)小時內(nèi)完成送達;其次,吸引大眾參與模式,所有經(jīng)過審核認證的人員,均可以參與到派送快件這項工作中來,舉手之勞創(chuàng)造價值。對于參與派件的人員,提出采納支付保證金的方法,同時對發(fā)送的物品進行前后拍照比較認證的方法確??爝f物品的安全。一旦完成交易,系統(tǒng)將自動將費用轉(zhuǎn)入派送員賬戶。綜上,同城快遞iOSApp系統(tǒng)將快遞物流與移動電子商務(wù)更加緊密地結(jié)合,一方面在于加速物品在同城范圍內(nèi)的遞送,同時也為大眾的參與提供了平臺,解決了“最后一公里”高效快速的快件遞送問題。

“互聯(lián)網(wǎng)+”利用信息通信技術(shù)與各行業(yè)的深度融合,為經(jīng)濟社會的創(chuàng)新發(fā)展提供了便捷、高效的解決方案?;贏pp的移動計算技術(shù)正在成為實現(xiàn)“互聯(lián)網(wǎng)+”創(chuàng)造新業(yè)務(wù)與新服務(wù)模式的基礎(chǔ)。同城快遞App采用目前較為新近的技術(shù)框架,分析各業(yè)務(wù)流程(如圖1所示),完善和添加有利于用戶體驗的模塊,從技術(shù)上以及產(chǎn)品上均有一定的創(chuàng)新。

圖1 同城快遞App系統(tǒng)的業(yè)務(wù)流程

1 同城快遞iOS-App系統(tǒng)架構(gòu)體系

從系統(tǒng)架構(gòu)可知,同城快遞iOS-App系統(tǒng)是一款雙App系統(tǒng),包括用戶端與快遞員派送端兩部分。系統(tǒng)iOS客戶端使用Apple官方IDE Xcode,以及蘋果最穩(wěn)定的Objective-C編程語言進行代碼編寫,并用iOS數(shù)據(jù)格式Plist,NSUserdefault單例進行數(shù)據(jù)歸檔,使用AFNetworking與服務(wù)器端進行數(shù)據(jù)交互。整個項目采用了MVVM架構(gòu),很好地解決Massive View Controller的問題。在該項目中將Controller中的展示邏輯抽取出來,放置到ViewModel。MVVM衍生于MVC,是對MVC的一種演進,它促進了UI代碼與業(yè)務(wù)邏輯的分離。它正式規(guī)范了視圖和控制器緊耦合的性質(zhì),并引入新的組件。各組件間的結(jié)構(gòu)關(guān)系如圖2所示。

其次,整個項目圖片都采用異步加載保證界面流暢度,在圖片呈現(xiàn)前顯示占位圖,當(dāng)圖片加載后再予以替換占位圖,加載后的圖片采用緩存機制,亦或多級緩存機制,用以提升客戶端界面的流暢度。此外,界面組件還采用了預(yù)排版技術(shù),將每條Cell需要的數(shù)據(jù)都在后臺線程計算并封裝為一個布局對象CellLayout,避免Cell內(nèi)部的重計算,增加了UITableView列表的加載速度,增加了用戶體驗。最后,項目實踐過程采用了全局并發(fā)控制技術(shù),App內(nèi)所有異步操作,包括圖像解碼、對象釋放、異步繪制等,均已按優(yōu)先級放入了全局的serial queue中執(zhí)行,從而避免了過多線程影響計算性能的問題。

2 iOS-App功能模塊的實現(xiàn)

依據(jù)同城快遞App系統(tǒng)業(yè)務(wù)流程,用戶App前端模塊共包含7大模塊,而快遞員派送端App主要包含接單模塊。用戶App端的幾大模塊描述見圖3所示。用戶首先是注冊、認證與個人信息的完善,接著就是下單、支付、查詢與評價;而快遞員端App主要有接/搶單、派送、簽收幾大功能。以下為iOS-App端所涉及的下單、接單、查詢與支付幾大模塊的實現(xiàn)。

圖3 iOS-App用戶端功能模塊

2.1 用戶下單模塊

在用戶注冊并經(jīng)過認證后,用戶就具有發(fā)貨位置,物品信息,包括物品照片,訂單發(fā)布時間,聯(lián)系方式等。用戶在手機端完成訂單的填寫,將數(shù)據(jù)打包成JSON格式傳遞到后臺處理,代碼實現(xiàn)如下:

//用戶下單模塊

- (void)completeInputInfomationWithJSON:(NSDictionary *)json{

AFHTTPSessionManager*manager=[AFHTTPSession?Manager manager];

圖2 iOS-App系統(tǒng)架構(gòu)體系

//申明請求的數(shù)據(jù)是json類型

manager.requestSerializer=[AFJSONRequestSerializer se?rializer];

manager.responseSerializer=[AFHTTPResponseSerializer serializer];

manager.requestSerializer.timeoutInterval=10;

manager.responseSerializer.acceptableContentTypes=[NS?Set setWithObjects:@"text/plain", @"multipart/form- data",@"application/json",@"text/html",@"image/jpeg",@"image/png",@"application/octet-stream",@"text/json",nil];

NSString*createNewOrderurl=[NSString stringWithFor?mat:@"% @/Express/order/Order_createOrder.action", server?URL];

[manager POST:createNewOrderurl parameters:json con?structingBodyWithBlock:^(id<AFMultipartFormData> _Nonnull formData){

//formData:專門用于拼接需要上傳的數(shù)據(jù),在此位置生成一個要上傳的數(shù)據(jù)體

for(int i=0;i<self.imagesM.count;i++){

UIImage*image=self.imagesM[i];

NSData*imageData=UIImageJPEGRepresen?tation(image,0.5);

//使用當(dāng)前的系統(tǒng)事件作為文件名

NSDateFormatter*formatter=[[NSDateFormat?ter alloc]init];

//設(shè)置時間格式

[formatter setDateFormat:@"yyyyMMddHHmmss"];

NSString*dateString=[formatter stringFrom?Date:[NSDate date]];

NSString*fileName=[NSString stringWithFor?mat:@"%@.jpg",dateString];

[formData appendPartWithFileData:imageData name:@"upload"fileName:fileName mimeType:@"image/jpeg"];///jpg/png

}

}

}

2.2 快遞員接單模塊

快遞員派送端可以在App完成訂單的查詢、接單與派送的過程。其中接單也被認為是搶單,系統(tǒng)完成手機端數(shù)據(jù)的拼接,并通過序列化的方式對數(shù)據(jù)完成傳輸操作,代碼略。

2.3 支付模塊

支付主要實現(xiàn)錢包的功能,包括支付寶、微信和銀行卡的支付與提現(xiàn)。根據(jù)用戶ID列出訂單的明細列表,而后提交后臺進行支付相關(guān)的處理。代碼實現(xiàn)如下:

//支付模塊

-(void)walletInstruction{

UIAlertController *alertController = [UIAlertController alertControllerWithTitle:@"說明"message:@" 1、余額可提現(xiàn)至支付寶、微信和銀行卡(銀聯(lián))等平臺。 2、提交提現(xiàn)申請后,需要2~3個工作日到賬。 3、提現(xiàn)或充值后,如遇到金額長時間沒有到賬,請及時聯(lián)系客服。"preferredStyle:UI?AlertControllerStyleAlert];

UIAlertAction*canelAction=[UIAlertAction actionWith?Title:@"知道了"style:UIAlertActionStyleDefault handler:nil];UIAlertAction*callAction=[UIAlertAction actionWithTitle:@"聯(lián)系客服"style:UIAlertActionStyleDefault handler:^(UIAlertAc?tion*_Nonnull action){

//通過UIWebView實現(xiàn)

UIWebView*phoneWV=[[UIWebView alloc]init?WithFrame:CGRectZero];

[self.view addSubview:phoneWV];

//讀入電話號碼

NSString *urlStr= [NSString stringWithFormat:@"tel:%@",@"0752-8884788"];

NSURL*url=[NSURL URLWithString:urlStr];

NSURLRequest*request=[NSURLRequest request?WithURL:url];

//加載請求

[phoneWV loadRequest:request];

}];

[alertController addAction:canelAction];

[alertController addAction:callAction];

[self presentViewController:alertController animated:YES completion:nil];

}

//請求賬戶明細數(shù)據(jù)

-(void)requestDataFromServer{

//請求的參數(shù)

NSUserDefaults*userDefaults=[NSUserDefaults standar?dUserDefaults];

NSString*userID=[[userDefaults objectForKey:@"userIn?formation"]objectForKey:@"userID"];

NSDictionary*dic=[NSDictionary dictionaryWithObject?sAndKeys:@“0”,@“first”,userID,@“userId”,nil];

NSString*uploadAddressUrl=[NSString stringWithFor?mat:@"%@%@",serverURL,@"/Express/user/User_findEx?pense.action"];

AFHTTPSessionManager*manager=[AFHTTPSession?Manager manager];

manager.responseSerializer=[AFHTTPResponseSerializer serializer];

[managerPOST:uploadAddressUrlparameters:dic con?structingBodyWithBlock:^(id_Nonnull formData){

//拼接data到請求體

}progress:^(NSProgress*_Nonnull uploadProgress){[SVProgressHUD show];

[SVProgressHUD setDefaultStyle:SVProgressHUDStyle?Dark];

} success:^(NSURLSessionDataTask * _Nonnull task, id_Nullable responseObject){

……

}failure:^(NSURLSessionDataTask*_Nullable task,NSError*_Nonnull error){

……

}

3 后臺數(shù)據(jù)管理系統(tǒng)的實現(xiàn)

后臺管理系統(tǒng)實現(xiàn)了用戶認證管理、下單、接單、查詢、支付以及評價管理等,其中查詢模塊調(diào)用了百度地圖API實現(xiàn)[5]。后臺數(shù)據(jù)管理頁面效果如圖4所示。

圖4 iOS-App后臺管理系統(tǒng)功能示例

手機App端各頁面效果展示如圖5所示。

圖5 iOS-App手機端頁面效果示例

4 系統(tǒng)評測

使用Instruments進行內(nèi)存測試,根據(jù)需求分析的要求重復(fù)測試3次以上,Instruments并沒有發(fā)出警報,在測試的過程中并沒有發(fā)生內(nèi)存暴漲的情況。綜上,軟件并沒有明顯的內(nèi)存泄漏,不影響功能和使用,符合需求分析的要求。Instruments內(nèi)存泄漏測試如圖6所示。

圖6 iOS-App內(nèi)測效果

5 結(jié)語

綜上,同城快遞App系統(tǒng)將快遞物流與同城內(nèi)的移動電子商務(wù)更加緊密地結(jié)合,屬于C2C模式的一種實現(xiàn)。一方面在于加速物品同城快遞的遞送,同時為大眾參與提供了平臺,解決了“最后一公里”高效快速的快件遞送問題。

猜你喜歡
用戶系統(tǒng)
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無人機系統(tǒng)
ZC系列無人機遙感系統(tǒng)
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統(tǒng)
半沸制皂系統(tǒng)(下)
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
關(guān)注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關(guān)注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關(guān)注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
Camera360:拍出5億用戶
主站蜘蛛池模板: 色婷婷亚洲综合五月| 亚洲视频色图| 欧美日韩中文字幕在线| 国产99视频精品免费观看9e| 在线国产欧美| 欧美区一区| 国产丝袜无码精品| 五月天天天色| 一本色道久久88| 91久久国产热精品免费| 国产精品色婷婷在线观看| 日本人妻丰满熟妇区| 996免费视频国产在线播放| 青青久视频| 日韩毛片在线视频| 国产午夜精品一区二区三| 青青草原国产精品啪啪视频| 国产精品刺激对白在线| 日韩中文无码av超清 | 在线看AV天堂| 亚洲国产欧美自拍| 亚洲成人黄色在线观看| 国产精品永久免费嫩草研究院| 欧美一级99在线观看国产| 国产午夜无码片在线观看网站| 青青青草国产| 久久精品亚洲热综合一区二区| 欧洲熟妇精品视频| 蜜桃臀无码内射一区二区三区| 欧美黑人欧美精品刺激| 91精品日韩人妻无码久久| 亚洲第一香蕉视频| 露脸真实国语乱在线观看| 九九热精品视频在线| 国产成人久久777777| 亚洲第一香蕉视频| av在线手机播放| 麻豆精品视频在线原创| 99国产精品国产| 久久久成年黄色视频| 99视频在线精品免费观看6| 久久久成年黄色视频| 欧美亚洲国产精品久久蜜芽| 欧美高清国产| 国产经典在线观看一区| 不卡午夜视频| 国产丝袜丝视频在线观看| 99re在线观看视频| 亚洲第一极品精品无码| 亚洲v日韩v欧美在线观看| 性色一区| 日韩在线视频网站| 久久久久九九精品影院| 婷婷综合在线观看丁香| 亚洲人成人无码www| 97色伦色在线综合视频| 亚洲全网成人资源在线观看| 99久久国产综合精品2020| 精品国产一区91在线| 91精品日韩人妻无码久久| 欧美亚洲国产一区| 亚洲天堂日韩在线| 欧美中文一区| 一级福利视频| 色婷婷综合激情视频免费看| 欧美精品成人| 1级黄色毛片| 亚洲综合九九| 99久久99这里只有免费的精品| 国产精品综合久久久| 奇米影视狠狠精品7777| 视频在线观看一区二区| 成年人国产视频| 国产91视频免费观看| 国产成本人片免费a∨短片| 最新国语自产精品视频在| 亚洲国产精品日韩专区AV| 欧美成人午夜视频| 91丝袜美腿高跟国产极品老师| 激情综合网激情综合| 日韩在线视频网| 国产真实乱子伦精品视手机观看|