Android编程14个很有用的代码片段

1、查看是否有存储卡插入
  1. String status=Environment.getExternalStorageState();

  2. if ( status.equals ( Enviroment.MEDIA_MOUNTED ) )
  3. {
  4.     说明有SD卡插入
  5. }
复制代码
2、让某个Activity透明
  1. OnCreate中不设Layout

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

  3. 以下是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. Intent mmsintent = new Intent(Intent.ACTION_SENDTO, Uri.fromParts(”smsto”, number, null));

  3. mmsintent.putExtra(Messaging.KEY_ACTION_SENDTO_MESSAGE_BODY, body);
  4. mmsintent.putExtra(Messaging.KEY_ACTION_SENDTO_COMPOSE_MODE, true);
  5. mmsintent.putExtra(Messaging.KEY_ACTION_SENDTO_EXIT_ON_SENT, true);

  6. startActivity(mmsintent);
复制代码
5、发送彩信

  1. StringBuilder sb = new StringBuilder();

  2. sb.append(”file://”);

  3. sb.append(fd.getAbsoluteFile());

  4. Intent intent = new Intent(Intent.ACTION_SENDTO, Uri.fromParts(”mmsto”, number, null));

  5. // Below extra datas are all optional.
  6. intent.putExtra(Messaging.KEY_ACTION_SENDTO_MESSAGE_SUBJECT, subject);
  7. intent.putExtra(Messaging.KEY_ACTION_SENDTO_MESSAGE_BODY, body);
  8. intent.putExtra(Messaging.KEY_ACTION_SENDTO_CONTENT_URI, sb.toString());
  9. intent.putExtra(Messaging.KEY_ACTION_SENDTO_COMPOSE_MODE, composeMode);
  10. intent.putExtra(Messaging.KEY_ACTION_SENDTO_EXIT_ON_SENT, exitOnSent);

  11. startActivity(intent);
复制代码
6、显示toast

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

复制代码
7、发送Mail

  1.   
  2. mime = “img/jpg”;
  3.             
  4. shareIntent.setDataAndType(Uri.fromFile(fd), mime);

  5. shareIntent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(fd));

  6. shareIntent.putExtra(Intent.EXTRA_SUBJECT, subject);

  7. shareIntent.putExtra(Intent.EXTRA_TEXT, body);
复制代码
8、注册一个BroadcastReceiver

  1. registerReceiver(mMasterResetReciever, new IntentFilter(”OMS.action.MASTERRESET”));

  2. private BroadcastReceiver mMasterResetReciever = new BroadcastReceiver()
  3. {
  4.         public void onReceive(Context context, Intent intent)
  5.        {
  6.             String action = intent.getAction();

  7.             if (”oms.action.MASTERRESET”.equals(action) )
  8.            {
  9.                 RecoverDefaultConfig();
  10.             }
  11.         }
  12. };

复制代码
9、定义ContentObserver,监听某个数据表

  1. private ContentObserver mDownloadsObserver = new DownloadsChangeObserver(Downloads.CONTENT_URI);

  2. private class DownloadsChangeObserver extends ContentObserver
  3. {
  4.         public DownloadsChangeObserver(Uri uri)
  5.         {
  6.             super(new Handler());
  7.         }

  8.         @Override
  9.         public void onChange(boolean selfChange) {}
  10.   
  11. }

  12.    
复制代码
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. 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. }
复制代码
Setting.xml:

  1. Android:key=”seting2″

  2.          android:title=”@string/seting2″
  3.          android:summary=”@string/seting2″/>
  4.          android:key=”seting1″
  5.          android:title=”@string/seting1″
  6.          android:summaryOff=”@string/seting1summaryOff”
  7.            android:summaryOn=”@stringseting1summaryOff”/>
复制代码
14、通过HttpClient从指定server获取数据

  1. DefaultHttpClient httpClient = new DefaultHttpClient();

  2.           HttpGet method = new HttpGet(“http://www.ligotop.com/index.html”);
  3.           HttpResponse resp;
  4.           Reader reader = null;

  5.           try {
  6.               // AllClientPNames.TIMEOUT
  7.               HttpParams params = new BasicHttpParams();
  8.               params.setIntParameter(AllClientPNames.CONNECTION_TIMEOUT, 10000);
  9.             
  10.               httpClient.setParams(params);
  11.               resp = httpClient.execute(method);
  12.               int status = resp.getStatusLine().getStatusCode();
  13.             
  14.               if (status != HttpStatus.SC_OK)
  15.               {
  16.                  return false;
  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
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值