首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > Android >

Android开发 惯用代码片段

2013-01-28 
Android开发 常用代码片段1、查看是否有存储卡插入 1String statusEnvironment.getExternalStorageState()

Android开发 常用代码片段

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

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


2、让某个Activity透明
 

1OnCreate中不设Layout2 3this.setTheme(R.style.Theme_Transparent);4 5以下是Theme_Transparent的定义(注意transparent_bg是一副透明的图片)


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

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

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


4、发送短信

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


5、发送彩信

01StringBuilder sb = new StringBuilder();02 03sb.append(”file://”);04 05sb.append(fd.getAbsoluteFile());06 07Intent intent = new Intent(Intent.ACTION_SENDTO, Uri.fromParts(”mmsto”, number,null));08 09// Below extra datas are all optional.10intent.putExtra(Messaging.KEY_ACTION_SENDTO_MESSAGE_SUBJECT, subject);11intent.putExtra(Messaging.KEY_ACTION_SENDTO_MESSAGE_BODY, body);12intent.putExtra(Messaging.KEY_ACTION_SENDTO_CONTENT_URI, sb.toString());13intent.putExtra(Messaging.KEY_ACTION_SENDTO_COMPOSE_MODE, composeMode);14intent.putExtra(Messaging.KEY_ACTION_SENDTO_EXIT_ON_SENT, exitOnSent);15 16startActivity(intent);


6、显示toast

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


7、发送Mail

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


8、注册一个BroadcastReceiver

01registerReceiver(mMasterResetReciever, newIntentFilter(”OMS.action.MASTERRESET”));02 03private BroadcastReceiver mMasterResetReciever = new BroadcastReceiver()04{05        public void onReceive(Context context, Intent intent)06       {07            String action = intent.getAction();08 09            if (”oms.action.MASTERRESET”.equals(action) )10           {11                RecoverDefaultConfig();12            }13        }14};


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

01private ContentObserver mDownloadsObserver = newDownloadsChangeObserver(Downloads.CONTENT_URI);02 03private class DownloadsChangeObserver extends ContentObserver04{05        public DownloadsChangeObserver(Uri uri)06        {07            super(new Handler());08        }09 10        @Override11        public void onChange(boolean selfChange) {}12   13}


10、获得 手机UA 

1public String getUserAgent()2{3    String user_agent = ProductProperties.get(ProductProperties.USER_AGENT_KEY,null);4     5    return user_agent;6}
11、清空手机上cookie 
1CookieSyncManager.createInstance (getApplicationContext() );2 3CookieManager.getInstance().removeAllCookie();
12、建立GPRS连接 
01//Dial the GPRS link.02private boolean openDataConnection()03{04    // Set up data connection.05    DataConnection conn = DataConnection.getInstance();    06     07    if ( connectMode == 0 )08    {09         ret = conn.openConnection ( mContext, “cmwap”, "cmwap”, "cmwap” );10    }11    else12    {13                ret = conn.openConnection(mContext, “cmnet”, """");14     }15}
13、PreferenceActivity 用法 
1public class Setting extends PreferenceActivity2{3    public void onCreate ( Bundle savedInstanceState )4        {5            super.onCreate ( savedInstanceState );6            addPreferencesFromResource ( R.xml.settings ); 7    }8}Setting.xml: 
1Android:key=”seting2″2 3         android:title=”@string/seting2″4         android:summary=”@string/seting2″/>5         android:key=”seting1″6         android:title=”@string/seting1″7         android:summaryOff=”@string/seting1summaryOff”8           android:summaryOn=”@stringseting1summaryOff”/>
14、通过HttpClient从指定server获取数据
01DefaultHttpClient httpClient = new DefaultHttpClient();02 03          HttpGet method = new HttpGet(“/templets/default/index.html”);04          HttpResponse resp;05          Reader reader = null;06 07          try {08              // AllClientPNames.TIMEOUT09              HttpParams params = new BasicHttpParams();10              params.setIntParameter(AllClientPNames.CONNECTION_TIMEOUT, 10000);11              12              httpClient.setParams(params);13              resp = httpClient.execute(method);14              int status = resp.getStatusLine().getStatusCode();15              16              if (status != HttpStatus.SC_OK)17              {18                 return false;19              }20 21              // HttpStatus.SC_OK;22              return true;23 24          }25        catch (ClientProtocolException e)26        {27              // TODO Auto-generated catch block28              e.printStackTrace();29        }30       catch (IOException e)31       {32              // TODO Auto-generated catch block33              e.printStackTrace();34        }35       finally36      {37              if (reader != null)38              try39             {40                  reader.close();41             }42             catch (IOException e)43             {44                  // TODO Auto-generated catch block45                  e.printStackTrace();46             }47      }

热点排行