總網頁瀏覽量

關於我自己

我的相片
人生的必修課是接受無常,人生的選修課是放下執著。

2021年6月9日 星期三

[文件大師HD]擷取安裝於Device中的APK做備份

進入Device的shell環境中
$adb shell

從Market下載的檔案 & adb install的檔案 & 從SD卡安裝 & 自己開發的AP
可從以下查到info
#cd data/app/

系統預設的(整合進image的AP)則放在以下路徑
#cd system/app/

:four_leaf_clover::four_leaf_clover::four_leaf_clover::four_leaf_clover::four_leaf_clover::four_leaf_clover::four_leaf_clover::four_leaf_clover::four_leaf_clover::four_leaf_clover::four_leaf_clover::four_leaf_clover::four_leaf_clover::four_leaf_clover::four_leaf_clover::four_leaf_clover::four_leaf_clover:

但市面上沒有root權限的Device是無法使用adb shell來瀏覽&備份我們所需的資料
此時可以借助一個好用的軟體 - 文件大師HD -

下載.apk檔

✿ 開啟「文件大師HD」

✿ Click「應用與遊戲」

在此會列出所有可備份的APP,勾選要抓出.apk檔的應用程式
✿ Click底部功能列左邊數來第二個(備份)icon


click「本地備份」


✿ Toast顯示.apk檔被放到\Phone\storage\emulated\0\APK\路徑下
 不過實際上是從「電腦\Phone\backup_apps」找到.apk檔


✿ 傳輸.apk至其它Android裝置便可直接執行安裝



2018年3月12日 星期一

【Android APP】【Automation】Monkey指令

Monkey常用命令
1,adb shell pm list packages 表示檢視手機內所有的包名。

2,-help 列出簡單使用指南。
如:adb shell monkey -help

3,-throttle < milliseconds> 在事件之間插入固定延遲。通過這個選項可以減緩Monkey的執行速度。如果不指定該選項,Monkey將不會被延遲,事件將盡可能快地被產成。
如:adb shell monkey -throttle 300 -v 100 表示執行100個偽隨機使用者事件流,事件間隔為300毫秒。

4,-p < allowed-package-name> 表示如果用此引數指定了一個或幾個包,Monkey將只允許系統啟動這些包裡的Activity。如果你的應用程式還需要訪問其它包裡的Activity(如選擇取一個聯絡人),那些包也需要在此同時指定。如果不指定任何包,Monkey將允許系統啟動全部包裡的Activity。要指定多個包,需要使用多個 -p選項,每個-p選項只能用於一個包。
如:adb shell monkey -p com.jzf.simple1 -p com.jzf.simple2 100
表示對包「com.jzf.simple1」和「com.jzf.simple2」執行100個偽隨機使用者事件流。

5,-ignore-crashes 表示當應用程式崩潰或遇到任何型別的未處理的異常時,Monkey將停止。如果指定此選項,則Monkey將繼續向系統傳送事件,直到計數完成。

6,-ignore-timeouts 表示當應用程式遇到任何型別的超時錯誤(如「應用程式無響應」對話方塊)時,Monkey將停止。如果指定此選項,則Monkey將繼續向系統傳送事件,直到計數完成。

7,-ignore-security-exceptions 表示當應用程式遇到任何型別的權限錯誤時,Monkey將停止,例如,如果它嘗試啟動需要某些權限的活動。如果指定此選項,則Monkey將繼續向系統傳送事件,直到計數完成。

8,-kill-process-after-error 當Monkey由於一個錯誤而停止時,出錯的應用程式將繼續處於執行狀態。當設定了此選項時,將會通知系統停止發生錯誤的程序 進程。注意,正常的(成功的)結束,並沒有停止啟動的程序 進程,裝置只是在結束事件之後,簡單地保持在最後的狀態。

9,-wait-dbg 表示停止執行中的Monkey,直到有偵錯程式和它相連線。

10,-s < seed> 偽隨機數生成器的種子值。如果你用相同的種子值重新執行Monkey,它將生成相同的事件序列。
如:adb shell monkey -s 1123 表示重現種子值為1123的事件序列。

11,-pct-touch< percent> 表示調整觸控事件的百分比(觸控事件是螢幕上單個位置的down-up事件)。
如:adb shell monkey -pct-touch 67 -v 10
表示執行10個偽隨機使用者事件流,並調整其中觸控事件的百分比為67%。

