Android编程中14个解决实际问题的… 分类: Android开发 2014-05-30 10:54 62人阅读 评论(0) 收藏
还在为学习Adroid语言苦恼?这里为初学者介绍了十四段简单实用的代码,保存下来需要时轻松一键获得。其中包括检查是否有SD卡,让某个Activity透明,在屏幕元素中设置句柄等等在实际应用经常用到的简短代码。
1、查看是否有存储卡插入
-
String
status=Environment.getExternalStorageState(); -
-
if
( status.equals ( Enviroment.MEDIA_MOUNTED ) ) -
{
-
说明有SD卡插入 -
}
2、让某个Activity透明
OnCreate中不设Layout
-
this.setTheme(R.style.Theme_Transparent);
以下是Theme_Transparent的定义(注意transparent_bg是一副透明的图片)
3、在屏幕元素中设置句柄
使用Activity.findViewById来取得屏幕上的元素的句柄,使用该句柄您可以设置或获取任何该对象外露的值。
-
TextView
msgTextView = (TextView)findViewById(R.id.msg); -
msgTextView.setText(R.string.push_me);
4、发送短信
-
String body=”this is mms demo”; -
-
Intent mmsintent = new Intent(Intent.ACTION_SENDTO, null));Uri.fromParts(”smsto”, number, -
-
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、发送彩信
-
StringBuilder sb = new StringBuilder(); -
-
sb.append(”file://”); -
-
sb.append(fd.getAbsoluteFile()); -
-
Intent intent = new Intent(Intent.ACTION_SENDTO, null));Uri.fromParts(”mmsto”, number, -
-
// 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
-
view
plaincopy -
Toast.makeText(this._getApplicationContext(),
R.string._item, Toast.LENGTH_SHORT).show();
7、发送Mail
-
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
-
registerReceiver(mMasterResetReciever,
new IntentFilter(”OMS.action.MASTERRESET”)); -
-
private
BroadcastReceiver newmMasterResetReciever = BroadcastReceiver() -
{
-
public void onReceive(Context context, Intent intent) -
{ -
String action = intent.getAction(); -
-
if (”oms.action.MASTERRESET”.equals(action) ) -
{ -
RecoverDefaultConfig(); -
} -
} - };
9、定义ContentObserver,监听某个数据表
-
private
ContentObserver newmDownloadsObserver = DownloadsChangeObserver(Downloads.CONTENT_URI); -
-
private
class DownloadsChangeObserver extendsContentObserver -
{
-
public DownloadsChangeObserver(Uri uri) -
{ -
super(new Handler()); -
} -
-
@Override -
public void onChange( booleanselfChange) {} -
-
}
10、获得手机UA
-
public
String getUserAgent() -
{
-
String user_agent = ProductProperties.get(ProductProperties.USER_AGENT_KEY, null); -
-
return user_agent; -
}
11、清空手机上cookie
-
CookieSyncManager.createInstance
(getApplicationContext() ); -
-
CookieManager.getInstance().removeAllCookie();
12、建立GPRS连接
-
//Dial
the GPRS link. -
private
boolean openDataConnection() -
{
-
// Set up data connection. -
DataConnection conn = DataConnection.getInstance(); -
-
if ( 0connectMode == ) -
{ -
ret = conn.openConnection ( mContext, “cmwap”, "cmwap”, " cmwap”); -
} -
else -
{ -
ret = conn.openConnection(mContext, “cmnet”, "", ""); -
} -
}
13、PreferenceActivity 用法
-
public
class Setting extendsPreferenceActivity -
{
-
public void onCreate ( Bundle savedInstanceState ) -
{ -
super.onCreate ( savedInstanceState ); -
addPreferencesFromResour ce ( R.xml.settings ); -
} -
}
-
Setting.xml:
-
[java]
-
Android:key=”seting2″
-
-
android:title=”@string/seting2″ -
android:summary=”@string/seting2″/> -
android:key=”seting1″ -
android:title=”@string/seting1″ -
android:summaryOff=”@string/seting1summaryOff” -
android:summaryOn=”@stringseting1summaryOff”/>
14、通过HttpClient从指定server获取数据
-
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(); -
} -
}
版权声明:本文为博主原创文章,未经博主允许不得转载。