• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于Android系統(tǒng)的簡單測量程序設(shè)計

    2017-04-20 08:50:13馮金濤
    教育教學(xué)論壇 2017年16期
    關(guān)鍵詞:Android系統(tǒng)程序設(shè)計智能手機(jī)

    馮金濤

    摘要:智能手機(jī)正在成為新的測量記錄和計算處理工具。本文針對三個簡單測量問題(前方交會、單一導(dǎo)線和水準(zhǔn)路線),研究基于Android智能手機(jī)平臺的程序設(shè)計方法,取得了一些經(jīng)驗,成功編制出相關(guān)程序。

    關(guān)鍵詞:測量;程序設(shè)計;Android系統(tǒng);智能手機(jī)

    中圖分類號:P209;TP311.1 文獻(xiàn)標(biāo)志碼:A 文章編號:1674-9324(2017)16-0256-04

    隨著時代發(fā)展和科技進(jìn)步,智能手機(jī)已成為人們必備的日常生活用品,其應(yīng)用范圍不斷擴(kuò)大,可以服務(wù)于人們多方面的工作和生活需要。智能手機(jī)的核心是開放式的手機(jī)操作系統(tǒng),使用者可根據(jù)需要安裝不同的軟件,從而提高了手機(jī)的可擴(kuò)展性。目前主要的手機(jī)操作系統(tǒng)是Google公司推出的Android和蘋果公司的iOS,而Android系統(tǒng)由于開放源代碼,得到手機(jī)行業(yè)內(nèi)眾多廠家和服務(wù)提供商的支持,占有絕大部分的市場份額。智能手機(jī)也可以應(yīng)用于測量數(shù)據(jù)的記錄和處理工作,已有很多專家學(xué)者在此方面進(jìn)行了研究和程序開發(fā)。測量人員以前曾經(jīng)普遍使用各種專門的記錄手簿,利用計算器作輔助計算,這種手工作業(yè)方式的效率偏低。后來出現(xiàn)了面向工程技術(shù)人員使用的可編程計算器(例如SHARP PC—E500,CASIO fx—5800P等),可部分減少測量人員的數(shù)據(jù)記錄和處理工作,以及隨后出現(xiàn)的各種掌上電腦(PDA:Personal Digital Assistant),所有這些電子設(shè)備都需花費一定數(shù)量的資金購買并深入研究程序開發(fā)技巧。然而隨著智能手機(jī)的出現(xiàn),這些可編程計算器或掌上電腦在測量工作中將逐漸被淘汰。由于智能手機(jī)用途廣泛,且已成為人們必備的日常生活用品,測量技術(shù)人員研究基于Android系統(tǒng)的測量程序開發(fā)技術(shù),提升其使用價值,無疑是具有重要意義的。目前手機(jī)應(yīng)用軟件市場可提供下載的各種程序眾多,但專用于測繪生產(chǎn)作業(yè)的卻很少,其中一個重要原因是廣大測繪技術(shù)人員還未掌握基于Android系統(tǒng)的測量程序設(shè)計方法。本文以三個簡單測量工作(前方交會、單一導(dǎo)線和水準(zhǔn)路線)的計算程序開發(fā)為例,分析其中遇到的一些問題和解決方法,希望對相關(guān)技術(shù)人員有所幫助。

    一、Android應(yīng)用程序開發(fā)簡介

    Android是Google公司發(fā)布的基于Linux內(nèi)核的開源手機(jī)平臺,包括操作系統(tǒng)、中間件和各種應(yīng)用軟件。中間件是指Google公司為Android應(yīng)用程序開發(fā)而專門提供的各種函數(shù)庫和運行時環(huán)境,以及應(yīng)用程序框架,程序員可以很方便地在此基礎(chǔ)上開發(fā)各種應(yīng)用程序。Android應(yīng)用程序開發(fā)類似于在Windows平臺上用Visual Studio集成開發(fā)環(huán)境作可視化編程,其工作過程可分為兩部分:GUI界面設(shè)計和編寫程序代碼。Android平臺的應(yīng)用開發(fā)語言是Java,開發(fā)環(huán)境可以選用Eclipse+ADT或Android Studio,所有這些工具都可以從互聯(lián)網(wǎng)免費下載使用。Eclipse是IBM公司在2000年11月以開放源碼的授權(quán)和運作模式發(fā)布的,程序員可通過增加插件使其成為多種計算機(jī)語言(例如Java、C/C++、COBOL、PHP、Perl、Python等)的開發(fā)工具,作Android應(yīng)用程序開發(fā)必須先下載并安裝ADT插件(Android Development Toolkits)。Eclipse提供了對多種平臺特性的支持,使用時間較長,擁有大量的用戶群,但Google公司為了方便開發(fā)者基于Android開發(fā),在2013年首次推出Android Studio,并建議廣大Android開發(fā)者盡快放棄Eclipse+ADT的開發(fā)環(huán)境,改為使用Android Studio[1][2]。在開發(fā)環(huán)境中完成GUI界面設(shè)計和程序代碼輸入后,可通過Android虛擬設(shè)備(AVD:Android Virtual Device)測試運行。AVD的運行界面如同真實手機(jī),但啟動較慢,為此可使用第三方提供的Genymotion工具代替[1,3]。程序員還可以將手機(jī)與計算機(jī)系統(tǒng)相連,直接用手機(jī)進(jìn)行測試。已測試成功的程序即可在手機(jī)上安裝運行,投入使用。

    五、程序設(shè)計的一些經(jīng)驗

    作者初學(xué)Android應(yīng)用程序開發(fā),在編程過程中也不可避免地遇到許多困難,經(jīng)過反復(fù)測試終于一一解決??偨Y(jié)出如下一些經(jīng)驗:

    1.首先應(yīng)根據(jù)具體問題,確定窗體界面的數(shù)量。以上的前方交會程序比較簡單,只有一個Activity,程序啟動后輸入有關(guān)數(shù)據(jù),然后單擊命令按鈕即可獲得計算結(jié)果。單一導(dǎo)線和水準(zhǔn)路線由于區(qū)分多種類型,需要分別提供窗體界面,使編程工作更加復(fù)雜。

    2.由于手機(jī)屏幕尺寸有限,在界面設(shè)計時不宜使用太多的控件。以上三個程序在接收一系列的角度、距離或高差觀測值時,只采用一個編輯框控件,各數(shù)據(jù)依次錄入,彼此之間以逗號隔開。在程序代碼中調(diào)用split()方法可自動區(qū)分各觀測值,從而使界面簡潔,方便使用。這種方法還可用于區(qū)分點名和坐標(biāo)(或高程)數(shù)據(jù),從而在同一個編輯框中可以輸入已知點的完整信息(點名+該點的坐標(biāo)或高程數(shù)據(jù))。

    3.Intent通常用于在一個窗體界面(MainActivity)中啟動另一個窗體界面(AcitivityToStart),這時應(yīng)指明AcitivityToStart對應(yīng)的類,即所謂Intent的“顯式調(diào)用”:

    Intent intent=new Intent(MainActivity.this,ActivityToStart.class);

    startActivity(intent);

    但是由于單一導(dǎo)線和水準(zhǔn)路線都區(qū)分多種類型,分別有各自的窗體界面,它們屬于不同的類,因此不能直接按照上述方法操作,否則系統(tǒng)會提示編譯錯誤。這時可以通過設(shè)置Component屬性來確定將啟動哪個窗體界面,從而解決這一問題。有關(guān)的代碼如下:

    ComponentName comp=null;

    switch(dxType){ // dxType表示導(dǎo)線類型,在選擇界面中指定

    case 1: //選擇支導(dǎo)線

    comp=new ComponentName(MainActivity.this,ZhiActivity.class); break;

    case 2: //選擇閉合導(dǎo)線

    comp=new ComponentName(MainActivity.this,BiheActivity.class); break;

    case 3: //選擇附合導(dǎo)線

    comp=new ComponentName(MainActivity.this,F(xiàn)uheActivity.class); break; }

    Intent intent=new Intent();

    intent.setComponent(comp);

    MainActivity.this.startActivity(intent);

    4.在單一導(dǎo)線的測量計算程序中,已知點和未知點都具有多種屬性(包括點名,x坐標(biāo)和y坐標(biāo)),因此應(yīng)當(dāng)開發(fā)相應(yīng)的point類,將已知點和未知點都作為該類的對象進(jìn)行創(chuàng)建,從而提高代碼的使用效率。水準(zhǔn)路線的測量計算程序也有同樣的問題,可以同樣處理。

    本文針對三個簡單測量問題(前方交會、單一導(dǎo)線和水準(zhǔn)路線),研究基于Android智能手機(jī)平臺的測量程序設(shè)計方法,編制出相關(guān)程序,并在真實手機(jī)上測試成功。這些程序還可以作進(jìn)一步的改進(jìn),例如增加容錯功能和異常處理機(jī)制,將計算結(jié)果以報表形式輸出等。智能手機(jī)的功能很多,以智能手機(jī)為平臺的Android應(yīng)用程序開發(fā)也具有豐富的內(nèi)容,學(xué)習(xí)Android應(yīng)用程序開發(fā)應(yīng)當(dāng)首先學(xué)習(xí)Java編程語言[1]。另一方面,Android應(yīng)用程序不僅用于智能手機(jī),也可用于智能電視、游戲機(jī)和一些可穿戴的智能設(shè)備(例如手表和眼鏡),甚至用于汽車和機(jī)器人的控制系統(tǒng)設(shè)計,因此這項技術(shù)具有重大的應(yīng)用價值,必然會激起更多學(xué)生和科技人員的興趣。

    參考文獻(xiàn):

    [1]李剛.瘋狂Android講義(第3版)[M].北京:電子工業(yè)出版社,2015.

    [2]尹孟征.基于Android的APP開發(fā)平臺綜述[J].通訊電源技術(shù),2016,33(4).

    [3]王向輝,張國印,沈潔.Android應(yīng)用程序開發(fā)(第3版)[M].北京:清華大學(xué)出版社,2016.

    [4]程效軍,鮑峰,顧孝烈.測量學(xué)(第五版)[M].上海:同濟(jì)大學(xué)出版社,2016.

    猜你喜歡
    Android系統(tǒng)程序設(shè)計智能手機(jī)
    智能手機(jī)是座礦
    智能手機(jī)臉
    英語文摘(2020年5期)2020-09-21 09:26:30
    基于Visual Studio Code的C語言程序設(shè)計實踐教學(xué)探索
    從細(xì)節(jié)入手,談PLC程序設(shè)計技巧
    電子制作(2019年9期)2019-05-30 09:42:04
    假如我是一部智能手機(jī)
    趣味(語文)(2018年8期)2018-11-15 08:53:00
    Android下的機(jī)械式電表數(shù)字識別技術(shù)研究
    高職高專院校C語言程序設(shè)計教學(xué)改革探索
    基于Android系統(tǒng)的掌上班級課表與學(xué)生考勤管理系統(tǒng)
    基于GPS和iBeacon的智能校園信息發(fā)布平臺設(shè)計與實現(xiàn)
    基于增強(qiáng)現(xiàn)實技術(shù)的導(dǎo)航系統(tǒng)研究
    霸州市| 桂平市| 剑川县| 蒙阴县| 沽源县| 越西县| 肥东县| 彝良县| 益阳市| 通许县| 扎囊县| 二手房| 丽江市| 壤塘县| 巴彦淖尔市| 韶山市| 修文县| 故城县| 天门市| 闻喜县| 托克托县| 信阳市| 麻城市| 诸城市| 东辽县| 吉安市| 关岭| 南靖县| 承德市| 丽江市| 荥阳市| 五家渠市| 罗山县| 开化县| 府谷县| 三门县| 涿州市| 保靖县| 大方县| 无锡市| 唐河县|