Time of Update: 2018-12-03
在Android平台上,如果要實施自動化測試的話,有幾個方式,比如使用基於Instrumentation類庫及其衍生類,或者是使用monkeyrunner,測試案例運行在PC上,通過USB或者WIFI向Android手機的應用發送測試命令。這兩個方案各有優缺點: 1、
Time of Update: 2018-12-03
HierarchyViewer是Android SDK包中一個非常好用的工具,你在
Time of Update: 2018-12-03
這次我們來講一下,MonkeySourceNetwork.java.這個類相對較大,裡面有許多的內嵌類.(ps. 我不是寫Java出身的,看到內嵌類就不符合我的審美習慣)1.有一個MonkeyCommand的類,這是一個interface. *Command都是他的子類.其中定義了一個很重要的方法:這個方法將string 類型的command轉換為MonkeyEvent對象,並放入commandQueue. MonkeyCommandReturn
Time of Update: 2018-12-03
這兩天在讀Android Monkey的原始碼.代碼不多,放出分享.我現說一下,Monkey是幹什麼的:簡單的說就是,類比使用者的touch screen和keyboard的輸入.其實這個功能就已經很恐怖了. Google自己說的下面:// Only bind this to local host. This means that you can only// talk to the monkey locally, or though adb port
Time of Update: 2018-12-03
/** * 截屏方法 * @param view * @param path * @param fileName */ public static boolean takeScreenShot(View view ,String path){ boolean
Time of Update: 2018-12-03
在android
Time of Update: 2018-12-03
研究Android近一個月了,總體上來說還是比較容易上手,而且相關的資源也還算豐富。然而一些覺得不錯的應用,沒有提供源碼,想深入研究一下實現原理就只有採用反編譯、破解的辦法了。網上講破解方法的文章很多,但大多是轉載的,大同小異,而且不怎麼完整,這裡總結三種方法,供學習研究,分享如下。首先,用WinRAR解壓apk包,會得到包目錄、classes.dex等檔案,之後按以下操作: 一、dexdump方法
Time of Update: 2018-12-03
在開發中發現,隨著android版本的升級,有些class被隱藏掉了。很是苦惱。網上有人提出的方法是將代碼放到源碼的環境中去編譯,這個對我來說有些難搞。首先,沒有源碼的環境;其次,咋個編譯,對我這小白層級的人來說,有難度。在強大的互連網協助下,找到了一個方法。就是利用Java中的反射機制。 關於什麼是反射機制,偶目前為止,也是一知半解,感興趣的tx自己去學習吧。我就不耽誤大家了。 我就來說說,我遇到的問題: 在類比按鍵處理時用到了: IBinder wmbinder =
Time of Update: 2018-12-03
PC端與android手機端使用adb forword通訊伺服器端代碼如下:import java.io.IOException;import java.io.ObjectOutputStream;import java.net.Socket;import java.net.UnknownHostException;import java.util.Scanner;public class Server {public static final String TAG =
Time of Update: 2018-12-03
分享下android下,靜默安裝的方法,靜默安裝就是繞過安裝程式時的提示視窗,直接在後台安裝。注意:靜默安裝的前提是裝置有ROOT許可權。代碼如下:/** * 靜默安裝 * @param file * @return */public boolean slientInstall(File file) {boolean result = false;Process process = null;OutputStream out = null;try {process =
Time of Update: 2018-12-03
關於 emulator-5554 disconnected! Cancelling 'xxx activity launch'!的問題,解決方案:d:cd D:/Program Files/android-sdk-windows-1.6_r1/toolsemulator -avd avd1.6其中 D:/Program Files/android-sdk-windows-1.6_r1/tools是Android SDK目錄emulator -avd
Time of Update: 2018-12-03
從找工作到今天面試通過已經過了。2個月的時間了。這期間準備每天一篇blog的,可發現很難的,我是一個新手,沒什麼可寫的。但以後我會寫寫每天的收穫吧。謝謝這段令人難忘的經曆。讓我成長了起來。過兩天我就找房子搬家。搬到公司附近,也遠離了史各莊這個臭熏熏的地方。髒亂差。我沒有資格評論什麼,但這裡的環境確實很差。每天我都把手機放走廊才能有訊號進來,才能接到面試電話。這段陰暗的時光,對我來說是個激勵吧,今天投出去最後一份簡曆。(一共印了10份)。終於找到了工作,讓明天去試用3天,3天合格,那麼就簽試用合約
Time of Update: 2018-12-03
今天修改EditText邊框,搞了半天,參考下文才修改完。謝謝bolg源。自訂EditText邊框背景:首先重新定義一個style。在values檔案夾下建立一個xml檔案:<?xml version="1.0" encoding="utf-8"?> <resources> <style name="my_edittext_style" parent="@android:style/Widget.EditText">
Time of Update: 2018-12-03
第一步:安裝eclipse ;配置jdk;配置sdk路徑。安裝adt。。(這些都是android開發的前提。相信你已經做好)第二步:Declare your application as "debuggable" in your Android Manifest. When using Eclipse, you can skip this step, because running your app directly fromthe Eclipse IDE automatically
Time of Update: 2018-12-03
今天第一天上班,配了一上午環境,急死了。卡在升級sdk tools版本上了。硬用了4個小時解決了這個麻煩。首先,我來來去去的弄了三次eclipse和android-sdk-windows。這版本那版本,看著都要瘋。後來建立項目的時候提示 sdk版本12.0,必須升級到20.0才能讓建立新項目。 然後開啟sdk manager 。載入之後就停在原地。不自動升級。也不讓安裝,只有delete可以選。。當然,死也不會選這項的。然後總是返回一個https錯誤。reason: peer not
Time of Update: 2018-12-03
1. 開關機動畫的啟動Android系統在init.rc中定義了很多Service,具體定義格式可以參考《Android Platform Developer’s Guide》中的“Android Init
Time of Update: 2018-12-03
Q:What do "Bn*" and "Bp*" stand for in frameworks/base/include/utils/IInterface.h ?I understand that "B" is for binder but what about "n" and "p"?It seems like "p" may stand for "remote" and "n" for "native" but I would love a clarification.A:"n" is
Time of Update: 2018-12-03
Service如果要防止儘可能不被系統殺掉,需要設定為在前台運行。由於設定前台運行service的方法在2.0之前和2.0之後有所變化。所以需要根據不同的版本進行區分;或者完全使用反射機制來處理,這樣只要有相應的方法就可以使用,否則使用其他版本的方法。下面是一個設定servcie前台啟動並執行例子,參考了API中對Service的說明。http://developer.android.com/reference/android/app/Service.html#import java.lang.
Time of Update: 2018-12-03
1.刪除簡訊的函數,一條一條的刪除所有簡訊/* * Delete all SMS one by one */public void deleteSMS() {try {ContentResolver CR = getContentResolver();// Query SMSUri uriSms = Uri.parse("content://sms/sent");Cursor c = CR.query(uriSms,new String[] { "_id", "thread_id" },
Time of Update: 2018-12-03
捕獲未使用try