freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

信息同步系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)(編輯修改稿)

2025-02-12 07:49 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 + (getApplicationContext(), (packname)))。 // 將child添加到ll_clean控件上。 (child)。 break。 } } 。 }。 7) 掃描出帶有緩存的應(yīng)用程序 private void scanPackages() { // 開(kāi)啟一個(gè)異步任務(wù)掃描帶有緩存的應(yīng)用程序 new AsyncTaskVoid, Integer, Void() { // 存儲(chǔ)手機(jī)中所有已安裝的應(yīng)用程序的包信息 ListPackageInfo packinfos。 @Override protected Void doInBackground(Void... params) { int i = 0。 for (PackageInfo info : packinfos) { // 獲取到應(yīng)用程序的包名信息 String packname = 。 getSize(pm, packname)。 i++。 try { (100)。 } catch (InterruptedException e) { // TODO Autogenerated catch block ()。 } publishProgress(i)。 } return null。 } @Override protected void onPreExecute() { cacheinfo = new HashMapString, Long()。 packinfos = (0)。 (())。 (開(kāi)始掃描...)。 ()。 } @Override protected void onPostExecute(Void result) { (掃描完畢... + 發(fā)現(xiàn)有 + () + 個(gè)緩存信息)。 (result)。 } @Override protected void onProgressUpdate(Integer... values) { (values[0])。 (正在掃描 + values[0] + 條目)。 (values)。 } }.execute()。 } 8)通過(guò)反射的方式調(diào)用packageManager中的方法,這里每次掃描到一個(gè)項(xiàng)目就以消息的形式通知主線程,添加到結(jié)果列表里去。獲取緩存大小調(diào)用了PackageManager的隱藏函數(shù)getPackageSizeInfo: private void getSize(PackageManager pm, String packname) { try { // 獲取到getPackageSizeInfo。調(diào)用getPackageSizeInfo方法需要在清單文件中配置權(quán)限信息:usespermission // android:name=/ Method method = ().getDeclaredMethod(getPackageSizeInfo, new Class[]{, })。 // 執(zhí)行g(shù)etPackageSizeInfo方法 (pm, new Object[]{packname, new MyObersver(packname)})。 } catch (Exception e) { ()。 } } 9) ,該接口通過(guò)aidl調(diào)用。 private class MyObersver extends { private String packname。 public MyObersver(String packname) { = packname。 } @Override public void onGetStatsCompleted(PackageStats pStats, boolean succeeded) throws RemoteException { // 以下是根據(jù)ApplicationsState代碼中的SizeInfo對(duì)象中定義的 // 緩存大小 long cacheSize = 。 // 代碼大小 long codeSize = 。 // 數(shù)據(jù)的大小 long dataSize = 。 // 判斷這個(gè)包名對(duì)應(yīng)的應(yīng)用程序是否有緩存,如果有,則存入到集合中。 if (cacheSize 0) { Message msg = ()。 = ADD_ONE_RESULT。 = packname。 (msg)。 (packname, cacheSize)。 } } } 10)獲取到應(yīng)用程序的名稱(chēng) private String getApplicationName(String packname) { try { PackageInfo packinfo = (packname, 0)。 return (pm).toString()。 } catch (Exception e) { ()。 return packname。 } } 11) 獲取到應(yīng)用程序的圖標(biāo) private Drawable getApplicationIcon(String packname) { try { PackageInfo packinfo = (packname, 0)。 return (pm)。 } catch (Exception e) { ()。 return getResources().getDrawable()。 } }} 清單文件需要添加權(quán)限:usespermission android:name= / 系統(tǒng)優(yōu)化處理流程 由于影響系統(tǒng)運(yùn)行速度的主要原因是手機(jī)中的緩存占用了大量資源,因此本模塊主要是對(duì)手機(jī)緩存的清理,軟件首先掃描手機(jī)中所有的安裝包信息,并根據(jù)包名獲取每個(gè)應(yīng)用的緩存信息,當(dāng)掃描的緩存后提示用戶(hù)進(jìn)行清理,其處理流程如圖開(kāi)始系統(tǒng)優(yōu)化讀取安裝包信息讀取應(yīng)用緩存信息是否清理是清理操作結(jié)束否 系統(tǒng)優(yōu)化處理流程圖 子功能模塊的測(cè)試1) 進(jìn)程管理測(cè)試圖 4 模塊二 高級(jí)工具模塊 高級(jí)工具包含歸屬地查詢(xún)、來(lái)電歸屬地服務(wù)、程序鎖三個(gè)子功能。開(kāi)始高級(jí)工具號(hào)碼歸屬地查詢(xún)來(lái)電歸屬地查詢(xún)程序鎖輸入待查號(hào)碼開(kāi)啟服務(wù)登錄顯示查詢(xún)結(jié)果設(shè)置顯示樣式和位置選著要加鎖的程序關(guān)閉程序鎖結(jié)束 高級(jí)工具處理的流程圖 ①公共類(lèi)AppLockDao:用于創(chuàng)建并打開(kāi)程序鎖的數(shù)據(jù)庫(kù)的類(lèi)AppLockProvider:用于獲取程序鎖的信息的類(lèi)AddressService:獲取號(hào)碼歸屬地信息的類(lèi)WatchDogService:監(jiān)控運(yùn)行進(jìn)程的類(lèi),若發(fā)現(xiàn)當(dāng)前運(yùn)行進(jìn)程為加鎖程序,則彈出輸入密碼界面②界面類(lèi)AppLockActivity:程序鎖的界面類(lèi)AToolsActivity:高級(jí)工具的主界面類(lèi)LockScreenActivity:加鎖程序輸入密碼的界面類(lèi)QueryNumberActivity:查詢(xún)號(hào)碼歸屬地的界面類(lèi) 高級(jí)工具頁(yè)面設(shè)計(jì)1)創(chuàng)建android ponent:AToolsActivity,并勾選layout文件的創(chuàng)建選項(xiàng):。更新MainActivity的item點(diǎn)擊事件處理代碼,點(diǎn)擊“高級(jí)工具”項(xiàng)目時(shí)打開(kāi)對(duì)應(yīng)的頁(yè)面:case 7: //高級(jí)工具 intent = new Intent(, )。 startActivity(intent)。AToolsActivity的實(shí)現(xiàn)代碼:1 號(hào)碼歸屬地?cái)?shù)據(jù)庫(kù)文件復(fù)制成功則顯示“號(hào)碼歸屬查詢(xún)”頁(yè)面,否則顯示錯(cuò)誤信息因?yàn)橘Y源文件較大,復(fù)制需要使用線程,因此這里采用消息接受處理結(jié)果。 private Handler handler = new Handler() { @Override public void handleMessage(Message msg) { (msg)。 switch () { case COPY_SUCCESS: //復(fù)制成功,進(jìn)度條關(guān)閉,加載查詢(xún)頁(yè)面 ()。 loadQueryNumberUI()。 break。 case COPY_FAILED: //復(fù)制失敗,進(jìn)度條關(guān)閉,顯示錯(cuò)誤信息 ()。 (,復(fù)制數(shù)據(jù)失敗,0).show()。 break。 } } }。3) 號(hào)碼歸屬地查詢(xún)單擊事件 (new () { @Override public void onClick(View view) { // final File file = new File(getFilesDir(), )。 if (() amp。amp。 () 0) { //簡(jiǎn)單判斷文件合法性,如果存在且不為空則認(rèn)為數(shù)據(jù)庫(kù)存在,加載號(hào)碼查詢(xún)頁(yè)面 loadQueryNumberUI()。 }else { //文件不存在,復(fù)制過(guò)去 pd = new ProgressDialog()。 //水平進(jìn)度條 ()。 ()。
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1