zoukankan      html  css  js  c++  java
  • android 编程基础

    应用程序基础
    android 应用程序由java编程语言编写.
    android sdk工具会将android代码和数据以及资源文件编译成为一个android package,这是一个归档文件,名称以.apk结尾.在同一个apk文件中的代码被认为是一个应用程序.
    android应用程序被安装进一个设备后,每个android应用程序驻留在自己的安全沙盒中.
    android操作系统是一个多用户linux系统,每个应用程序相当于一个用户.
    默认情况下,系统为每个应用程序分配一个独立的linux user id.系统给这个应用程序的所有的文件授予许可,这样就只有这个应用程序对应的user id的用户(实际上是进程)才能访问.
    每个进程有自己的虚拟机(vm),这样保证了一个应用程序代码和其它的应用程序就孤立开了.
    默认情况下,每个应用程序运行后有自己独立的linux进程.
    android系统实现了最小权限原则,每个应用程序默认只有访问自己组件的权限(以保证它能正常工作).
    要让一个应用程序能够跟其它应用程序共享数据,有两种方法:
        1.让两个应用程序共享同样的linux user id;
        2.使用者给应用程序授权(安装时候)

    android常用类
    1.Activity
        Activity是一个应用程序部件.它提供了屏幕上可见的部分供用户交互使用.

        android应用程序可以激活另外一个应用程序的某个Activity.从这一点上来说,android应用程序不像通常的java或者c程序有一个main的入口函数.

        开发人员所开发的Activity都是android.app.Activity的子类.
    2.Intent
        在各个应用程序之间传输数据,类似一个提交了的表单.
    3.service
        不可见,承担大部分数据处理的工作.

        service运行在后台,执行一个长期操作或者和远程进程进行交互,它不提供一个用户界面.
        开发人员开发的service都是android.app.Service的子类.
    4.Content Provider
        为应用程序提供数据.

        在android中,数据存储位置有文件系统,sqlite数据库,web以及其他持久化存储位置.通过content provider,其它应用程序可以查询甚至是修改这些数据(要注意授权).
        content provider也可以操作应用程序的私有数据.
        content provider可以实现自android.content.ContentProvider.

    激活组件
        activities,services,broadcast receivers都是可以个intent激活的.
        Activity激活可以通过将一个intent对象传递给startActiviy()或者startActivityForResult().
        service激活可以通过将一个intent传递给startService(),也可以将一个intent传递给bindService()来绑定一个service.

    开发环境:
        1.sdk
        2.eclipse
        2.adt(eclipse下的android开发插件)

  • 相关阅读:
    js字符串拼接 ·${}·
    [转]CRLF Injection
    域渗透-GPP(组策略)利用
    AS-REPRoasting
    域用户名枚举
    我理解的HTTP请求走私(HTTP Request Smuggling)
    NFS未授权访问
    Hessian反序列化RCE漏洞
    CVE-2020-15778 Openssh命令注入漏洞复现
    在非域内机器上运行harphound
  • 原文地址:https://www.cnblogs.com/leipei2352/p/2124077.html
Copyright © 2011-2022 走看看