Android编程14个很有用的代码片段
http://www.apkbus.com/android-104070-1-1.html
1、查看是否有存储卡插入
1
2
3
4
5
6
|
String status=Environment.getExternalStorageState(); if ( status.equals ( Enviroment.MEDIA_MOUNTED ) ) { 说明有SD卡插入 } |
2、让某个Activity透明
1
2
3
4
5
|
OnCreate中不设Layout this .setTheme(R.style.Theme_Transparent); 以下是Theme_Transparent的定义(注意transparent_bg是一副透明的图片) |
3、在屏幕元素中设置句柄
使用Activity.findViewById来取得屏幕上的元素的句柄.使用该句柄您可以设置或获取任何该对象外露的值.
1
2
3
|
TextView msgTextView = (TextView)findViewById(R.id.msg); msgTextView.setText(R.string.push_me); |
4、发送短信
1
2
3
4
5
6
7
8
9
|
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); |
5、发送彩信
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
|
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); |
6、显示toast
1
2
|
Toast.makeText( this ._getApplicationContext(), R.string._item, Toast.LENGTH_SHORT).show(); |
7、发送Mail
01
02
03
04
05
06
07
08
09
10
|
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); |
8、注册一个BroadcastReceiver
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
|
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(); } } }; |
9、定义ContentObserver,监听某个数据表
01
02
03
04
05
06
07
08
09
10
11
12
13
14
|
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) {} } |
10、获得 手机UA
1
2
3
4
5
6
|
public String getUserAgent() { String user_agent = ProductProperties.get(ProductProperties.USER_AGENT_KEY, null ); return user_agent; } |
11、清空手机上cookie
1
2
3
|
CookieSyncManager.createInstance (getApplicationContext() ); CookieManager.getInstance().removeAllCookie(); |
12、建立GPRS连接
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
|
//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”, "" , "" ); } } |
13、PreferenceActivity 用法
1
2
3
4
5
6
7
8
|
public class Setting extends PreferenceActivity { public void onCreate ( Bundle savedInstanceState ) { super .onCreate ( savedInstanceState ); addPreferencesFromResource ( R.xml.settings ); } } |
14、通过HttpClient从指定server获取数据
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
DefaultHttpClient httpClient = new DefaultHttpClient(); HttpGet method = new HttpGet(“/templets/ default /index.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(); } } |