一、Android应用的基本组件介绍

  1.  Activity和View :Activity只能通过setContentView(View)来显示指定的组件。View组件是所有UI控件、容器控件的基类,View组件就是Android应用中用户实实在在看到的部分。但View组件需要放到容器组件中,或者使用Activity将它显示出来。如果需要通过某个Activity把指定View组件显示出来,调用Activity的setContentView()方法即可。setContenView()方法可接受一个View对象作为参数,例如如下代码:

    //创建一个线性布局管理器
    LinearLayout layout=new LinearLayout(this);
    //设置该Activity显示layout
    setContentView(layout);

    上面的程序通过代码创建了一个LinearLayout对象(它是ViewGroup的子类,ViewGroup又是View的子类),接着调用Activity的setContentView(layout)把这个布局管理器显示出来。setContentView()方法也接受一个布局管理资源的ID作为参数,例如如下代码:

    //设置该Activity显示main.xml文件定义的View
    setContentView(R.layout.main);

    Activity包含了一个setTheme(int resid)方法来设置其窗口的风格,例如我们希望窗口不显示ActionBar、一对话框形式显示窗口,都可以通过该方法来实现。

  2. Service:Service与Activity的地位是并列的,它也代表一个单独的Android组件。Service与Activity的区别在于:Services通常位于后台运行,它一般不需要用户交互,因此Service组件没有图形用户界面。与Activity组件需要继承Activity基类相似,Service组件需要继承Service基类。一个Service组件被运行起立之后,它将拥有自己独立的生命周期,Service组件通常用于为其他组件提供服务或监控其他组件的运行状态。
  3. BroadcastReceiver:BroadcastReceiver代表广播消息接收器。BroadcastRecevier非常类似于事件编程中的监听器,BroadcastReceiver监听的事件源是Android应用中的其他组价。使用BooadcastRecevier组件接收广播消息比较简单,开发者只需要实现自己的BroadcastRecevier子类,并重写onReceive(Context context,Intent intent)方法即可。当其他组件通过sendBroadcast()、sendStickyBroadcast()或sendOrderedBroadcast()方法发送广播消息时,如该BroadcastReceiver()也对该消息“感兴趣”(同过IntentFilter设置),BroadcastReceiver的onReceive(Context context,Intent intent)。①在Java代码中可以通过Context.registReceiver()方法注册BroadcastReceiver。在AndroidManifest.xml文件中使用<receiver />元素完成注册。
  4. ContentProvider:对于Android应用而言,他们必须相互独立,各自运行在自己的Dalvik虚拟机实例中。如果这些Android应用之间需要时时的数据交换,例如我们开发了一个发短信的程序,当发短信时需要从联系人管理应用中读取指定联系人的数据——这就需要多个应用之间进行数据交换。Android系统为这种跨应用的数据交换提供了一个标准:ContentProvider。当用户实现自己的ContentProvider时需要实现以下方法:①insert(Uri,ContentValues):向ContentProvider中插入数据。②delete(Uri,ContentValues)删除ContentProvider中的指定数据③update(Uri,ContentValues,String,String[])更新ContentProvider中的指定数据。④query(Uri,String[],String,String[],String)从ContentProvider中查询数据。   通常与ContentProvider结合使用的是ContentResolver,一个应用使用ContentProvider暴露自己的数据,另一个应用程序使用ContentResolver访问数据。
  5. Intent和IntentFilter:此处待续。

二、签名Android应用程序

  1. 在Eclipse中对Android应用签名
  • 右击Android项目,“Android Tools->Export Signed Application Package...”菜单项,Eclipse弹出如图所示窗口

单击“Next”按钮,Eclipse将会出现下图窗口

点击“Next”按钮,Eclipse打开下图窗口

点击“Finish”按钮,签名完成。Eclipse将会在指定路径下生成一个签名后的APK安装包。

上面数字证书生成之后,之后生成APK签名包时可以使用已有的数字证书。

三、把Android应用下载链接做成二维码

1.能够生成二维码的网站介绍

2.借助网盘和二维码生成网站二维码下载链接

  • 把签名后的安装包提交到百度网盘,并分享,并创建公开分享链接如图:

  • 在二维码生成网站中把公开链接生成二维码如下图:

用微信扫描二维码即可下载apk安装包

