【正文】
特別選擇協(xié)議,設(shè)計(jì)服務(wù)接口,進(jìn)行通信批處理時(shí)牢記這點(diǎn)。同時(shí)還考慮通信協(xié)議耗電。以改變目標(biāo),使Smartphone特有功能時(shí),給出警告。富客戶端應(yīng)少屏幕、存磁盤資源受限移動(dòng)而設(shè)計(jì)?! ?不日志文記錄敏感信息?! onsider the following guidelines when designing logging: ? If you carry out extensive logging on the device, consider logging in an abbreviated or pressed format to minimize memory and storage impact. There is no system Event Log in Windows Mobile.? If you do not require extensive logging, consider using OpenNetCF on the device. Be aware that OpenNetCF relies upon XML and will take up more space than a simple binary logging model. ? Consider using platform features such as health monitoring on the server, and mobile device services on the device, to log and audit events. ? Synchronize between the mobile database logs and the server database logs to maintain audit capabilities on the server. If you have an Active Directory infrastructure, consider using the System Center Mobile Device Manager to extract logs from mobile devices. See the Tchnology Considerations section for requirements for the Mobile Device Manager. ? Do not store sensitive information in log files. ? Decide what constitutes unusual or suspicious activity on a device, and log information based on these scenarios. 日志時(shí),考慮以指方針: ?如果設(shè)備執(zhí)行廣泛日志策略,那么考慮使型或壓縮文格式減存儲(chǔ)空間需求?! ?設(shè)計(jì)個(gè)全局誤處理捕捉不能處理異常。然再根據(jù)特定設(shè)備定制特定功能。設(shè)備成型以,都必須考慮這種。真實(shí)設(shè)備相比,模擬器運(yùn)行速度能慢些。Debugging Mobile application debugging can be much more expensive than debugging a similar application on a PC. Consider this debugging cost when deciding which devices, and how many devices, your application will support. Also keep in mind that it can be harder to get debug information from the device, and that device emulators do not always perfectly simulate the device hardware environment. 調(diào)試 類似PC應(yīng)程序調(diào)試相比,移動(dòng)設(shè)備調(diào)試能更加昂貴。 ?設(shè)備掉電或連接丟失,確保數(shù)據(jù)完整性,則以考慮使SQL Server Mobile事務(wù)。本文翻譯”Data Access”、” Debugging”、” Device”、” Exception Management”” Logging”部分?! ?如果Microsoft SQL Server 2005 或2008擁有企業(yè)級(jí)數(shù)據(jù),同時(shí)期望縮短市時(shí)間,那么就考慮使第三方“buy and configure”應(yīng)進(jìn)行合并復(fù)制。那樣,應(yīng)程序必須長時(shí)間沒有網(wǎng)絡(luò)連接常工作Consider the following guidelines when designing your munication strategy: ? Design asynchronous, threaded munication to improve usability in occasionally connected scenarios. ? If you are designing an application that will run on a mobile phone, consider the effects of receiving a phone call during munication or program execution. Design the application to allow it to suspend and resume, or even exit the application. ? Protect munication over untrusted connections, such as Web services and other overthe air methods. ? If you must access data from multiple sources, interoperate with other applications, or work while disconnected, consider using Web services for munication. ? If you are using WCF for munication and need to implement message queuing, consider using WCF store and forward. 設(shè)計(jì)通信策略時(shí),考慮以指方針: ?設(shè)計(jì)異步線程通信提間歇性網(wǎng)絡(luò)連接場景性?! ?選擇合適緩存地點(diǎn),例如設(shè)備、移動(dòng)網(wǎng)關(guān)或數(shù)據(jù)庫服務(wù)器。 you will have less storage space available than on a PC. 緩存 利緩存提應(yīng)程序性能響應(yīng),并且沒有網(wǎng)絡(luò)連接,支持程序操作。 ?編程安全模式,不同設(shè)備能有所差異,這就影響資源獲認(rèn)證。相說較弱認(rèn)證以讓您應(yīng)程序容易受未經(jīng)授權(quán)使。 l 未管理設(shè)備重啟恢復(fù)。 l 未管理同步斷。日志l 未考慮遠(yuǎn)端日志記錄,而只考慮設(shè)備。設(shè)備l 未考慮設(shè)備差異性,如屏幕CPU能力。 l 未考慮數(shù)據(jù)庫接入性能。 l 未使合適通信協(xié)議。 l 未網(wǎng)絡(luò)服務(wù)通信進(jìn)行加密?! VPN網(wǎng)絡(luò),未使認(rèn)證授權(quán)。 Windows Mobile174。但,桌面或網(wǎng)絡(luò)應(yīng)相比,通過簡化設(shè)計(jì)實(shí)現(xiàn)這個(gè)最覆蓋區(qū)?;谒俣?、功耗“繁瑣”程度選擇硬軟協(xié)議,而并不從編程難易程度做。如果應(yīng)需豐富戶體驗(yàn),使本地資源受限,并且必須能夠移植其,那么就設(shè)計(jì)成RIA客戶端。如果選擇瘦客戶端,那么業(yè)務(wù)數(shù)據(jù)層則位于服務(wù)器端?! ±斫饨€(gè)移動(dòng)應(yīng)素?! verview A mobile application will normally be structured as a multilayered application consisting of user experience, business, and data layers. When developing a mobile application, you may choose to develop a thin Webbased client or a rich client. If you are building a rich client, the business and data services layers are likely to be located on the device itself. If you are building a thin client, the business and data layers will be located on the server. Figure 1 illustrates mon rich client mobile application architecture with ponents grouped by areas of concern. 概述 通常,移動(dòng)應(yīng)由個(gè)層應(yīng)結(jié)構(gòu),包括戶體驗(yàn)、業(yè)務(wù)數(shù)據(jù)等。如果應(yīng)需本地處理,偶爾聯(lián)網(wǎng)必須工作,那么就考慮設(shè)計(jì)成個(gè)富客戶端。數(shù)移動(dòng)應(yīng)必須間歇性地連接網(wǎng)絡(luò)或網(wǎng)絡(luò)不都能工作?! ? Design a layered architecture appropriate for mobile devices that improves reuse and maintainability. Depending on the application type, multiple layers may be located on the device itself. Use the concept of layers to maximize separation of concerns, and to improve reuse and maintainability for your mobile application. However, aim to achieve the smallest footprint on the device by simplifying your design pared to a desktop or Web application. 設(shè)計(jì)分層架構(gòu),適應(yīng)移動(dòng)設(shè)備,提重性維護(hù)性。般說,電池壽命移動(dòng)設(shè)備最受限因素。面表格列出通常容易出問題。緩存l 資源受限設(shè)備緩存不必?cái)?shù)據(jù)?! 未考慮間歇性網(wǎng)絡(luò)連接工作?! 未保護(hù)敏感配置信息。調(diào)試l 選擇支持種設(shè)備時(shí)候,未考慮調(diào)試成本。 l 暴露敏感信息給戶。 l 未探究移植工具?! 未考慮單戶程序運(yùn)行?! 設(shè)計(jì)時(shí),未考慮受限資源性能。無論通過無線或有線,們必須考慮所有能連接場景。例如,客戶端服務(wù)器間,還服務(wù)器數(shù)據(jù)庫間。數(shù)移動(dòng)設(shè)備只使閃存,桌面機(jī)器相比,讀速度更慢。使無線通信,必須考慮數(shù)據(jù)安全性,防止敏感數(shù)據(jù)被盜或被篡改?! ?如果使WCF進(jìn)行通信,同時(shí)需實(shí)現(xiàn)消息隊(duì)列,那么就考慮使WCF存儲(chǔ)轉(zhuǎn)發(fā)Configuration Management When designing device configuration management, consider how to handle device resets, as well as whether you want to allow configuration of your application over the air or from a host PC. Consider the following guidelines when designing your configurationmanagement strategy: 配置管理 設(shè)計(jì)設(shè)備配置管理時(shí),考慮處理設(shè)備復(fù)位,否通過無線方式或主機(jī)方式配置應(yīng)程序?! ?如果擁有Microsoft Active Directory174?! ?確保文成功操作,加入異常重試邏輯處理?! ?考慮使自定義象代替DataSets,這樣以減存開銷,提系統(tǒng)性能。包括工具支持、始(替代)測試設(shè)備花費(fèi)基于軟模擬器花費(fèi)等因素?! ?設(shè)備網(wǎng)絡(luò)或連接完全斷開測試應(yīng)程序,包括PC機(jī)斷開?! onsider the following guidelines when determining your device strategy: ? Optimize the application for the device by considering factors such as screen size and orientation, network bandwidth, memory storage space, processor performance, and other hardware capabilities. ? Consider devicespecific that you can use to enhance your application functionality, such as accelerometers, graphics processing units (GPUs), global positioning systems (GPS), haptic (touch, force and vibration) feedback, pass, camera, and fingerprint readers. ? If you are developing for more than one device, design first for the subset of functionality that exists