<dfn id="is4kg"></dfn>
  • <ul id="is4kg"></ul>
  • <abbr id="is4kg"></abbr>
  • <ul id="is4kg"></ul>
    <bdo id="is4kg"></bdo>

    曙海教育集團(tuán)論壇3G手機(jī)技術(shù)專區(qū)Android應(yīng)用開發(fā) → android 應(yīng)用類APP開發(fā)小結(jié)——android Google map 小應(yīng)用


      共有7192人關(guān)注過(guò)本帖樹形打印

    主題:android 應(yīng)用類APP開發(fā)小結(jié)——android Google map 小應(yīng)用

    美女呀,離線,留言給我吧!
    wangxinxin
      1樓 個(gè)性首頁(yè) | 博客 | 信息 | 搜索 | 郵箱 | 主頁(yè) | UC


    加好友 發(fā)短信
    等級(jí):青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊(cè):2010-11-12 11:08:23
    android 應(yīng)用類APP開發(fā)小結(jié)——android Google map 小應(yīng)用  發(fā)帖心情 Post By:2010-12-3 11:20:59

    做了一個(gè)小應(yīng)用智能情景的切換,這個(gè)應(yīng)用是學(xué)習(xí)android開發(fā)以來(lái)應(yīng)用類開發(fā)的比較滿意的一個(gè)。雖然它只有一個(gè)view 一個(gè)activity,但是卻囊括了android的很多特性。借此機(jī)會(huì),和大家分享一下這個(gè)小應(yīng)用。

     

    先上截圖:

     

    應(yīng)用的主要功能是根據(jù)適當(dāng)?shù)那榫埃ㄈ绲攸c(diǎn),手機(jī)狀態(tài)等)為用戶自動(dòng)的切換情景模式。

    比方說(shuō):手機(jī)向上是鈴音+震動(dòng),當(dāng)開會(huì)時(shí),將手機(jī)翻轉(zhuǎn),將自動(dòng)切換成靜音模式。

    還可以根據(jù)經(jīng)緯度,到達(dá)一個(gè)地方后自動(dòng)切換成用戶預(yù)先設(shè)置的情景模式。

    (當(dāng)然,由于沒(méi)找到合適的經(jīng)緯度換算工具,經(jīng)緯度的判斷目前只能是精確位置,不是范圍值。

    因此只能算是個(gè)學(xué)習(xí)的小應(yīng)用了,實(shí)際的應(yīng)用還有待完善啊。如果有高手知道的話,麻煩告訴我下。萬(wàn)分感謝)

     

    -------------------------廢話不多說(shuō)開始代碼部分-----------------------------------------------------

    雖然是一個(gè)只有一個(gè)頁(yè)面的小應(yīng)用,但是

    麻雀雖小,五臟俱全

    這個(gè)應(yīng)用的功能點(diǎn)主要有:

         改變情景模式

         實(shí)時(shí)獲取地理位置

         實(shí)時(shí)判斷手機(jī)重力狀態(tài)

    用到的技術(shù)包括:

    1.android Google map的應(yīng)用

    2.Android組件的使用
        Activity(MapActivity)
        Service
        Broadcastreceiver

    3.Xml解析
    4.文件存儲(chǔ)
    5.傳感器使用
    6.底層繪圖
    7.自定義view

     

    由于使回頭看代碼,我就從簡(jiǎn)單的部分一步步介紹。

     

    首先是權(quán)限問(wèn)題,很多新手都犯了這個(gè)毛病,程序出錯(cuò),往往是權(quán)限沒(méi)有添加。

    Java代碼 復(fù)制代碼
    1. <!-- 網(wǎng)絡(luò)鏈接 -->   
    2.    <uses-permission android:name="android.permission.INTERNET"/>   
    3.    <!-- 地圖 -->   
    4.    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>   
    5.    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>   
    6.    <!-- 讀寫權(quán)限 -->   
    7.    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />   
    8.    <uses-permission android:name="android.permission.WRITE" />  

     這個(gè)應(yīng)用需要網(wǎng)絡(luò)連接的權(quán)限,因?yàn)镚oogle map是實(shí)時(shí)更新的么。然后是GPS傳感器關(guān)于地理位置的權(quán)限。最后需要存儲(chǔ)用戶的記錄點(diǎn),所以有文件讀寫的權(quán)限。

     

    為了記錄用戶記錄的情景地點(diǎn),我使用了XML作為存儲(chǔ)的標(biāo)準(zhǔn),并將文件存在了SD卡上

    XML解析

    網(wǎng)絡(luò)上有很詳細(xì)的各種解析方式,我采用了其中的一種。如果想了解其他的請(qǐng)Google。。。。。

    記錄地點(diǎn)信息,我定義了一個(gè)POJO類

    Java代碼 復(fù)制代碼
    1. public class RecordLocation {   
    2.     private String location_Id;   
    3.     private String location_ring;   
    4.     private double location_latitude;   
    5.     private double location_longitude;   
    6.     private GeoPoint    point;   
    7. ...篇幅關(guān)系,其他的略  

     XML的解析器,和網(wǎng)絡(luò)上的其他文章一樣就不多說(shuō)了。能拿來(lái)用就成。

    Java代碼 復(fù)制代碼
    1. public List<RecordLocation> parse(String xml) {   
    2.         final RecordLocation currentMessage = new RecordLocation();   
    3.         RootElement root = new RootElement("Locations");   
    4.         final List<RecordLocation> messages = new ArrayList<RecordLocation>();   
    5.        // Element channel = root.getChild("RespInfo");   
    6.         Element item = root.getChild("Location");   
    7.         item.setEndElementListener(new EndElementListener(){   
    8.             public void end() {   
    9.                 messages.add(currentMessage.copy());   
    10.             }   
    11.         });   
    12.         item.getChild("id").setEndTextElementListener(new EndTextElementListener(){   
    13.             public void end(String body) {   
    14.                 currentMessage.setLocation_Id(body);   
    15.             }   
    16.         });   
    17.         item.getChild("ring").setEndTextElementListener(new EndTextElementListener(){   
    18.             public void end(String body) {   
    19.                 currentMessage.setLocation_ring(body);   
    20.             }   
    21.         });   
    22.         item.getChild("latitude").setEndTextElementListener(new  
    23.           EndTextElementListener(){   
    24.             public void end(String body) {   
    25.                 currentMessage.setLocation_latitude(Double.valueOf(body));   
    26.             }   
    27.         });   
    28.         item.getChild("longitude").setEndTextElementListener(new EndTextElementListener(){   
    29.             public void end(String body) {   
    30.                 currentMessage.setLocation_longitude(Double.valueOf(body));   
    31.             }   
    32.         });   
    33.   
    34.         try {   
    35.             InputStream   inputStream   =   new   ByteArrayInputStream(xml.getBytes());   
    36.             Xml.parse(inputStream, Xml.Encoding.UTF_8,   
    37.             root.getContentHandler());   
    38.         } catch (Exception e) {   
    39.             throw new RuntimeException(e);   
    40.         }   
    41.         return messages;   

    支持(0中立(0反對(duì)(0單帖管理 | 引用 | 回復(fù) 回到頂部

    返回版面帖子列表

    android 應(yīng)用類APP開發(fā)小結(jié)——android Google map 小應(yīng)用








    簽名
    主站蜘蛛池模板: 一区二区国产在线观看| 人妻少妇精品久久| 97高清国语自产拍中国大陆| 成人超污免费网站在线看| 亚洲日韩av无码中文| 男女抽搐一进一出无遮挡| 国产成人天天5g影院| A级毛片成人网站免费看| 成人午夜小视频| 亚洲AV无码一区二区一二区| 欧美激情视频一区二区三区| 四虎影视永久在线观看| 黄床大片30分钟免费看| 在线观看视频99| 丰满少妇人妻无码专区| 日韩欧美色综合| 亚洲白嫩在线观看| 看免费毛片天天看| 国产亚洲视频在线| 18禁裸男晨勃露j毛免费观看| 大学生a级毛片免费观看| 丰满岳乱妇一区二区三区| 日韩在线一区二区三区免费视频| 亚洲精品成人a| 狠狠色综合色区| 国产免费a级片| **实干一级毛片aa免费| 国内精品人妻无码久久久影院导航| 中文成人无字幕乱码精品区| 日本高清在线免费| 亚洲国产精品无码成人片久久| 爱情岛永久地址www成人| 国产a级特黄的片子视频| 调教贱奴女警花带乳环小说| 国产精品国产三级国产潘金莲| www.尤物视频.com| 小蝌蚪app在线观看| 久久国产精品一区| 日韩毛片最新看| 亚洲国产香蕉碰碰人人| 欧美高清免费一级在线|