1: System.exit(0);//這句相當於任務管理器關閉程序,將不執行Activity的生命週期
2:List<String> a = new ArrayList<String>();
List<String> b = new ArrayList<String>();
a.addAll(b);
爲引用傳遞,當b的值改變時,a列表中對應的值也會改變。
3:模擬鍵盤事件
public void performKeyDown(final int keyCode) {
new Thread() {
public void run() {
try {
Instrumentation inst = new Instrumentation();
inst.sendKeyDownUpSync(keyCode);
} catch (Exception e) {
e.printStackTrace();
}
}
}.start();
}
4:倒計時用CountdownTimer,定時執行任務用Timer
5:sp:
與縮放無關的抽象像素(Scale-independent Pixel)。sp和dp很類似但唯一的區別是,Android系統允許用戶自定義文字尺寸大小(小、正常、大、超大等等),當文字尺寸是“正常”時1sp=1dp=0.00625英寸,而當文字尺寸是“大”或“超大”時,1sp>1dp=0.00625英寸。類似我們在windows裏調整字體尺寸以後的效果——窗口大小不變,只有文字大小改變。
6:播放視頻時保持屏幕常亮。
super.onCreate(savedInstanceState);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON, WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
requestWindowFeature(Window.FEATURE_NO_TITLE);
7:Edittext取消焦點
<span style="white-space:pre"> </span>wx_code.clearFocus();
search.setFocusable(true);
search.setFocusableInTouchMode(true);
search.requestFocus();
search.requestFocusFromTouch();
8:鍵盤顯示和隱藏
package com.dingmore.terminal.util;
import android.content.Context;
import android.view.inputmethod.InputMethodManager;
import android.widget.EditText;
//打開或關閉軟鍵盤
public class KeyBoardUtils
{
/**
* 打卡軟鍵盤
*
* @param mEditText輸入框
* @param mContext上下文
*/
public static void openKeybord(EditText mEditText, Context mContext)
{
InputMethodManager imm = (InputMethodManager) mContext
.getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(mEditText, InputMethodManager.RESULT_SHOWN);
imm.toggleSoftInput(InputMethodManager.SHOW_FORCED,
InputMethodManager.HIDE_IMPLICIT_ONLY);
}
/**
* 關閉軟鍵盤
*
* @param mEditText輸入框
* @param mContext上下文
*/
public static void closeKeybord(EditText mEditText, Context mContext)
{
InputMethodManager imm = (InputMethodManager) mContext.getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(mEditText.getWindowToken(), 0);
}
}
9:啓動activity時默認不啓動鍵盤
android:windowSoftInputMode="stateAlwaysHidden"
想要使用自定義鍵盤永遠不想彈出鍵盤可以重寫Edittext的ontouch方法,並且return true;
coupon_code.setOnTouchListener(new OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
coupon_code.requestFocus();
coupon_code.setSelection(coupon_code.getText().length());
return true;
}
});
10:常用adb指令
adb shell //進入shell
exit //退出shell
#su#cd system/sd/data //進入系統內指定文件夾
#ls //列表顯示當前文件夾內容
#rm -r xxx //刪除名字爲xxx的文件夾及其裏面的所有文件
#rm xxx //刪除文件xxx
#rmdir xxx //刪除xxx的文件夾
adb shell dumpsys package com.dingmore.employee
//查看已安裝apk的manifast文件。
aapt dump permissions apk路徑.apk //查看未安裝的apk的manifast文件中的權限。
aapt dump badging /Users/lianwanfei/Desktop/pullemployee.apk //查看未安裝的apk的manifast文件。
adb install apk路徑.apk //安裝apk
adb uninstall com.dingmore.employee //卸載已安裝的apk.
adb shell環境下 pm path com.dingmore.employee //查詢已安裝apk在手機的路徑:
adb pull /data/app/com.dingmore.employee-1.apk /Users/lianwanfei/Desktop/pullemployee.apk//把已安裝的apk應用的apk複製到桌面