您的位置:首页 > 移动开发 > Android开发

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

2013-05-02 14:08 309 查看


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

本文来自:http://www.iwapzone.com/html/article/2012/0826/275.htmlwap地带-android开发基地

查看是否有存储卡插入,让某个Activity透明,在屏幕元素中设置句柄,发送短信,发送彩信,显示toast,发送Mail,注册一个BroadcastReceiver,定义ContentObserver,监听某个数据表,获得 手机UA,清空手机上cookie,建立

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



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


2、让某个Activity透明


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


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


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

1
TextView
msgTextView = (TextView)findViewById(R.id.msg);
2
3
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、发送彩信


01
StringBuilder
sb =
new
StringBuilder();
02
03
sb.append(”file:
//”);
04
05
sb.append(fd.getAbsoluteFile());
06
07
Intent
intent =
new
Intent(Intent.ACTION_SENDTO,
Uri.fromParts(”mmsto”,number,
null
));
08
09
//
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
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


01
registerReceiver(mMasterResetReciever,
new
IntentFilter(”OMS.action.MASTERRESET”));
02
03
private
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,监听某个数据表



01
private
ContentObserver
mDownloadsObserver =
new
DownloadsChangeObserver(Downloads.CONTENT_URI);
02
03
private
class
DownloadsChangeObserver
extends
ContentObserver
04
{
05
public
DownloadsChangeObserver(Uri
uri)
06
{
07
super
(
new
Handler());
08
}
09
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连接

01
//Dial
the GPRS link.
02
private
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
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
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获取数据

view
source

print?

01
DefaultHttpClient
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.TIMEOUT
09
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 block
28
e.printStackTrace();
29
}
30
 
catch
(IOException
e)
31
 
{
32
//
TODO Auto-generated catch block
33
e.printStackTrace();
34
}
35
 
finally
36
{
37
if
(reader
!=
null
)
38
try
39
 
{
40
reader.close();
41
 
}
42
 
catch
(IOException
e)
43
 
{
44
//
TODO Auto-generated catch block
45
e.printStackTrace();
46
 
}
47
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: