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(); 
             
      }
 
 
posted @ 2013-05-01 00:03  Ivan-zheng  阅读(262)  评论(0编辑  收藏  举报