国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > PHP > 正文

巧用ThinkPHP5.1和 tufanbarisyildirim 快速解析apk

2020-03-22 19:47:21
字體:
供稿:網(wǎng)友
對于apk,我可以說只會(huì)安裝,并不知道其中有什么內(nèi)容需要記錄下來。因?yàn)檫@類的項(xiàng)目完全沒有接觸過,而且網(wǎng)上搜一下也看不到這類的開發(fā)流程和需求。本文的主要內(nèi)容是關(guān)于用ThinkPHP5.1 和tufanbarisyildirim 解析apk,感興趣的朋友可以來了解一下。

TP5獲取上傳文件并驗(yàn)證

tp5獲取上傳文件可以說是相當(dāng)?shù)暮唵危ㄗ⒁獯颂幍?file的類型是tp5封裝的File)


$file = $this- request- file( file 

這樣就可以直接的獲取上傳的文件,簡單的蛋疼。

首先驗(yàn)證文件是否上傳了并且是否為空。


if (false === ($file instanceof File)) { //文件為空,拋異常/業(yè)務(wù)處理}

然后就是驗(yàn)證文件的類型了,apk的媒體信息其實(shí)就是zip,千萬不要使用后綴名進(jìn)行判斷啊。年輕的我就是用后綴進(jìn)行判斷的。

老司機(jī)看到就建議我使用getMime方法獲取文件的媒體進(jìn)行進(jìn)行匹配。(getMime屬于tp5 File的封裝方法)


if ( application/zip !== $file- getMime()) { //文件類型錯(cuò)誤,拋異常/業(yè)務(wù)處理}

tufanbarisyildirim

加入composer


 require : { tufanbarisyildirim/php-apk-parser : dev-master  }

然后到項(xiàng)目路徑安裝一下,沒安裝composer就安裝composer或者直接從網(wǎng)上拉咯。


composer install

Parser解析apk

Parser位于 ApkParser目錄下,實(shí)例化時(shí)只需要傳入apk的全路徑名


$apkParser = new /ApkParser/Parser($file- getPathname());

以下為獲取apk中的參數(shù)


$apkParser- getManifest()- getPackageName(); //獲取apk包名$apkParser- getManifest()- getVersionCode(); //獲取apk版本號$apkParser- getManifest()- getVersionName(); //獲取apk版本名稱$apkParser- getManifest()- getMinSdk(); // 支持最低sdk的平臺$apkParser- getManifest()- getMinSdkLevel(); // 支持最低sdk的版本$apkParser- getManifest()- getTargetSdk(); // 目標(biāo)Sdk的平臺$apkParser- getManifest()- getTargetSdkLevel(); //目標(biāo)sdk的版本$labelIndex = $apkParser- getManifest()- getApplication()- getLabel(); //獲取應(yīng)用名稱的索引$apkParser- getResources($labelIndex); //獲取應(yīng)用名稱的數(shù)組$iconIndex = $apkParser- getManifest()- getApplication()- getIcon();//獲取圖標(biāo)的索引$icons = $apkParser- getResources($iconIndex); //獲取圖標(biāo)路徑的數(shù)組file_put_contents( 保存icon圖標(biāo)的全路徑名 , stream_get_contents($apkParser- getStream($icons[0]))); //把第1個(gè)圖標(biāo)轉(zhuǎn)為流后保存到相應(yīng)的目錄

個(gè)人使用這個(gè)控件時(shí)遇到點(diǎn)問題,就是應(yīng)用名稱數(shù)組,我怎么才能知道應(yīng)用名稱對應(yīng)的語言呢?因?yàn)閼?yīng)用名稱中可能有簡體中文、繁體中文、英文等。我怎么才能取出簡體中文的應(yīng)用名稱呢?

相關(guān)教程:PHP視頻教程

以上就是巧用ThinkPHP5.1和 tufanbarisyildirim 快速解析apk的詳細(xì)內(nèi)容,PHP教程

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時(shí)間聯(lián)系我們修改或刪除,多謝。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 洛宁县| 德化县| 民勤县| 沙坪坝区| 乳山市| 巴青县| 江津市| 德格县| 南安市| 香格里拉县| 盐池县| 宿州市| 文化| 松阳县| 玉田县| 湖口县| 乐昌市| 彭山县| 喀什市| 台江县| 军事| 南投市| 延长县| 洛浦县| 崇州市| 邳州市| 香港 | 会泽县| 化德县| 湘潭县| 睢宁县| 申扎县| 抚州市| 琼结县| 葵青区| 淮安市| 新营市| 乐业县| 玉溪市| 洪泽县| 宁强县|