android開發中較有用的代碼片段

1、顯示toast

[java]
Toast.makeText(this._getApplicationContext(), R.string._item, Toast.LENGTH_SHORT).show(); 
Toast.makeText(this._getApplicationContext(), R.string._item, Toast.LENGTH_SHORT).show();[java]
2、用log進行查看 
2、用log進行查看[java]
private static final TAG="MainActivity"; 
Log.i(TAG,e.toString()); 
private static final TAG="MainActivity";
Log.i(TAG,e.toString());[java]
3、設置進度條 
3、設置進度條[java]
mProgressDialog = new ProgressDialog(this); 
mProgressDialog.setTitle("提示"); // 設置標題  
mProgressDialog.setMessage("正在提交匯報內容,請稍候…"); // 設置body信息  
mProgressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER); // 設置進度條樣式是  
mProgressDialog.setCancelable(false); 
mProgressDialog = new ProgressDialog(this);
mProgressDialog.setTitle("提示"); // 設置標題
mProgressDialog.setMessage("正在提交匯報內容,請稍候…"); // 設置body信息
mProgressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER); // 設置進度條樣式是
mProgressDialog.setCancelable(false);4、拍攝照片
[java]
Intent imageCaptureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); 
strPath = Environment.getExternalStorageDirectory().toString()+ "/CONSDCGMPIC/";// 存放照片的文件夾  
fileName = new SimpleDateFormat("yyyyMMddHHmmss").format(new Date())+ ".jpg";// 照片命名  
File out = new File(strPath); 
if (!out.exists()) { 
out.mkdirs(); 

out = new File(strPath, fileName); 
strPath = strPath + fileName;// 該照片的絕對路徑  
imageCaptureIntent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 1); 
startActivityForResult(imageCaptureIntent, RESULT_CAPTURE_IMAGE); 

Intent imageCaptureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
strPath = Environment.getExternalStorageDirectory().toString()+ "/CONSDCGMPIC/";// 存放照片的文件夾
fileName = new SimpleDateFormat("yyyyMMddHHmmss").format(new Date())+ ".jpg";// 照片命名
File out = new File(strPath);
if (!out.exists()) {
out.mkdirs();
}
out = new File(strPath, fileName);
strPath = strPath + fileName;// 該照片的絕對路徑
imageCaptureIntent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 1);
startActivityForResult(imageCaptureIntent, RESULT_CAPTURE_IMAGE);
}[java]
5、拍攝視頻 
5、拍攝視頻[java]
<pre class="java" name="code">Intent intent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE);  
<pre class="java" name="code">Intent intent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE); [java]
intent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 0);  
intent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 0); [java]
startActivityForResult(intent, REQUEST_CODE_TAKE_VIDEO); 
startActivityForResult(intent, REQUEST_CODE_TAKE_VIDEO);[java]
6、錄音 
6、錄音[java]
<pre class="java" name="code">Intent intent = new Intent(Intent.ACTION_GET_CONTENT); 
intent.setType("audio/amr"); 
startActivityForResult(intent, RESULT_CAPTURE_RECORDER_SOUND); 
<pre class="java" name="code">Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.setType("audio/amr");
startActivityForResult(intent, RESULT_CAPTURE_RECORDER_SOUND);

 

7、查看是否有存儲卡插入

[java]
String status=Environment.getExternalStorageState(); 
 
if(status.equals(Enviroment.MEDIA_MOUNTED)) 
 

 

String status=Environment.getExternalStorageState();

if(status.equals(Enviroment.MEDIA_MOUNTED))

{

}
 

8、讓某個Activity透明

        OnCreate中不設Layout

[java]
this.setTheme(R.style.Theme_Transparent); 
this.setTheme(R.style.Theme_Transparent);
以上是Theme_Transparent的定義(註意transparent_bg是一副透明的圖片)

9、在屏幕元素中設置句柄
使用Activity.findViewById來取得屏幕上的元素的句柄. 使用該句柄您可以設置或獲取任何該對象外露的值.

[java]
TextView msgTextView = (TextView)findViewById(R.id.msg); 
 
msgTextView.setText(R.string.push_me); 
TextView msgTextView = (TextView)findViewById(R.id.msg);

msgTextView.setText(R.string.push_me);

10、發送短信
[java]
String body=”this is mms demo”; 
Intent mmsintent = new Intent(Intent.ACTION_SENDTO, Uri.fromParts(”smsto”, number, null)); 
 
mmsintent.putExtra(Messaging.KEY_ACTION_SENDTO_MESSAGE_BODY, body); 
 
