android 開發筆記

 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複製到桌面






發佈了58 篇原創文章 · 獲贊 1 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章