編輯:Android開發實例
本文對之前手機衛士開發進行一個小結。
1、SplashActivity
版本名稱的展示,從清單配置文件中獲取版本名稱,PackageManager
服務端新版本的檢測(本地版本號<服務器版本號)
展示logo
2、手機防盜
sim卡綁定:每一款手機都會有相應的卡的序列號,一旦替換掉原有電話卡,序列號會發生改變
3、手機衛士分包
基礎課程分包方式,每一個類包名,
com.itheima.db
com.itheima.db.dao 組件方式
業務邏輯劃分
例如對於icbc
com.icbc.money
com.icbc.meeting
com.icbc.travel
組件劃分(四大組件:activity,服務,廣播,內容提供者(內容解析者))
mobilesafe
com.wuyudong.mobilesafe.activity
com.wuyudong.mobilesafe.service
數據庫操作
com.wuyudong.mobilesafe.db
com.wuyudong.mobilesafe.db.dao
工具類
com.wuyudong.mobilesafe.utils
自定義控件(android原有控件,不能滿足需求),自定義組合控件
com.wuyudong.mobilesafe.view
com.wuyudong.mobilesafe.ui.widget
4、應用去頭
方式一:每個類都需要去添加此代碼
在setContentView(R.layout.activity_splash);
前設置以下代碼
requestWindowFeature(Window.FEATURE_NO_TITLE);
方式二:統一去掉所有activity的頭
@android:style/Theme.Light.NoTitleBar方式去頭,使用老版本主題樣式
修改默認樣式文件為
<style name="AppTheme" parent="AppBaseTheme">
<!-- 在去頭的同時,還保留高版本的樣式主題 -->
<item name="android:windowNoTitle">true</item>
</style>
5、packageManager獲取當前應用版本名稱,版本號
版本名稱:用於展示(陰影效果,顏色)
版本號:用於和服務端的apk比對,
如果服務器端的版本號>本地版本號 彈出對話框提示用戶更新
服務器版本號<=本地版本號 直接進入應用程序主界面
6、網絡請求發送
客戶端發送請求
服務端以流的形式返回數據,數據需轉換成字符串,(json)
7、json解析
看見什麼解析什麼,解析相應字段的時候,一定要去copy不要手寫
8、json解析異常情況
json一旦解析出現錯誤,通過斷點調試是最好的調錯方式
斷點調試常用按鈕:
綠色:跳轉到下一個斷點
紅色:斷開本次斷點調試
下一步:執行當前代碼,執行到下一步
跳轉到方法內部執行
9、xutils使用過程
(1)導入xutils的jar包
(2)添加xutils需要使用的權限
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
(3)獲取HttpUtils對象,下載指定鏈接地址的apk
(4)HttpUtils對象調用download(下載鏈接地址,下載後放置文件的路徑,下載過程中方法的回調
onStart()
onloading()
onSuccesd()
onFail() )
(5)下載apk後的安裝過程,
10、打包生成apk過程
(1)生成簽名文件,並且指定所在位置
(2)使用生成的簽名文件,給工程打包生成一個apk
11、安裝apk注意事項
升級
1,注意事項:將原有應用覆蓋掉,包名一致
2,簽名一致???
從Eclipse運行至手機上的應用,使用的是bin目錄下的應用,使用debug.keystore簽名應用
手機衛士版本一,右鍵運行至手機的,所以使用簽名是debug.keystore
手機衛士版本二,單獨打包,生成相應簽名文件heima74keystore
生成一個heima74keystore作為簽名文件的apk
簽名一致,包名不同:生成兩個手機衛士apk,包名是應用的唯一性標志
簽名不同,包名一致:覆蓋安裝失敗
版本更新流程如下:
JSON代表JavaScript對象符號。它是一個獨立的數據交換格式,是XML的最佳替代品。本章介紹了如何解析JSON文件,並從中提取所需的信息。Android提供了四個
Android應用程序可以在許多不同地區的許多設備上運行。為了使應用程序更具交互性,應用程序應該處理以適合應用程序將要使用的語言環境方面的文字,數字,文件等。在本章中,我
Android提供了許多方法來控制播放的音頻/視頻文件和流。其中該方法是通過一類稱為MediaPlayer。Android是提供MediaPlayer類訪問內置的媒體播放
Android應用程序可以在許多不同地區的許多設備上運行。為了使應用程序更具交互性,應用程序應該處理以適合應用程序將要使用的語言環境方面的文字,數字,文件等。在本章中,我