-------------------------------------------------------------------------------------------------------------------------

CRASH即崩潰資訊,程式在執行中非正常退出。 不設定忽略crashes,在測試過程中出現CRASH,會中斷測試,並顯示CRASH資訊和seed資訊



可直接根據log日誌定位bug並修復,也可根據seed值來完成bug的復現。
如:adb shell monkey -p com.feicuiedu.monkeytestdemo -s 1476474162566 -v 100






透過adb同時測試多個設備

adb可以透過ethernet同時連結多個設備進行除錯,使用到基本命令如下:
adb start-server 執行adb server

adb kill-server 關閉adb server

adb connect <host>[:<port>] 連接至指定IP address之設備

adb disconnect <host>[:<port>] 取消指定IP address之設備的adb連結
adb devices 列出adb已連結之設備
adb -s <serial number> 命令導向至指定的已連結設備
adb shell <command> 在遠端shell執行命令


Money透過adb同時測試多個設備使用流程如下:
1. adb kill-server
    adb start-server
 (重新啟動adb,確保adb沒有舊的連線,造成連線失敗,若確認無連線可以略過)


2. adb connect 10.10.10.90 (沒有輸入port會使用預設port 5555)
adb connect 10.10.10.89 
adb connect 10.10.10.88

進行多個設備連線


3. adb devices
列出連線設備,以確認有將設備加入連結,結果會如下所示
List of devices attached
10.10.10.90:5555 device
10.10.10.89:5555 device
10.10.10.88:5555 device


4. adb -s 10.10.10.90:5555 shell monkey –throttle 1000 –v 90000
    
adb -s 10.10.10.89:5555 shell monkey –throttle 1000 –v 90000
    
adb -s 10.10.10.88:5555 shell monkey –throttle 1000 –v 90000
    透過上面命令即可在多個設備進行monkey測試

若操作過程與到某個設備無法連線並且已存在adb devices清單中
 可以透過disconnect與connect來重新連結
 Ex:
 adb disconnect 10.10.10.90
 adb connect 10.10.10.90
 然後可以透過adb devices進行確認指令是否有成功執行
如果adb server有異常現象無法排除,請透過使用流程的步驟
 kill-serverstart-server來重新啟動adb server,並重新建立連結即可

2017年11月6日 星期一

IIS建置教學

****************************************
*          電腦環境:Windows 7 64bit                *
****************************************

【安裝IIS】
開始→控制台→(程式集)→程式和功能→開啟或關閉Window功能→修改設定如下

開啟IE或Chrome輸入網址http://localhosthttp://127.0.0.1,看到以下畫面表示成功

--------------------------------------------------------------------------------------------------------------------------

【IIS中的Web Server管理】




--------------------------------------------------------------------------------------------------------------------------
【安裝Visual Studio】
Visual Studio 2017 Community
Visual Studio 2015
Visual Studio 2013
Visual Studio 2012
Visual Studio 2010

--------------------------------------------------------------------------------------------------------------------------

【安裝Web Platform Installer 3.0】>【安裝Visual Studio】
Web Platform Installer 3.0中文版 / Web Platform Installer 3.0英文版 >下載檔案後double click執行>於「開始」輸入「Web Platform Installer」並點選>開啟「Web Platform Installer 5.0」>click「產品」>搜尋「visual studio 」>安裝「Visual Studio 2010 SP1」



/*防火牆部分 Start*/
開始→控制台→(系統及安全性)Window防火牆→允許程式或功能通過防火牆



按變更設定→勾選 R World Wide Web服務(HTTP)→按確定



開始→控制台→(系統及安全性)Window防火牆→進階設定




輸入規則→新增規則




連接埠→按下一步




TCP→輸入port號→按下一步→按下一步→按下一步




輸入名稱→按完成
/*防火牆部分 End*/

/*RIS code 部分Start*/
SVN上的PISConnectAGSource Codes
請妳把程式裡的 “SQLAG” 改成
140.112.180.104,14433;Network Library=DBMSSOCN連到測試用的104 DB
共有26個地方要改

改完以後按F5執行,看是否成功連上網頁(正確要有)
/*RIS code 部分End*/
 
開始執行輸入iisIIS管理員


