欢迎来到天天文库
浏览记录
ID:37916310
大小:17.67 KB
页数:4页
时间:2019-06-02
《AndroidJSON解析示例代码》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、AndroidJSON解析示例代码 --未审核编辑文档 来自google官方的有关Android平台的JSON解析示例,如果远程服务器使用了json而不是xml的数据提供,在Android平台上已经内置的org.json包可以很方便的实现手机客户端的解析处理。下面Android123一起分析下这个例子,帮助Android开发者需要有关HTTP通讯、正则表达式、JSON解析、appWidget开发的一些知识。publicclassWordWidgetextendsAppWidgetProvider{//app
2、Widget @Override publicvoidonUpdate(Contextcontext,AppWidgetManagerappWidgetManager, int[]appWidgetIds){ context.startService(newIntent(context,UpdateService.class));//避免ANR,所以Widget中开了个服务 } publicstaticclassUpdateServiceextendsServ
3、ice{ @Override publicvoidonStart(Intentintent,intstartId){ //Buildthewidgetupdatefortoday RemoteViewsupdateViews=buildUpdate(this); ComponentNamethisWidget=newComponentName(this,WordWidget.class); AppWidge
4、tManagermanager=AppWidgetManager.getInstance(this); manager.updateAppWidget(thisWidget,updateViews); } publicRemoteViewsbuildUpdate(Contextcontext){ //Pickoutmonthnamesfromresources Resourcesres=context.getResources
5、(); String[]monthNames=res.getStringArray(R.array.month_names); Timetoday=newTime(); today.setToNow(); StringpageName=res.getString(R.string.template_wotd_title, monthNames[today.month],today.monthD
6、ay); RemoteViewsupdateViews=null; StringpageContent=""; try{ SimpleWikiHelper.prepareUserAgent(context); pageContent=SimpleWikiHelper.getPageContent(pageName,false); }catch(ApiExceptione){
7、 Log.e("WordWidget","Couldn'tcontactAPI",e); }catch(ParseExceptione){ Log.e("WordWidget","Couldn'tparseAPIresponse",e); } Patternpattern=Pattern.compile(SimpleWikiHelper.WORD_OF_DAY_REGEX);//正则表达式处理,
8、有关定义见下面的SimpleWikiHelper类 Matchermatcher=pattern.matcher(pageContent); if(matcher.find()){ updateViews=newRemoteViews(context.getPackageName(),R.layout.widget_word);
此文档下载收益归作者所有