Android应用的基本组件介绍和签名Android应用程序的更多相关文章

  1. 17.(转) Android之四大基本组件介绍与生命周期

    Android四大基本组件分别是Activity,Service服务,Content Provider内容提供者,BroadcastReceiver广播接收器. 一:了解四大基本组件 Activity ...

  2. android拾遗——四大基本组件介绍与生命周期

    Android四大基本组件分别是Activity,Service服务,Content Provider内容提供者,BroadcastReceiver广播接收器. 一:了解四大基本组件 Activity ...

  3. Android Application的基本组件介绍

    一个Android应用通常由一个或多个基本组件组成,常用的一般有Activity.Service.BroadcastReceiver.ContentProvider.Intent等等. ⒈Activi ...

  4. 我的Android第三章:Android的组件介绍

    小编摘录了Android文档介绍Android四大组件的基本内容,感觉文档的内容写的很详细所以小编将它写入了博客 Android 使用Java语言开发.Android SDK 工具编译代码-以及任意数 ...

  5. Android四大基本组件介绍与生命周期

    Android四大基本组件介绍与生命周期 Android四大基本组件分别是Activity,Service服务,Content Provider内容提供者,BroadcastReceiver广播接收器 ...

  6. Android基础_1 四大基本组件介绍与生命周期

    Android四大基本组件分别是Activity,Service(服务),Content Provider(内容提供者),BroadcastReceiver(广播接收器). 一.四大基本组件 Acti ...

  7. Android官方架构组件介绍之LifeCycle

    Google 2017 I/O开发者大会于近日召开,在开发者大会上谷歌除了发布了Android O等一些新产品之外,也对Android代码的架构做出了一个官方的回应. Google 2017 I/O开 ...

  8. 【转】Android四大基本组件介绍与生命周期

    转自:http://www.cnblogs.com/bravestarrhu/archive/2012/05/02/2479461.html Android四大基本组件分别是Activity,Serv ...

  9. Android官方架构组件介绍之LifeCycle(一)

    Android官方架构组件介绍之LifeCycle 下面是官方提供的Android App开发的架构图: 从上图可以看到一些关键字:ViewModel,LiveData,Room等.其实看了上面视频的 ...

随机推荐

  1. mknod用法以及主次设备号【转】

    转自:http://www.cnblogs.com/hnrainll/archive/2011/06/10/2077583.html mknod 用途 创建特殊文件. mknod Name { b | ...

  2. 基本的dom操作方法

    childNodes 返回当前元素所有子元素的数组firstChild 返回当前元素的第一个下级子元素lastChild 返回当前元素的最后一个子元素nextSibling 返回紧跟在当前元素后面的元 ...

  3. Java运行内存结构分析

  4. ExtJS如何取得GridPanel当前选择行数据对象 - nuccch的专栏 - 博客频道 - CSDN.NET

    body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...

  5. 【GO】关于GO的浅显总结

    最近看了下go的入门教程,被它的强大震撼了,第一印象感觉特点主要有如下几个吧: 1. 集c,python,erlang之长,和c同属静态语言,保证效率:语法如python一样简洁,库很强大:从erla ...

  6. winutils spark windows installation

    http://stackoverflow.com/questions/37305001/winutils-spark-windows-installation

  7. Python+Selenuim测试网站,只能打开Firefox浏览器却不能打开网页的解决方法

    最开始我使用的Selenium版本为2.48,Firefox版本为37,自动化打开网站的时候,可以正常打开. 后来由于Firefox的自检测更新,版本更新为47,导致版本不兼容,自动化打开网站浏览器时 ...

  8. eclipse java生成exe

    eclipse导出jar文件再将它转换成exe可执行文件详解 关键字: 欢迎光临 此文章是为了帮助刚接触j2se或不懂如何打包jar文件的人而着笔,同时也是让自己的知识以文章的形式保存起来. 一.导出 ...

  9. Pop框架简述

    Facebook发布了Paper之后,进一步开源了其背后的动画引擎Pop,此框架并不满足于苹果自身的动画单调性,致力于给用户一种逼真的动画效果,可以减少用户对于苹果原生Core Animation 复 ...

  10. FUNCTION CALL STACK FRAME

    function call stack frame 两个寄存器 esp 栈顶指针寄存器,指向调用栈的栈顶(始终指向,意味着栈分配到哪里了,从当前栈往高地址是已经分配了的) ebp 基址指针寄存器,指向 ...