Mono for Android (2)-- Android应用程序初认识
一:日志记录
先添加using Android.Util; 在该命名控件下有log类
Log.Info("HA", "End onCreate"); //记录消息
Log.Warn("警告", "安全"); //记录警告
Log.Error("错误", "error"); //记录错误
二:Android应用程序的构建基块
- 活动
1.一个“活动”就是一个可用来完成单个任务的用户界面组件。
2.ono for Andorid中允许在活动类的声明中通过使用 MainLauncher = true 来指定启动活动,必须唯一。
3.多数情况下,一个活动拥有两个基本操作部分:1)个或者多个试图的集合。2)活动类,充当控制器的角色。
4.活动生命周期:一个活动的生命周期包含了一系列的状态(从onCreate() 中被创建开始,到onDestroy()被销毁时结束),活动通常有3中状态:
1)当活动正在设备上面运行并且位于屏幕前台时处于“活动(Active)”状态
2)当活动仍然可见但是却不拥有屏幕焦点时处于“暂停(paused)”状态
3)当某一活动被另一活动所遮蔽时处于“停止(Stopped)”状态。当活动处于此状态时,它就是进行销毁的最佳目标,以便释放资源
5.Activity类的可触发事件:OnCreate()、OnStart()、OnRestart()、OnResume()、OnPause()、OnStop()、OnDestroy()
- 服务
服务是开发人员所定义的、可以无限期运行的工作单元。
没有可视化组件。
服务也是运行在和其他程序相同的线程中。
除非开发人员加以特殊处理,否则Android应用程序中的所有项目都运行在相同的线程中。
- 内容提供器
是实现跨多个应用程序共享信息的首选方法。可将其想象为一种公共数据存储类型。
常用内容提供器:
1)AlarmClock :提供对系统警报时钟应用程序的访问,从而允许不同的应用程序设置警报模式和时间
2)Browser : 公开诸如Web搜索。历史以及书签之类的数据集供查看或编辑
3)CallLog :提供关于电话打入、打出以及未接电话的信息,包括电话号码、时间以及通话持续时间
4)ContactsContract :用于查看或修改联系人数据。
5)MediaStore : 提供对Andorid设备上媒体的通用访问,其中包括图像、视频以及音频。此外,该提供器公开了设备上媒体的元数据,比如流派和艺术家
6)Settings : 提供了对Android设备全局系统设置和首选项的访问。
7)UserDictionary: 允许对用户定义的单词进行插入或查看。
同时,可从android.provider 命名控件的开发文档中找到所有可用的默认内容提供器列表
* 由ContentResolver对象负责处理与内容提供的交互。充当了数据存储的中介。它有两个基本规则:一是所有的内容必须有一个唯一的URI,类似于一个Web地址。二是基类ContentProvider定义了可在实现的提供器上执行的所有可能操作。开发者无权编写自己的访问方法。常用的ContentResolver函数为query()、update()、insert() 、delete() 、gerType()。
- 广播接收器
用户监听事件并做出相应的应用程序组件。往往只是对所发生的事件做出响应,但是不会对该事件的任何相应过程进行处理。 有5秒钟的执行限制。
只有一个回调方法,OnReceive()。
Mono for Android (2)-- Android应用程序初认识的更多相关文章
- 不安分的android开发者(小程序初尝试,前后台都自己做)
前言 作为一个稍微有点想法的程序员来说,拥有一个自己开发,自己运营,完全属于自己的应用,应该是很多人的梦想.刚毕业那会,自己的工作是做游戏,于是也和朋友业余时间开发一些小游戏玩玩,可是终究不成气候,而 ...
- Android开发之漫漫长途 Ⅰ——Android系统的创世之初以及Activity的生命周期
该文章是一个系列文章,是本人在Android开发的漫漫长途上的一点感想和记录,我会尽量按照先易后难的顺序进行编写该系列.该系列引用了<Android开发艺术探索>中的相关知识,再次表示该书 ...
- Android Studio中JNI程序的单步调试和日志打印
近日有个算法(检测碰撞)需要用C++实现,目的是IOS和ANDROID中共享同一段程序. 下面说说android调用这段程序过程中遇到的一些事情.(过程中网上搜索了一些相关文章,大部分说的是eclip ...
- Android如何做到应用程序图标隐藏,由第三方程序启动
在你App的AndroidManifest.xml中,将启动页做如下修改 <intent-filter> <action android:name="android.int ...
- Android监听应用程序安装和卸载
Android监听应用程序安装和卸载 第一. 新建监听类:BootReceiver继承BroadcastReceiver package com.rongfzh.yc; import android. ...
- android完全退出应用程序
android 完全退出应用程序android android 退出应用程序, 单例模式管理Activity引自:http://www.yoyong.com/archives/199android 退 ...
- Android中获取应用程序(包)的信息----PackageManager
本节内容是如何获取Android系统中应用程序的信息,主要包括packagename.label.icon.占用大小等.具体分为两个 部分,计划如下: 第一部分: 获取应用程序的packagena ...
- Xamarin android PreferenceActivity 实现应用程序首选项设置(一)
应用程序首选项屏幕 类似系统设置界面. PreferenceActivity 是另一种类型的Activity,通过PreferenceActivity 可以以最少量的工作显示某些Preference列 ...
- Android中获取应用程序(包)的大小-----PackageManager的使用(二)
通过第一部分<<Android中获取应用程序(包)的信息-----PackageManager的使用(一)>>的介绍,对PackageManager以及 AndroidMani ...
- Android中获取应用程序(包)的信息-----PackageManager的使用(一)
本节内容是如何获取Android系统中应用程序的信息,主要包括packagename.label.icon.占用大小等.具体分为两个 部分,计划如下: 第一部分: 获取应用程序的packagenam ...
随机推荐
- .NET平台下,关于数据持久层框架
在.NET平台下,关于数据持久层框架非常多,本文主要对如下几种做简要的介绍并推荐一些学习的资源: 1.NHibernate 2.NBear 3.Castle ActiveRecord 4.iBATIS ...
- Oracle笔记 五、创建表、约束、视图、索引、序列、同义词、表空间
alter table userInfo add(msn varchar2(20)); 1.建表 create table userInfo ( id number(6), name varchar2 ...
- EnCase v7 could not recognize Chinese character folder names / file names on Linux Platform
Last week my friend brought me an evidence file duplicated from a Linux server, which distribution i ...
- 轻松入门React和Webpack
最近在学习React.js,之前都是直接用最原生的方式去写React代码,发现组织起来特别麻烦,之前听人说用Webpack组织React组件得心应手,就花了点时间学习了一下,收获颇丰 <!-- ...
- 关于原生js的一些研究
搬砖,原文地址:http://segmentfault.com/a/1190000002911253 callee和caller function inner(){ console.log(argum ...
- .NET使用ICSharpCode.SharpZipLib压缩/解压文件
SharpZipLib是国外开源加压解压库,可以方便的对文件进行加压/解压 1.下载ICSharpCode.SharpZipLib.dll,并复制到bin目录下 http://www.icsharpc ...
- PUTTY使用Ctrl+s僵死的问题
算是分享个小经验吧! 一直都是使用VM+PUTTY的方式调试Linux程序,有时候在Vi中编辑了程序,Windowns下旧习难改,顺手就Ctrl+s了,尽管我知道Vi的保存是:w. 很不幸这时的PUT ...
- 在WP8项目中使用ARMASM
由于之前项目中某些密集运算优化的需要,涉及到ARMASM相关的内容, 所以有幸可以在此分享一下自己的经验. 先铺垫一些知识: 1. ARM处理器有两种指令ARM.THUMB, 在WP8下默认是THUM ...
- 在Javascript操作JSON对象,增加 删除 修改
在Javascript操作JSON对象,增加删除修改全有的,详情见代码 <script type="text/javascript"> var jsonObj2 = { ...
- java android 访问DELPHI 的DATASNAP
最新版的DELPHI开发DATASNAP非常简单便捷,DataSnap的REST风格和对JSON的支持,使之成为服务器端开发的神器. 一.DATASNAP服务器中的方法: TServerMethods ...