范勇華

摘要:市場調查歷來是研究市場的方向標,它有利于企業摸清區域行業的狀況和特點,制定企業區域市場發展計劃。基于iOS端的市場調查App,能夠方便工作人員高效快速地進行市場調查,滿足現階段市場調查的相關需求。該文從iOS市場調查開發的基本理念、背景出發,深入闡述了基于iOS的市場調查App開發環境和系統搭建構想,并借助于醫藥產品市場調查案例,系統地分享基于iOS的市場調查App開發設計流程。
關鍵詞:iOS;市場調查;App;設計
中圖分類號:TP311? ? ? 文獻標識碼:A
文章編號:1009-3044(2021)18-0091-02
開放科學(資源服務)標識碼(OSID):
1 開發概述
市場調查歷來是研究市場的方向標,它有利于企業摸清區域行業的狀況和特點,制定企業區域市場發展計劃。目前市場調查主要有App調查、紙質問卷調查和計算機互聯網調查等三種調查媒介。采用App調查具有答題耗時短、回收率高、認可度高的特點,能夠迅速反應產品的區域覆蓋面和認可度等,有利于提高產品區域調查的針對性。目前網絡App調查系統開發主要有ANDROID、iOS等平臺,本文就在iOS平臺上開發與設計App調查案例的相關流程做一些分享。
2 開發環境搭建
受限于Apple的封閉,一般不采用在虛擬化方式搭建的Mac操作系統上配置iOS App開發環境。在硬件配置方面,iOS開發必須配置蘋果設備,一般需要在Mac電腦、iDevice和iPhone(iPad、iPod Touch均可)等三個設備上進行配置,便于在不同設備上進行測試,確保App能在所有蘋果設備上運行。在軟件設置方面,需要運用iOS 應用程序設計語言Objective-C或swift進行App設計,完成軟件設計后,需要進行代碼調試、編譯等。所以為了優化搭建iOS開發調試環境,需要安裝XCODE 5.1開發測試模擬器,在具體測試時,測試模擬器要綜合考慮經度和緯度影響應用程序的位置的情況,還要調試一下模擬內存警告和呼叫時的狀態等,確保測試應用程序的所有方面。
3 系統構架分析
為了更好地完成系統構架,我們就醫藥產品針對相關藥店進行市場調查,開發一款符合市場需求的iOS市場調查App。考慮醫藥行業的特殊性,對指定的藥店進行相關問卷調查必須保持謹慎態度,系統在設計時要充分考慮記錄參與調查人員(藥店)是否真實有效。所以在設計時考慮一是要實現簽到定位功能,并對相關資質進行資質(拍攝)照片上傳,以便保證該調查的真實性。其二是實現的一些問卷的填寫,藥店(藥師)根據相關回答進行填寫相應的問卷。其三是要實現產品的展示(拍照),主要技術要點涉及拍攝完后要顯示縮略圖,同時要考慮圖片拍攝數量可能會很多,可能會導致數據很大,設計時要統籌兼顧數據的壓縮上傳。
4 設計與實現
基于上述系統構架和技術要點,醫藥產品的iOS市場調查App本基本要實現的功能主要有:登錄功能、簽到定位、拍照、問卷填寫以及數據壓縮上傳等,下面就具體設計實現如下。
4.1 登錄模塊
登錄模塊作為App進入詳細界面的唯一入口,需要驗證用戶的權限以及分配相應的調查數據,用戶登錄成功后由服務器返回相關聯的調查數據。本調查問卷App不提供注冊的功能,賬戶和調查數據是由服務器端進行分配處理。
登錄界面采用簡潔大方的概念設計,參與調查的人員不需要在登錄界面做過多的操作和思考,便于提高市場調查的效率,輸入賬戶密碼,點擊登錄即可跳轉頁面。
4.2 店鋪顯示模塊
參與調查人員登錄成功后,會呈現服務器提供的藥店店鋪數據。根據服務器返回的數據,每個店鋪作為一個任務,每個任務都會有個完成和未完成的標識。也有任務的起始時間和結束時間,參與調查的人員進入后臺都會自動匹配結果,如果任務過期或者已經完成,將不能進行該任務的任何操作。
店鋪界面有三個部分:注銷、列表顯示和搜索。注銷主要用于方便調查人員切換不同的賬號完成不同的任務,列表顯示的是店鋪的名稱和該店鋪任務的狀態,搜索功能方便調查人員找到指定的店鋪進行相關的調查任務,單擊店鋪名稱即可跳轉到店鋪詳情界面,實現店鋪界面關鍵代碼如下:
BOOL isCreate = YES;
......
if (isCreate) {
//將數據緩存到單例里面
[[DataManagershareDataManager] setStoreData:storeData];
[selfperformSegueWithIdentifier:@"ShopDetails" sender:nil];
}else{
[ZAActivityBarshowErrorWithStatus:@"數據文件創建失敗"];
}
4.3 市場調查App店鋪詳情模塊
店鋪詳細模塊需要給參與調查人員呈現店鋪的位置(并且在地圖中顯示)、店鋪的詳細信息和任務列表。其中店鋪位置定位是通過服務器返回店鋪信息數據中的地址信息進行搜索來定位。參與調查人員需要按照任務列表的順序執行相應的調查。
店鋪詳情界面分為兩個部分:店鋪信息與任務列表。最上方顯示店鋪在地圖中的位置,緊接著顯示店鋪詳細的文字信息。下方為任務列表需按順序執行,后面的打鉤圖標代表該任務完成可以繼續下面的任務。在設計實現是要充分考慮文件編碼模式、文件壓縮及遍歷文件添加到壓縮包里等情況,該模塊文件壓縮功能的關鍵代碼如下:
//壓縮文件
NSString *zipFile = [documentPathstringByAppendingPathComponent:[NSStringstringWithFormat:@"%@.zip",storeData.storeId]];
ZipArchive *zipArchive = [[ZipArchivealloc] init];
//轉成gbk編碼。
[zipArchivesetStringEncoding:gbkEncoding];
[zipArchive CreateZipFile2:zipFile];
4.4 市場調查App問卷調查模塊
市場調查App問卷調查模塊作為一款市場調查類App,是本系統的核心模塊。問卷調查模塊設計要充分考慮易用性,主要以選擇題為主,其中包括單選和多選。問卷數據是事先擬定的問卷模板,當選擇有該產品時會將此選項勾選,并跳轉到該產品的更為詳細的問卷,問卷調查界面如圖1所示:
問卷界面是通過模板數據來設計的UI,不同的問卷會對應不同的UI。參與問卷調查人員根據實際情況填寫問卷,填寫完成后會進行數據驗證,以確保問卷調查問題是否全部填寫完整,以及產品照片是否拍攝,該模塊中存儲關鍵代碼如下:
#pragma mark - UIImagePickerControllerDelegate and UINavigationControllerDelegate
-(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
[pickerdismissViewControllerAnimated:YES completion:^{
UIImage *image = [info valueForKey:UIImagePickerControllerOriginalImage];
UIImageWriteToSavedPhotosAlbum(image, self, @selector(saveSate:didFinishSavingWithError:contextInfo:), nil);
NSMutableArray *res = [photosDataobjectAtIndex:selectedCVNum];
UIImage *img = nil;
if (image.imageOrientation == UIImageOrientationRight) {
img = [self image:image rotation:UIImageOrientationRight];
}else if(image.imageOrientation == UIImageOrientationLeft){
img = [self image:image rotation:UIImageOrientationLeft];
}else if(image.imageOrientation == UIImageOrientationDown){
img = [self image:image rotation:UIImageOrientationDown];
}else{
img = image;
}
[resaddObject:UIImageJPEGRepresentation(img, 0.1f)];
[selfrefreshCollectionView];
}];
}
5 小結
基于iOS平臺市場調查App系統的設計與實現,并沒有非常復雜邏輯處理,主要要解決諸如拍照顯示方向問題、數據壓縮上傳等問題。其一是要注意IPhone設備拍攝的照片方向會與實際情況不同,需要進行測試,然后根據不同的情況旋轉圖片保存到本地。其二對于數據上傳問題,要處理好網絡不穩定等網絡異常問題。本設計通過主要利用XCODE開發環境與OBJECT-C語言結合,來實現iOS市場調查App功能,是對iOS開發系統理念及相關技術要點的有益探索,實現了一些常見iOS應用所需的功能。
參考文獻:
[1] 楊宏焱.企業級iOS應用開發實戰[M].北京:機械工業出版社,2013.
[2] 黑馬程序員.Objective-C程序設計案例教程[M].北京:清華大學出版社,2017.
[3] 劉一道.iOS 7: iPhone/iPad應用開發技術詳解[M].北京:機械工業出版社,2013.
[4] 關東升.iOS開發指南:從Hello World到App Store上架[M].北京:人民郵電出版社,2017.
[5] Kelly M,Nozzi J.Xcode實戰開發[M]. 姚軍,譯.北京:人民郵電出版社,2014.
【通聯編輯:光文玲】