新增站台→基本設定→選到實體路徑→確定(若日後要改就從「基本設定」)



編輯權限→安全性→編輯→新增everyone→權限全開→確定



點一下「瀏覽*.9903(http)」


遇到的第一個錯誤
組態錯誤
描述: 處理服務此要求所需的組態檔時發生錯誤。請檢視下列的特定錯誤詳細資訊,並適當修改您的組態檔。

剖析器錯誤訊息: 無法辨認的屬性 'targetFramework'。請注意,屬性名稱必須區分大小寫。

原始程式錯誤:


行 25:             設定 explicit="true" 會強制宣告各項變數。
行 26:         -->
行 27:   <compilation debug="true" strict="false" explicit="true" targetFramework="4.0">
行 28:    <assemblies>
行 29:     <add assembly="Office, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c"/>

原始程式檔: D:\bedding\PIS_WEB\PIS\web.config    行: 27



版本資訊: Microsoft .NET Framework 版本:2.0.50727.5485; ASP.NET 版本:2.0.50727.5491

PIS\web.config    行: 27 改為2.0,點一下「瀏覽*.9903(http)」,再把PIS\web.config    行: 27 改回4.0
把.NET Framework改為v4.0



點一下「瀏覽*.9903(http)」


遇到的第二個錯誤
錯誤摘要

HTTP 錯誤 500.21 - Internal Server Error

處理常式 "PageHandlerFactory-Integrated" 的模組清單中有錯誤的模組 "ManagedPipelineHandler"

詳細錯誤資訊
模組IIS Web Core
通知ExecuteRequestHandler
處理常式PageHandlerFactory-Integrated
錯誤碼0x8007000d
要求的 URLhttp://localhost:9903/default.aspx
實體路徑D:\bedding\PIS_WEB\PIS\default.aspx
登入方法匿名
登入使用者匿名
最有可能的原因:
  • 使用 Managed 處理常式,卻未安裝 ASP.NET,或安裝不完整。
  • 處理常式模組清單的設定中有拼字錯誤。
解決方法:
  • 如果您使用的是 Managed 處理常式,就必須安裝 ASP.NET。
  • 請確定已正確指定處理常式模組的名稱。模組名稱必須區分大小寫,而且採用 modules="StaticFileModule,DefaultDocumentModule,DirectoryListingModule" 格式。
連結及其他資訊 IIS 核心置無法辨識模組。 檢視其他資訊 »
若您是先安裝.NET Framework 4.0獨立安裝程式再啟用IIS角色就可能遇到上述的錯誤訊息,原因在於IIS角色在啟用時並未更新現有的應用程式以使用ASP.NET 4 版本的應用程式集區 ,以及在 IIS Metabase 中未更新傳統模式及 IIS 整合模式下ASP.NET 4的處理常式與指令對應,以至於出現上述的錯誤訊息。
開始→附屬應用程式→命令提示字元→滑鼠右鍵→以系統管理員身分執行
 C:\Windows\Microsoft.NET\Framework64\v4.0.30319>aspnet_regiis -i
Microsoft (R) ASP.NET RegIIS 版本 4.0.30319.18408
在本機電腦上安裝及解除安裝 ASP.NET 的管理公用程式。
Copyright (C) Microsoft Corporation.  著作權所有,並保留一切權利。
開始安裝 ASP.NET (4.0.30319.18408)。
..........
完成安裝 ASP.NET (4.0.30319.18408)。
點一下「瀏覽*.9903(http)」
l遇到的第三個錯誤



把Managed管線模式改為「傳統」


點一下「瀏覽*.9903(http)」
遇到的第四個錯誤

HTTP 錯誤 404.2 - Not Found

因為網頁伺服器上的 [ISAPI 及 CGI 限制] 清單設定,而無法提供您要求的網頁。

詳細錯誤資訊
模組IsapiModule
通知ExecuteRequestHandler
處理常式ExtensionlessUrlHandler-ISAPI-4.0_64bit
錯誤碼0x800704ec
要求的 URLhttp://localhost:9903/
實體路徑D:\bedding\PIS_WEB\PIS
登入方法匿名
登入使用者匿名

在 「功能檢視」中,按兩下 [ ISAPI 及 CGI 限制


這項限制,可限制要求的 ISAPI 資源或 CGI 要求的資源,然後按一下 [允許]