Android编程中14个解决实际问题的…

来源:互联网 发布:icl知乎 编辑:程序博客网 时间:2024/04/29 02:33

还在为学习Adroid语言苦恼?这里为初学者介绍了十四段简单实用的代码,保存下来需要时轻松一键获得。其中包括检查是否有SD卡,让某个Activity透明,在屏幕元素中设置句柄等等在实际应用经常用到的简短代码。

AD:51CTO学院:IT精品课程在线看!

 

1、查看是否有存储卡插入  

  1. String status=Environment.getExternalStorageState();    
  2.    
  3. if status.equals Enviroment.MEDIA_MOUNTED    
  4.    
  5.     说明有SD卡插入    
  6.  

2、让某个Activity透明

OnCreate中不设Layout    

  1. this.setTheme(R.style.Theme_Transparent);   

以下是Theme_Transparent的定义(注意transparent_bg是一副透明的图片)  

3、在屏幕元素中设置句柄

使用Activity.findViewById来取得屏幕上的元素的句柄,使用该句柄您可以设置或获取任何该对象外露的值。

  1. TextView msgTextView (TextView)findViewById(R.id.msg);       
  2. msgTextView.setText(R.string.push_me);  

4、发送短信

  1.     String body=”this is mms demo”;     
  2.         
  3.     Intent mmsintent new Intent(Intent.ACTION_SENDTO, Uri.fromParts(”smsto”, number, null));     
  4.         
  5.     mmsintent.putExtra(Messaging.KEY_ACTION_SENDTO_MESSAGE_BODY, body);     
  6.     mmsintent.putExtra(Messaging.KEY_ACTION_SENDTO_COMPOSE_MODE, true);     
  7.     mmsintent.putExtra(Messaging.KEY_ACTION_SENDTO_EXIT_ON_SENT, true);     
  8.         
  9.     startActivity(mmsintent); 

5、发送彩信

  1.   StringBuilder sb new StringBuilder();     
  2.         
  3.     sb.append(”file://”);     
  4.         
  5.     sb.append(fd.getAbsoluteFile());     
  6.         
  7.     Intent intent new Intent(Intent.ACTION_SENDTO, Uri.fromParts(”mmsto”, number, null));     
  8.         
  9.     // Below extra datas are all optional.     
  10.     intent.putExtra(Messaging.KEY_ACTION_SENDTO_MESSAGE_SUBJECT, subject);     
  11.     intent.putExtra(Messaging.KEY_ACTION_SENDTO_MESSAGE_BODY, body);     
  12.     intent.putExtra(Messaging.KEY_ACTION_SENDTO_CONTENT_URI, sb.toString());     
  13.     intent.putExtra(Messaging.KEY_ACTION_SENDTO_COMPOSE_MODE, composeMode);     
  14.     intent.putExtra(Messaging.KEY_ACTION_SENDTO_EXIT_ON_SENT, exitOnSent);     
  15.         
  16.     startActivity(intent);  

6、显示toast

  1. view plaincopy 
  2. Toast.makeText(this._getApplicationContext(), R.string._item, Toast.LENGTH_SHORT).show();   

7、发送Mail

  1. mime “img/jpg”;    
  2.                
  3. shareIntent.setDataAndType(Uri.fromFile(fd), mime);    
  4.    
  5. shareIntent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(fd));    
  6.    
  7. shareIntent.putExtra(Intent.EXTRA_SUBJECT, subject);    
  8.    
  9. shareIntent.putExtra(Intent.EXTRA_TEXT, body);  

8、注册一个BroadcastReceiver

  1. registerReceiver(mMasterResetReciever, new IntentFilter(”OMS.action.MASTERRESET”));    
  2.    
  3. private BroadcastReceiver mMasterResetReciever new BroadcastReceiver()   
  4.    
  5.         public void onReceive(Context context, Intent intent)   
  6.           
  7.             String action intent.getAction();    
  8.    
  9.             if (”oms.action.MASTERRESET”.equals(action)   
  10.               
  11.                 RecoverDefaultConfig();    
  12.                
  13.            
  14. };

9、定义ContentObserver,监听某个数据表 

  1. private ContentObserver mDownloadsObserver new DownloadsChangeObserver(Downloads.CONTENT_URI);    
  2.    
  3. private class DownloadsChangeObserver extends ContentObserver    
  4.    
  5.         public DownloadsChangeObserver(Uri uri)    
  6.            
  7.             super(new Handler());    
  8.            
  9.    
  10.         @Override    
  11.         public void onChange(boolean selfChange) {}   
  12.      
  13.    

10、获得手机UA 

  1. public String getUserAgent()    
  2.    
  3.     String user_agent ProductProperties.get(ProductProperties.USER_AGENT_KEY, null);    
  4.        
  5.     return user_agent;    
  6.    

11、清空手机上cookie  

  1. CookieSyncManager.createInstance (getApplicationContext() );    
  2.    
  3. CookieManager.getInstance().removeAllCookie();      

12、建立GPRS连接 

  1. //Dial the GPRS link.    
  2. private boolean openDataConnection()    
  3.    
  4.     // Set up data connection.    
  5.     DataConnection conn DataConnection.getInstance();        
  6.        
  7.     if connectMode == 0    
  8.        
  9.          ret conn.openConnection mContext, “cmwap”, "cmwap”, "cmwap” );    
  10.        
  11.     else    
  12.        
  13.                 ret conn.openConnection(mContext, “cmnet”, """");    
  14.         
  15.   

13、PreferenceActivity用法

  1. public class Setting extends PreferenceActivity    
  2.    
  3.     public void onCreate Bundle savedInstanceState    
  4.            
  5.             super.onCreate savedInstanceState );    
  6.             addPreferencesFromResource R.xml.settings );     
  7.        
  8.    
  9. Setting.xml:  
  10. [java]   
  11. Android:key=”seting2″   
  12.    
  13.          android:title=”@string/seting2″    
  14.          android:summary=”@string/seting2″/>    
  15.          android:key=”seting1″    
  16.          android:title=”@string/seting1″    
  17.          android:summaryOff=”@string/seting1summaryOff”    
  18.            android:summaryOn=”@stringseting1summaryOff”/>

14、通过HttpClient从指定server获取数据    

  1. DefaultHttpClient httpClient new DefaultHttpClient();
  2.           HttpGet method new HttpGet(“/templets/default/index.html”);    
  3.           HttpResponse resp;    
  4.           Reader reader null;
  5.  
  6.           try    
  7.               // AllClientPNames.TIMEOUT    
  8.               HttpParams params new BasicHttpParams();    
  9.               params.setIntParameter(AllClientPNames.CONNECTION_TIMEOUT, 10000);    
  10.               httpClient.setParams(params);    
  11.               resp httpClient.execute(method);    
  12.               int status resp.getStatusLine().getStatusCode();    
  13.               if (status != HttpStatus.SC_OK)    
  14.                 
  15.                  return false   
  16.                 
  17.    
  18.               // HttpStatus.SC_OK;    
  19.               return true;
  20.              
  21.         catch (ClientProtocolException e)    
  22.            
  23.               // TODO Auto-generated catch block    
  24.               e.printStackTrace();    
  25.            
  26.        catch (IOException e)    
  27.           
  28.               // TODO Auto-generated catch block    
  29.               e.printStackTrace();    
  30.           
  31.        finally   
  32.          
  33.               if (reader != null   
  34.               try   
  35.                 
  36.                   reader.close();    
  37.                
  38.              catch (IOException e)    
  39.                 
  40.                   // TODO Auto-generated catch block    
  41.                   e.printStackTrace();    
  42.                 
  43.         
0 0
原创粉丝点击