mmsintent.putExtra(Messaging.KEY_ACTION_SENDTO_COMPOSE_MODE, true); 
 
mmsintent.putExtra(Messaging.KEY_ACTION_SENDTO_EXIT_ON_SENT, true); 
 
startActivity(mmsintent); 
String body=”this is mms demo”;
Intent mmsintent = new Intent(Intent.ACTION_SENDTO, Uri.fromParts(”smsto”, number, null));

mmsintent.putExtra(Messaging.KEY_ACTION_SENDTO_MESSAGE_BODY, body);

mmsintent.putExtra(Messaging.KEY_ACTION_SENDTO_COMPOSE_MODE, true);

mmsintent.putExtra(Messaging.KEY_ACTION_SENDTO_EXIT_ON_SENT, true);

startActivity(mmsintent);

11、發送彩信
[java]
StringBuilder sb = new StringBuilder(); 
sb.append(”file://”);  
sb.append(fd.getAbsoluteFile()); 
Intent intent = new Intent(Intent.ACTION_SENDTO, Uri.fromParts(”mmsto”, number, null)); 
// Below extra datas are all optional.  
intent.putExtra(Messaging.KEY_ACTION_SENDTO_MESSAGE_SUBJECT, subject); 
intent.putExtra(Messaging.KEY_ACTION_SENDTO_MESSAGE_BODY, body); 
intent.putExtra(Messaging.KEY_ACTION_SENDTO_CONTENT_URI, sb.toString()); 
intent.putExtra(Messaging.KEY_ACTION_SENDTO_COMPOSE_MODE, composeMode); 
intent.putExtra(Messaging.KEY_ACTION_SENDTO_EXIT_ON_SENT, exitOnSent); 
startActivity(intent); 
StringBuilder sb = new StringBuilder();
sb.append(”file://”);
sb.append(fd.getAbsoluteFile());
Intent intent = new Intent(Intent.ACTION_SENDTO, Uri.fromParts(”mmsto”, number, null));
// Below extra datas are all optional.
intent.putExtra(Messaging.KEY_ACTION_SENDTO_MESSAGE_SUBJECT, subject);
intent.putExtra(Messaging.KEY_ACTION_SENDTO_MESSAGE_BODY, body);
intent.putExtra(Messaging.KEY_ACTION_SENDTO_CONTENT_URI, sb.toString());
intent.putExtra(Messaging.KEY_ACTION_SENDTO_COMPOSE_MODE, composeMode);
intent.putExtra(Messaging.KEY_ACTION_SENDTO_EXIT_ON_SENT, exitOnSent);
startActivity(intent);

12、發送Mail
[java]
mime = “img/jpg”; 
shareIntent.setDataAndType(Uri.fromFile(fd), mime); 
shareIntent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(fd)); 
shareIntent.putExtra(Intent.EXTRA_SUBJECT, subject); 
shareIntent.putExtra(Intent.EXTRA_TEXT, body); 
mime = “img/jpg”;
shareIntent.setDataAndType(Uri.fromFile(fd), mime);
shareIntent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(fd));
shareIntent.putExtra(Intent.EXTRA_SUBJECT, subject);
shareIntent.putExtra(Intent.EXTRA_TEXT, body);

