您好, 訪客   登錄/注冊

兒童失蹤預警平臺的設計與實現

來源:用戶上傳      作者:

  [摘要]在信息化快速發展的當今社會,借助網絡的力量幫助失蹤兒童重歸家庭是最好的選擇,因此研發一款兒童失蹤預警平臺App尤為重要,該平臺借助成熟的移動互聯網技術和GIS地理信息系統技術的支持,并采用WebView與原生App混合開發的模式完成,本系統包括失聯模塊,用戶信息設置及預警模塊三個模塊,該平臺實現了用戶可以不用登錄一鍵通話報警功能,拍照的功能,定位的功能,發短信的功能。該平臺通過將家長、失蹤兒童、警方、以及社會大眾的聯動機制,實現了線索共享,能在第一時間獲取失蹤兒童的線索,有一款兒童失蹤預警平臺是非常必要的。
  [關鍵詞]失蹤預警 Hybire開發模式 WebView
  1.引言
  在美國,兒童丟失尋回率能夠達到97.7%,而在中國,據不完全統計不足1%。現在22個國家建立了符合自己本國國情的兒童失蹤預警平臺,而在中國還是個空白,社會大眾期望能有一個符合中國國情的兒童是蹤預警平臺。
  兒童在脫離父母及其監護人的時間越長,那么這個孩子的找回的概率就會降低,真正的預防是提升全民的兒童失蹤防范的意識,加大兒童失蹤犯罪的打擊力度,建立一套全社會的監護體系,而不是依靠組織或者個人的幫助。
  2系統設計
  2.1總體設計
  經過需求分析,此預警平臺分為失聯平臺,預警平臺,我的設置三個模塊。使用了騰訊地圖SDK實現定位功能,調用系統發短息及撥打電話等功能。此系統可以快速建立兒童失蹤預警時的家長,兒童,警方,及社會大眾的響應體系,線索共享快速的鎖定目標,解救兒童,并且完善國內此項平臺的空白,完善社會的響應機制。
  2.2系統工作流程
  用戶登錄,要先經過用戶名和密碼的驗證,驗證通過之后,就可以進行下面的操作。
 ?。?)失聯平臺
  此處用戶可以在不登錄的情況下瀏覽失蹤兒童的頭像姓名年齡等簡要的信息,若發現是疑似兒童可以點擊相應兒童照片進入下級頁面,此處可以看到失蹤兒童的詳細信息,可以選擇撥打電話反饋到110報警平臺,或者登陸后將此預警線索反饋給家長。
 ?。?)預警平臺
  已經添加丟失兒童檔案的用戶可以選擇發布預警,填寫丟失地點時間,詳細描述,以短息的形式一鍵發布到110報警平臺并同步到兒童失蹤預警平臺,發布成功后用戶可以查看自己的預警信息,并查看反饋線索。
  (3)我的設置
  此模塊用戶可以填寫一些個人信息,更改密碼頭像,申請實名認證等操作。
  2.3系統數據庫設計
 ?。?)用戶登錄數據,包括登錄名(可以舊電話號碼或用戶名字),用戶密碼,設備類型(1=ios,2=android,3=wechat),經度,緯度,返回信息(結果,結果說明,用戶ID,用戶token)等信息。
 ?。?)兒童檔案數據,包括用戶ID,返回值(結果,結果說明,兒童ID,兒童姓名,照片集的第一張,是否實名認證,是否預警中)
  (3)發布預警數據,包括用戶ID,兒童ID,丟失時間,丟失地址,用戶位置,描述關鍵詞過濾,返回值(結果代碼,結果說明,預警ID)
  3詳細設計
  3.1系統設計目標分析
  本系統主要功能如下:
  1.用戶在未登錄的情況下可以瀏覽其他家長發布的預警信息,可以查看丟失兒童的詳細列表,若發現有什么重要線索此時可以反饋警方同時將此條線索發到家長手機當中。
  2.用戶在注冊成功后登錄,可以選擇添加自己的或者親屬的兒童檔案,并及時的發布到預警平臺。
  3.2系統功能模塊介紹
  3.2.1登錄模塊
  該系統為用戶提供三處登錄注冊的入口,方便用戶的登錄與注冊。
 ?。?)注冊
  新用戶可以通過手機號進行注冊,填入手機號后會給用戶手機發送一條驗證碼,填上初始密碼,再次確認密碼,無誤后完成注冊。
 ?。?)登錄
  擁有賬號或者剛剛注冊成功的用戶可以點擊登錄,此時用戶可以選擇對自己的個人賬號進行設置,上傳頭像,實名認證等操作。
  3.2.2主界面模塊
  主界面有三大部分,分別是失蹤兒童,預警平臺,我的設置,相應的主界面。
  (1)失蹤兒童
 ?、偈й檭和斜?
  該界面在用戶啟動程序后無論登錄與否都會瀏覽此頁面,該界面主要展示失蹤兒童的姓名,性別,年齡,丟失時間和地點等重要信息,用戶可以隨機點擊查看更加詳細的內容。
  ②丟失詳情
  用戶在點擊某一個丟失兒童的時候會進入相應丟失,此界面會展示更加詳細的兒童檔案,可以瀏覽照片,體型以及丟失的詳細描述。
 ?、鄯答伨?
  點擊反饋警方,將撥打電話到110報警平臺,將線索反饋到警方。
 ?、芊答伡议L
  點擊反饋家長,將線索信息發到家長手機當中。
 ?。?)預警平臺
 ?、侔l布預警
  用戶在添加完兒童丟失檔案的情況下,可以選擇發布預警,選擇檔案,選擇丟失時間地點以及詳細描述等,可以將此條預警信息發送到預警平臺,并以短信的形式發送到110報警平臺,及時得到警方的幫助。
  該平臺用到的數據是由php所編寫的后臺,并以接口的方式進行數據的請求,下面我以發布預警為例,簡單的介紹一下此平臺的數據操作流程。
  首先此平臺運用Volley的數據請求框架對數據的請求進行操作。Volley是Android平臺上的網絡通訊庫,能使網絡通訊更快,更簡單,更健壯。首先聲明Json對象作reqData為請求后臺數據庫接口的參數。
  這樣會將獲取到的數據顯示到UI上面。
 ?、谖业念A警   用戶在發布成功預警的時候,點擊我的預警會瀏覽發布預警的情況,以及查看是否有線索的反饋。
 ?。?)我的設置
  此處用戶可以對自己的賬號進行操作,更改一些個人信息。
  4系統測試
  (1)小米手機物理返回按鍵失靈
  Miui操作系統,對Android內核做了一定的更改,導致小米的物理返回按鍵在使用webview控件的時候不會觸發onBackPressed()這個方法,直接導致無法監聽物理返回按鈕的點擊事件同樣無法獲得頁面的標題,解決的辦法是將頁面每次訪問的標題存到一個數組當中,這樣在返回的時候直接去數組里面取值,每返回一次數組的最后一個值去掉數量并減一。
  (2)RecycleView的item中有Button或者CheckBox焦點沖突的問題。
  在開發過程當中遇到這樣的一個問題,在自定義RecycleView的時候,自己的Adapter去繼承baseadapter,在adapter中按照需求進行編寫,問題就出現了,可能會發生點擊每一個item的時候沒有反應,無法獲取焦點。經過查找資料,發現出現此類問題的原因是因為在自己定義的1tem中存在諸如imageButton,button,checkbox等子類控件,這些子類控件會優先獲取到焦點,所以當點擊item時發生變化的是子控件,item本身并沒有響應。
  這時候就可以用descendantfocusability來解決,其屬性值有三個:beforedescendants:viewgroup會優先其子類控件獲得焦點,afterdescendants:viewgroup只有當子類控件不去要獲取焦點的時才獲取焦點,blocksdescendants:viewgroup會覆蓋子類控件而直接獲取焦點。
  (4)android webview里HTML5的地理位置定位,不能定位成功且不能顯示地圖,下面是具體的解決方法。
 ?、賳⒂脭祿欤瑆ebSettings.setDatabaseEnabled(true);
 ?、趩⒂玫乩矶ㄎ唬瑆ebSettings.setGeolocationEnabled( true);
 ?、墼O置定位的數據庫路徑,webSettings.setGeolicationDatabasePath( dir);
 ?、茏钪匾姆椒ǎ欢ㄒO置,webSettings.setDomStorageEnabled( true);
  5結語
  兒童失蹤預警平臺具有功能簡單易懂,操作方便,用戶可以輕松使用。通過兒童失蹤預警平臺的設計與實現,我學會了很多Android開發方面的知識,編程技能與技巧也得到了很大的提高,受益匪淺。在研發設計過程充滿了無盡的回憶和收獲。此外在設計的過程中,走了很多的彎路發現自己有很多的不足,對開發工具的掌握不是很全面,因此我應該多學習一些編程技巧與思想,使自己的能力得到提升。
轉載注明來源:http://www.hailuomaifang.com/2/view-14861332.htm

?
99久久国产综合精麻豆