安卓的活动是在哪个文件中注册的
㈠ 安卓软件几个部分组成
(抱歉,这是我在其它地方粘贴的。顶一下吧)一般来说Android 程序主要由下列四个部分组成,分别是:活动(Activity) - 用于表现功能服务(Service) - 相当于后台运行的Activity广播接收器(BroadcastReceiver) - 用于接收广播意图(Intent)- 用于连接以上各个组件,并在其间传递消息
1 Activity 介绍
Android 中,Activity 是所有程序的根本,所有程序的流程都运行在Activity 之中,Activity可以算是开发者遇到的最频繁,也是Android 当中最基本的模块之一。在Android的程序当中,Activity 一般代表手机屏幕的一屏。如果把手机比作一个浏览器,那么Acitivity就相当于一个网页。在Activity 当中可以添加一些Button、Check box 等控件。可以看到Activity 的概念和网页的概念相当类似。 一般一个Android 应用是由多个Activity 组成的。这多个Activity 之间可以进行相互跳转,例如,按下一个Button 按钮后,可能会跳转到其他的Activity。和网页跳转稍微有些不一样的是,Activity 之间的跳转有可能返回值,例如,从Activity A 跳转到Activity B,那么当Activity B 运行结束的时候,有可能会给Activity A 一个返回值。这样做在很多时候是相当方便的。 当打开一个新的屏幕时,之前一个屏幕会被置为暂停状态,并且压入历史堆栈中。用户可以通过回退操作返回到以前打开过的屏幕。我们可以选择性的移除一些没有必要保留的屏幕,因为Android 会把每个应用的开始到当前的每一个屏幕保存在堆栈中。Activity 是由Android 系统进行维护的,它也有自己的生命周期,即它的一个产生、运行、销毁的一个周期,对于Activity,关键是其生命周期的把握,其次就是状态的保存和恢复(onSaveInstanceState onRestoreInstanceState),以及Activity 之间的跳转和数据传输(intent)。
2 Service 介绍
Service 是android 系统中的一种组件,它跟Activity 的级别差不多,但是他不能自己运行,只能后台运行,并且可以和其他组件进行交互。Service 是没有界面的长生命周期的代码。Service 是一种程序,它可以运行很长的时间,但是它却没有用户界面。这么说有点枯燥,我们来看个例子。打开一个音乐播放器的程序,这个时候若想上网了,那么,我们打开Android 的浏览器,这个时候虽然我们已经进入了浏览器这个程序,但是,歌曲的播放并没有停止,而是在后台继续一首接着一首的播放。其实这个播放就是由播放音乐的Service进行控制。当然这个播放音乐的Service也可以停止,例如,当播放列表里边的歌曲都结束,或者用户按下了停止音乐播放的快捷键等。service 可以在和多场合的应用中使用,比如播放多媒体的时候用户启动了其他Activity这个时候程序要在后台继续播放,比如检测SD 卡上文件的变化,再或者在后台记录你地理信息位置的改变等等,总之服务嘛,总是藏在后头的。
3 BroadcastReceiver 介绍
在Android 中,Broadcast 是一种广泛运用的在应用程序之间传输信息的机制。而BroadcastReceiver 是对发送出来的Broadcast进行过滤接受并响应的一类组件。可以使用BroadcastReceiver 让应用对一个外部的事件做出响应。这是非常有意思的,例如,当电话呼入这个外部事件到来的时候,可以利用BroadcastReceiver 进行处理。例如,当下载一个程序成功完成的时候,仍然可以利用BroadcastReceiver 进行处理。BroadcastReceiver不能生成UI,也就是说对于用户来说不是透明的,用户是看不到的。BroadcastReceiver通过NotificationManager 来通知用户这些事情发生了。BroadcastReceiver 既可以在AndroidManifest.xml 中注册,也可以在运行时的代码中使用Context.registerReceiver()进行注册。只要是注册了,当事件来临的时候,即使程序没有启动,系统也在需要的时候启动程序。各种应用还可以通过使用Context.sendBroadcast () 将它们自己的intent broadcasts广播给其他应用程序。注册BroadcastReceiver有两种方式:
4 Intent 介绍
Intent 是一个将要执行的动作的抽象的描述,一般来说是作为参数来使用,由Intent来协助完成android 各个组件之间的通讯。Intent 负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述,Android 则根据此Intent 的描述,负责找到对应的组件,将Intent 传递给调用的组件,并完成组件的调用。因此,Intent 在这里起着一个媒体中介的作用,专门提供组件互相调用的相关信息,实现调用者与被调用者之间的解耦。例如,在一个联系人维护的应用中,当我们在一个联系人列表屏幕(假设对应的Activity 为listActivity)上,点击某个联系人后,希望能够跳出此联系人的详细信息屏幕(假设对应的Activity为detailActivity)。为了实现这个目的,listActivity需要构造一个Intent,这个Intent 用于告诉系统,我们要做"查看"动作,此动作对应的查看对象是"某联系人",然后调用startActivity(Intent intent),将构造的Intent 传入,系统会根据此Intent 中的描述,到ManiFest中找到满足此Intent 要求的Activity,系统会调用找到的Activity,即为detailActivity,最终传入Intent,detailActivity 则会根据此Intent中的描述,执行相应的操作。Intent 主要是用来启动其他的activity 或者service,所以可以将intent 理解成activity 之间的粘合剂。Intent具体有一下3 种形式: 通过startActivity 方法来启动一个新的Activity; 通过broadcast Intent 机制可以将一个Intent 发送给任何对这个Intent 感兴趣的BroadcastReceiver; 通过startService (Intent) 或bindService(Intent,ServiceConnection,int) 来和后台的Service 进行交互。
㈡ 安卓开发 用户注册如何实现
1、在Eclipse中创建Android项目实现用户注册界面。并在单击"提交"按钮时,启动另一个Activity显示成写的注册信息。
2、修改新建项目的resayou.目录下的布局文件.xml.在默认添加的垂直线性布局管理器中,添加用于用户注册信息的文本框和编辑框以及一个"提交"按钮。
3、打开默认创建的主活动MainActivity.在onCreate()方法中,获取“提交”按钮,并为其添加单击事件监听器。
4、重写的onClick()方法。首先获取翰入的用户名、密码、确认密码和E-mail地址,并保存到相应的变量中;然后判断翰入信息是否为空,如果为空给出提示框,否则判断两次愉入的密码是否一致,如果不一致,将给出提示信息,并清空“密码,和”确认密码“编辑框。让”密码“编辑框获得焦点。否则,将录入的信息保存到Bundle中。并启动一个新的Activity显示愉入的用户注册信息。
java">Buttonsubmit=(Button)findViewById(R.id.submit);//获取“提交”按钮
submit.setOnClickListener(newView.OnClickListener(){
@Override
publicvoidonClick(Viewv){
Stringuser=((EditText)findViewById(R.id.user)).getText().toString();//获取输入的用户名
Stringpass=((EditText)findViewById(R.id.pass)).getText().toString();//获取输入的密码
Stringrepass=((EditText)findViewById(R.id.repass)).getText().toString();//获取输入的确认密码
Stringemail=((EditText)findViewById(R.id.email)).getText().toString();//获取输入的邮箱
if(!"".equals(user)&&!"".equals(pass)&&!"".equals(email)){
//判断两次输入的密码是否一致
if(!pass.equals(repass)){
Toast.makeText(MainActivity.this,"两次输入的密码不一致,请重新输入!",Toast.LENGTH_LONG).show();
((EditText)findViewById(R.id.pass)).setText("");//清空“密码”编辑框
((EditText)findViewById(R.id.repass)).setText("");//清空“确认密码”编辑框
((EditText)findViewById(R.id.pass)).requestFocus();//让“密码”编辑框获得焦点
}else{
//将收入与的信息保存到Bundle中,并启动一个新的Activitiy显示输入的用户注册信息
Intentintent=newIntent(MainActivity.this,RegisterActivity.class);
Bundlebundle=newBundle();//创建并实例化一个Bundle对象
bundle.putCharSequence("user",user);//保存用户名
bundle.putCharSequence("pass",pass);//保存密码
bundle.putCharSequence("email",email);//保存邮箱名
intent.putExtras(bundle);//将Bundle对象添加到Intent对象中
startActivity(intent);//启动新的Activity
}
}else{
Toast.makeText(MainActivity.this,"请将注册信息输入完整!",Toast.LENGTH_LONG).show();
}
}
});
㈢ 怎样查看一个文件夹是由哪个软件创建的
需要通过注册表窗口进行寻找,方法如下:
操作设备:戴尔电脑
操作系统:win10
1、打开需要查找文件的目录,如下图所示:
㈣ 安卓系统 SYSTEM是什么意思
SYSTEM有体系,系统的意思。安卓系统 SYSTEM是手机里系统文件夹。
system下属文件夹中,还会有一系列文件夹。
system/app 里面主要存放的是常规下载的应用程序,是以apk格式结尾的文件。这个文件夹下的文件是系统默认的组件,自己手机安装的软件在data文件夹中。
system/bin 里面都是系统的本地程序,里面主要是Linux系统自带的组件(命令)。
system/etc 这个文件夹是系统的配置文件,APN接入点设置等核心配置。
system/fonts 这个是字体文件夹,除了标准字体和粗体、斜体外,体积最大的是中文字库,还有一些unicode字库。
system/framework framework主要是一些核心的文件,主要是系统平台框架。
system/lib 这个目录中存放的主要是系统底层库,比如平台运行时库。
system/media/audio 铃声音乐文件夹,存放一些常规的铃声外还有系统提示事件音。
system/usr 这个是用户文件夹,其中包含共享、键盘布局、时间区域文件等。
(4)安卓的活动是在哪个文件中注册的扩展阅读
SYSTEM为Windows系统中众多系统内置安全主体中的一个,可作为服务用户登录系统,在XP及以下版本的操作系统中拥有最高权限(从Vista开始,微软削弱了SYSTEM用户的部分权限)
SYSTEM拥有的权限
编辑,更改或删除系统文件(在Vista及以上版本的系统已将该权限交给了TrustedInstaller用户)。
可以访问和更改某些管理员无法访问的注册表项。
可以访问和更改某些管理员无法访问的文件夹。
其他权限与管理员权限相同。
㈤ 安卓程序安装过程中,apk包里的文件都解压到了手机里的哪些文件夹
以下内容只针对把软件安装在手机内存的情况。
安装软件时系统会把整个apk文件复制到根目录/data/app中,然后会在根目录/data/data中建立该软件用的缓存文件夹和缓存文件,如书签、历史记录等文件。
用Re管理器手动安装软件也是可以的,把apk文件直接复制到/data/app。但要改权限和用户组,改为和/data/app中其它软件一样的就行了。但有时系统不能及时在/data/data中建立该软件用的缓存文件夹和缓存文件,这时如果马上打开软件的话就会提示“×××程序在×××进程中意外停止,请重试”,这时一般重启手机就行了(系统自动在/data/data中建立该软件用的缓存文件夹和缓存文件)。
把apk文件复制到根目录/system/app也是可以的,但同样要改权限和用户组,这样你安装的程序就会被系统识别为系统自带软件,恢复出厂设置后也不会被删除。
如果你备份过根目录/data/data在某个软件用的缓存文件,卸载这个软件又重新安装后,你如果想用以前的记录,可以把那个缓存文件直接替换对应文件夹中的同名文件,但仍要改权限和用户组和被替换的文件的一样,所以不要整个缓存文件的文件夹都替换,因为那就要一个一个地改了,替换某个文件就行了。如果不改权限和用户组,软件就无法正常工作。
总而言之,直接用文件管理器点击apk文件安装(调用系统自带的“打包安装程序”),比较方便。
㈥ 安卓文件可以删除吗
可以删除,但是会重新生成的。
这个是系统的缓存文件,删了之后可能你存在手机上 的一些东西就不见了,里面一个是data文件及是存放数据的一个obb文件夹。
Android是一种基于Linux的自由及开放源代码的操作系统。
主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。尚未有统一中文名称,中国大陆地区较多人使用“安卓”。
Android操作系统最初由Andy Rubin开发,主要支持手机。
(6)安卓的活动是在哪个文件中注册的扩展阅读:
系统结构:
Android 是运行于Linux kernel之上,但并不是GNU/Linux。因为在一般GNU/Linux 里支持的功能,Android 大都没有支持,包括Cairo、X11、Alsa、FFmpeg、GTK、Pango及Glibc等都被移除掉了。
Android又以Bionic 取代Glibc、以Skia 取代Cairo、再以opencore取代FFmpeg等等。
Android 为了达到商业应用,必须移除被GNU GPL授权证所约束的部份,例如Android将驱动程序移到 Userspace,使得Linux driver 与 Linux kernel彻底分开。
Bionic/Libc/Kernel/ 并非标准的Kernel header files。Android 的 Kernel header 是利用工具由 Linux Kernel header 所产生的,这样做是为了保留常数、数据结构与宏。
Android 的 Linux kernel控制包括安全(Security),存储器管理(Memory Management),程序管理(Process Management),网络堆栈(Network Stack),驱动程序模型(Driver Model)等。
下载Android源码之前,先要安装其构建工具 Repo来初始化源码。Repo 是 Android 用来辅助Git工作的一个工具。
应用组件:
1、活动
Android 中,Activity是所有程序的根本,所有程序的流程都运行在Activity 之中,Activity可以算是开发者遇到的最频繁,也是Android 当中最基本的模块之一。
在Android的程序当中,Activity 一般代表手机屏幕的一屏。如果把手机比作一个浏览器,那么Activity就相当于一个网页。
在Activity 当中可以添加一些Button、Check box 等控件。可以看到Activity 概念和网页的概念相当类似。
一般一个Android 应用是由多个Activity 组成的。这多个Activity 之间可以进行相互跳转,例如,按下一个Button按钮后,可能会跳转到其他的Activity。
和网页跳转稍微有些不一样的是,Activity 之间的跳转有可能返回值,例如,从Activity A 跳转到Activity B,那么当Activity B 运行结束的时候,有可能会给Activity A 一个返回值。这样做在很多时候是相当方便的。
当打开一个新的屏幕时,之前一个屏幕会被置为暂停状态,并且压入历史堆栈中。用户可以通过回退操作返回到以前打开过的屏幕。
可以选择性的移除一些没有必要保留的屏幕,因为Android会把每个应用的开始到当前的每个屏幕保存在堆栈中。
2、服务
Service 是android 系统中的一种组件,它跟Activity 的级别差不多,但是他不能自己运行,只能后台运行,并且可以和其他组件进行交互。
Service 是没有界面的长生命周期的代码。Service是一种程序,它可以运行很长时间,但是它却没有用户界面。这么说有点枯燥,来看个例子。
打开一个音乐播放器的程序,这个时候若想上网了,那么,打开Android浏览器,这个时候虽然已经进入了浏览器这个程序。
但是,歌曲播放并没有停止,而是在后台继续一首接着一首的播放。其实这个播放就是由播放音乐的Service进行控制。
当然这个播放音乐的Service也可以停止,例如,当播放列表里边的歌曲都结束,或者用户按下了停止音乐播放的快捷键等。
Service 可以在和多场合的应用中使用,比如播放多媒体的时候用户启动了其他Activity这个时候程序要在后台继续播放,比如检测SD 卡上文件的变化,再或者在后台记录地理信息位置的改变等等,总之服务嘛,总是藏在后头的。
3、广播接收器
在Android 中,Broadcast是一种广泛运用的在应用程序之间传输信息的机制。
而BroadcastReceiver 是对发送出来的Broadcast进行过滤接受并响应的一类组件。
可以使用BroadcastReceiver 来让应用对一个外部的事件做出响应。这是非常有意思的,例如,当电话呼入这个外部事件到来的时候,可以利用BroadcastReceiver 进行处理。
例如,当下载一个程序成功完成的时候,仍然可以利用BroadcastReceiver 进行处理。
BroadcastReceiver不能生成UI,也就是说对于用户来说不是透明的,用户是看不到的。
BroadcastReceiver通过NotificationManager 来通知用户这些事情发生了。
BroadcastReceiver 既可以在AndroidManifest.xml 中注册,也可以在运行时的代码中使用Context.registerReceiver()进行注册。
只要是注册了,当事件来临的时候,即使程序没有启动,系统也在需要的时候启动程序。
各种应用还可以通过使用Context.sendBroadcast () 将它们自己的Intent Broadcasts广播给其他应用程序。
4、内容提供
Content Provider 是Android提供的第三方应用数据的访问方案。
在Android[16]中,对数据的保护是很严密的,除了放在SD卡中的数据,一个应用所持有的数据库、文件等内容,都是不允许其他直接访问的。
Android当然不会真的把每个应用都做成一座孤岛,它为所有应用都准备了一扇窗,这就是Content Provider。
应用想对外提供的数据,可以通过派生Content Provider类, 封装成一枚Content Provider,每个Content Provider都用一个uri作为独立的标识。
形如:content://com.xxxxx。所有东西看着像REST的样子,但实际上,它比REST 更为灵活。
和REST类似,uri也可以有两种类型,一种是带id的,另一种是列表的,但实现者不需要按照这个模式来做,给id的uri也可以返回列表类型的数据,只要调用者明白,就无妨,不用苛求所谓的REST。
㈦ manifest是什么文件
manifest为一种软件,属于AndroidManifest.xml文件,在简单的Android系统的应用中提出了重要的信息,它可以运行任何应用程序的代码。
MANIFEST.MF:这个manifest文件定义了与扩展和包相关的数据。单词“manifest”的意思是“显示”。
打开Java的JAR文件经常可以看到文件中包含着一个META-INF目录,这个目录下会有一些文件,其中必有一个MANIFEST.MF,这个文件描述了该Jar文件的很多信息。
(7)安卓的活动是在哪个文件中注册的扩展阅读
每个安卓应用程序必须有一个AndroidManifest.xml文件,在app/manifests目录中。它在简单的Android系统的应用中提出了重要的信息,信息系统必须具备之前,它可以运行任何应用程序的代码。
除其他事项外,清单中执行下列操作:
它给应用程序的Java包命名,包的名称作为应用程序的唯一标识符。
它描述了应用程序的组件的活动、服务,广播接收机,内容提供商,应用程序组成。它命名的类,实现每个组件,并出版自己的能力(例如,可以处理哪些意图的消息)。这些声明让Android系统知道这些组件是什么和在什么条件下,他们可以推出。
它决定哪些进程将运行应用程序组件。它决定了应用程序必须有权限才能访问受保护的API部分,并与其他应用程序进行交互。它还决定了其他人与应用程序的组件交互所需要的权限。它宣布了AndroidAPI的应用程序需要的最低水平。