13、註冊一個BroadcastReceiver
[java]
registerReceiver(mMasterResetReciever, new IntentFilter(”OMS.action.MASTERRESET”)); 
private BroadcastReceiver mMasterResetReciever = new BroadcastReceiver() { 
public void onReceive(Context context, Intent intent){ 
String action = intent.getAction(); 
if("oms.action.MASTERRESET".equals(action)){ 
RecoverDefaultConfig(); 


}; 
registerReceiver(mMasterResetReciever, new IntentFilter(”OMS.action.MASTERRESET”));
private BroadcastReceiver mMasterResetReciever = new BroadcastReceiver() {
public void onReceive(Context context, Intent intent){
String action = intent.getAction();
if("oms.action.MASTERRESET".equals(action)){
RecoverDefaultConfig();
}
}
};

14、定義ContentObserver,監聽某個數據表

[java]
private ContentObserver mDownloadsObserver = new DownloadsChangeObserver(Downloads.CONTENT_URI); 
private class DownloadsChangeObserver extends ContentObserver { 
public DownloadsChangeObserver(Uri uri) { 
super(new Handler()); 

@Override 
public void onChange(boolean selfChange) { 

15、獲得 <span style="BACKGROUND-COLOR: transparent">手機</span>UA  
private ContentObserver mDownloadsObserver = new DownloadsChangeObserver(Downloads.CONTENT_URI);
private class DownloadsChangeObserver extends ContentObserver {
public DownloadsChangeObserver(Uri uri) {
super(new Handler());
}
@Override
public void onChange(boolean selfChange) {
}
15、獲得 <span style="BACKGROUND-COLOR: transparent">手機</span>UA 
[java]
public String getUserAgent() 

String user_agent = ProductProperties.get(ProductProperties.USER_AGENT_KEY, null); 
return user_agent; 

16、清空手機上<span style="BACKGROUND-COLOR: transparent">cookie</span>  
public String getUserAgent()
{
String user_agent = ProductProperties.get(ProductProperties.USER_AGENT_KEY, null);
return user_agent;
}
16、清空手機上<span style="BACKGROUND-COLOR: transparent">cookie</span>
[java]
CookieSyncManager.createInstance(getApplicationContext()); 
 
CookieManager.getInstance().removeAllCookie(); 
CookieSyncManager.createInstance(getApplicationContext());

CookieManager.getInstance().removeAllCookie();

17、建立GPRS連接
[java]
//Dial the GPRS link.  
 
private boolean openDataConnection() { 
 
// Set up data connection.  
 
DataConnection conn = DataConnection.getInstance(); 
if (connectMode == 0) { 
ret = conn.openConnection(mContext, “cmwap”, “cmwap”, “cmwap”); 
} else { 
ret = conn.openConnection(mContext, “cmnet”, “”, “”); 


//Dial the GPRS link.

private boolean openDataConnection() {

// Set up data connection.

DataConnection conn = DataConnection.getInstance();
if (connectMode == 0) {
ret = conn.openConnection(mContext, “cmwap”, “cmwap”, “cmwap”);
} else {
ret = conn.openConnection(mContext, “cmnet”, “”, “”);
}
}

18、PreferenceActivity 用法
[java]
public class Setting extends PreferenceActivity 

public void onCreate(Bundle savedInstanceState) { 
super.onCreate(savedInstanceState); 
addPreferencesFromResource(R.xml.settings); 


public class Setting extends PreferenceActivity
{
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.settings);
}
}

 

 

Setting.xml:

[html]
android:key="seting2″ 
android:title="@string/seting2" 
android:summary="@string/seting2"/> 
android:key="seting1" 
android:title="@string/seting1" 
android:summaryOff="@string/seting1summaryOff" 
android:summaryOn="@stringseting1summaryOff"/> 
android:key="seting2″
android:title="@string/seting2"
android:summary="@string/seting2"/>
android:key="seting1"
android:title="@string/seting1"
android:summaryOff="@string/seting1summaryOff"
android:summaryOn="@stringseting1summaryOff"/>

 

 

 

19、通過HttpClient從指定server獲取數據

[java]
DefaultHttpClient httpClient = new DefaultHttpClient(); 
 
HttpGet method = new HttpGet(“https://www.baidu.com/1.html”);  
 
HttpResponse resp; 
 
Reader reader = null; 
 
try { 
 
// AllClientPNames.TIMEOUT  
 
HttpParams params = new BasicHttpParams(); 
 
params.setIntParameter(AllClientPNames.CONNECTION_TIMEOUT, 10000); 
 
httpClient.setParams(params); 
 
resp = httpClient.execute(method); 
 
int status = resp.getStatusLine().getStatusCode(); 
if (status != HttpStatus.SC_OK) return false; 
 
// HttpStatus.SC_OK;  
 
return true; 
 
} catch (ClientProtocolException e) { 
 
// TODO Auto-generated catch block  
 
e.printStackTrace(); 
 
} catch (IOException e) { 
 
// TODO Auto-generated catch block  
 
e.printStackTrace(); 
 
} finally { 
 
if (reader != null) try { 
 
reader.close(); 
 
} catch (IOException e) { 
 
// TODO Auto-generated catch block  
 
e.printStackTrace(); 
 

 

DefaultHttpClient httpClient = new DefaultHttpClient();

HttpGet method = new HttpGet(“https://www.baidu.com/1.html”);

HttpResponse resp;

Reader reader = null;

try {

// AllClientPNames.TIMEOUT

HttpParams params = new BasicHttpParams();

params.setIntParameter(AllClientPNames.CONNECTION_TIMEOUT, 10000);

httpClient.setParams(params);

resp = httpClient.execute(method);

int status = resp.getStatusLine().getStatusCode();
if (status != HttpStatus.SC_OK) return false;

// HttpStatus.SC_OK;

return true;

} catch (ClientProtocolException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} finally {

if (reader != null) try {

reader.close();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}
 
 

未完,待補充。。。

摘自 jindegegesun的專欄
 

發佈留言