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

    曙海教育集團論壇3G手機技術專區Android應用開發 → android 應用類APP開發小結——android Google map 小應用


      共有7188人關注過本帖樹形打印

    主題:android 應用類APP開發小結——android Google map 小應用

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


    加好友 發短信
    等級:青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊:2010-11-12 11:08:23
    android 應用類APP開發小結——android Google map 小應用  發帖心情 Post By:2010-12-3 11:20:59

    做了一個小應用智能情景的切換,這個應用是學習android開發以來應用類開發的比較滿意的一個。雖然它只有一個view 一個activity,但是卻囊括了android的很多特性。借此機會,和大家分享一下這個小應用。

     

    先上截圖:

     

    應用的主要功能是根據適當的情景(如地點,手機狀態等)為用戶自動的切換情景模式。

    比方說:手機向上是鈴音+震動,當開會時,將手機翻轉,將自動切換成靜音模式。

    還可以根據經緯度,到達一個地方后自動切換成用戶預先設置的情景模式。

    (當然,由于沒找到合適的經緯度換算工具,經緯度的判斷目前只能是精確位置,不是范圍值。

    因此只能算是個學習的小應用了,實際的應用還有待完善啊。如果有高手知道的話,麻煩告訴我下。萬分感謝)

     

    -------------------------廢話不多說開始代碼部分-----------------------------------------------------

    雖然是一個只有一個頁面的小應用,但是

    麻雀雖小,五臟俱全

    這個應用的功能點主要有:

         改變情景模式

         實時獲取地理位置

         實時判斷手機重力狀態

    用到的技術包括:

    1.android Google map的應用

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

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

     

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

     

    首先是權限問題,很多新手都犯了這個毛病,程序出錯,往往是權限沒有添加。

    Java代碼 復制代碼
    1. <!-- 網絡鏈接 -->   
    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.    <!-- 讀寫權限 -->   
    7.    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />   
    8.    <uses-permission android:name="android.permission.WRITE" />  

     這個應用需要網絡連接的權限,因為Google map是實時更新的么。然后是GPS傳感器關于地理位置的權限。最后需要存儲用戶的記錄點,所以有文件讀寫的權限。

     

    為了記錄用戶記錄的情景地點,我使用了XML作為存儲的標準,并將文件存在了SD卡上

    XML解析

    網絡上有很詳細的各種解析方式,我采用了其中的一種。如果想了解其他的請Google。。。。。

    記錄地點信息,我定義了一個POJO類

    Java代碼 復制代碼
    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. ...篇幅關系,其他的略  

     XML的解析器,和網絡上的其他文章一樣就不多說了。能拿來用就成。

    Java代碼 復制代碼
    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反對(0單帖管理 | 引用 | 回復 回到頂部

    返回版面帖子列表

    android 應用類APP開發小結——android Google map 小應用








    簽名
    主站蜘蛛池模板: 狼狼综合久久久久综合网| 亚洲一区精品视频在线| 视频二区在线观看| 国内精品九九久久久精品| 久久久久亚洲av无码去区首| 欧美丰满熟妇XXXX| 免费无毒片在线观看| 色之综合天天综合色天天棕色| 国产精品无码不卡一区二区三区| 中国好声音第二季免费播放| 日本精品少妇一区二区三区 | 最近中文字幕mv手机免费高清| 免费a级毛片网站| 羞羞漫画登录页面免费| 国产真实乱子伦xxxx仙踪| jizzzz中国| 性做久久久久久免费观看| 九九免费久久这里有精品23| 欧美日韩亚洲一区| 免费无码成人av在线播放不卡| 色欲精品国产一区二区三区AV| 国产精品久久久久久久久久影院| ts人妖在线观看| 岛国在线播放v片免费| 久久精品亚洲综合专区| 最近中文字幕精彩视频| 亚洲综合久久精品无码色欲| 真实国产乱子伦在线观看| 国产乱码精品一区二区三区四川| 5060在线观看| 国内精品视频在线播放一区| 久久久久亚洲精品男人的天堂| 日韩精品一区二区亚洲av观看| 亚洲福利视频一区| 狠狠精品久久久无码中文字幕 | 91情国产l精品国产亚洲区| 天天狠天天透天干天天怕∴| 中文字幕看片在线a免费| 日本aⅴ日本高清视频影片www| 亚洲jizzjizz中国少妇中文| 欧美人与动欧交视频|