首页 > 其他 > 详细

全局获取Context的技巧

时间:2018-09-24 14:22:08      阅读:151      评论:0      收藏:0      [点我收藏+]

回想起我所学的内容,就会发现很多时候都会用到Context,比如弹出Toast的时候,启动活动,发送广播,操作数据库的时候都会用到。大多时候我们都是在活动中操作的,所以不用为获取Context而发愁,因为活动本身就是一个Context,但是当应用的架构复杂起来的时候,你就会发现,很多代码都会脱离活动,这时候你有需要Context,这就是一件令你头疼的时候了。下来我们就讲讲如何获取Context。

为简单,我们举个例子来说明下:
public class HttpUtil{

public static void sendHttpRequest( final String address,final HttpCallbackListener listener){

new Thread(

new Runnable(){

public void run(){

HttpURLConnection conn = null;

URL url = null;

try{

url = new URL(address);

conn = (HttpURLConnection)url.openConnection();

conn.setRequestMethod("GET");

conn.setConnectTimeout(8000);

conn.setReadTimeout(6000);

conn.setDoInput(true);

conn.setDoOutput(true);

InputStream in = conn.getInputStream();

BufferedReader reader = new BufferedReader(new InputStreamReader(in));

StringBuilder res = new StringBuilder();

String line = "";

while((line = reader.readLine())! = null){

res.addpend(line);

if(listener != null){

listener.onFinsh(res.toString());

}

}

catch(Exception e){

if(listener != null){

listener.onError(e);

}

}

 

finally{

if(conn != null){

conn.disconnect();

}

}

}

}

}

).start();

}

 

 

}

 

 

 

 

由上可知,获取Context类是一件很难的事,为此android提供了一个Application类,每当应用程序启动的时候,系统就会自动将这个类进行初始化。我们定制一个自己的Application类。

public class Myapplication extends Application{

private static Context context;

public void onCreate(){

context = getApplicationContext();

}

public static Context getContext(){

return context;

}

}

全局获取Context的技巧

原文:https://www.cnblogs.com/index-xue/p/9695296.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!