Android中的UID和PID意义,及查看方式

Pid是进程ID,Uid是用户ID,只是Android和计算机不一样,计算机每个用户都具有一个Uid,哪个用户start的程序,这个程序的Uid就是那个用户,而Android中每个程序都有一个Uid,默认情况下,Android会给每个程序分配一个普通级别互不相同的 Uid,如果用互相调用,只能是Uid相同才行,这就使得共享数据具有了一定安全性,每个软件之间是不能随意获得数据的。而同一个application 只有一个Uid,所以application下的Activity之间不存在访问权限的问题。

  1. Android系统中修改了Linux的UID的含义:用来唯一确定某个用户的身份。由于Android是单用户系统,不需要支持多用户登陆。Android的UID的含义:每个APP对应一个UID——用UID对应用程序进行管理。

    Android中查看UID的方式:

    data/system/packages.list

    代码:

    ActivityManager am = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
    		ApplicationInfo appinfo = getApplicationInfo();
    		List<RunningAppProcessInfo> run = am.getRunningAppProcesses();
    		for (RunningAppProcessInfo runningProcess : run) {
    			if ((runningProcess.processName != null) && runningProcess.processName.equals(appinfo.processName)) {
    				uid = String.valueOf(runningProcess.uid);
    				break;
    			}
    		}
  2. PID即进程ID。

    查看: ps|grep XXX

  3. 每一个不同的程序都能有一个UId,但是一个应用里面可以有多个PId
时间: 2024-08-03 22:04:47

Android中的UID和PID意义,及查看方式的相关文章

Android中多线程编程(三)Handler更新UI的方式

Handler更新UI的方式和原因以及遇到的问题 1.方式: 只能通过Handler来更新UI. 代码如下: package com.chengdong.su.handlerdemo; import android.app.Activity; import android.os.Bundle; import android.os.Handler; import android.os.HandlerThread; import android.os.Message; import android.

Android中installd进程存在的意义

1. 为什么需要installd 从下面的输出可以看出,system_server以system用户的身份运行.我们知道,PackageManager运行于system_server中.也就是说,PackageManager的身份也是system用户. [email protected]:/$ busybox ps busyboxps PID   USER    TIME   COMMAND -- 701 system    0:23 system_server 146 install   0:

Android中Button四种点击事件实现方式

1.Xml添加监听属性,这里添加的doClick. 1 <Button 2 android:id="@+id/bt1" 3 android:layout_width="wrap_content" 4 android:layout_height="wrap_content" 5 android:onClick="doClick" 6 android:text="XML添加doClick" 7 andro

android中activity之间传递数据的3种方式

在android开发中总是需要不停的传递数据,特别是不同的Activity之间.在这里小编介绍自己所知的3种Activity的跳转方式. 第一种:静态传递数据 直接上部分代码:在第一个Activity中 Intent intent = new Intent(); intent.setClass(MainActivity.this,SecondActivity.class); SecondActivity.usrname = "jack"; SecondActivity.password

Android中设置控件的背景颜色的方式整理

版权声明:本文为博主原创文章,未经博主允许不得转载. 前言 在Android开发中,经常需要设置控件的背景颜色或者图片的src颜色. 效果图 代码分析 根据使用的方法不同,划分为 setBackgroundColor方法[一般用于RelativeLayout.TextView等控件] 使用colors.xml文件中的颜色 使用颜色的int类型值 使用颜色的16进制类型值 setImageDrawable方法[一般用于ImageView控件] 使用colors.xml文件中的颜色 使用颜色的int

关于Android中,保留小数点后两位的方式

今天在上班中,发现服务器传过来的数据,*100后,小数点后面有很多数据,于是查了下资料.有以下解决了. DecimalFormat df = new DecimalFormat("######0.00"); df.format(mLoanRate * 100) 解决了问题.

Android中Activity的启动流程和组织管理方式(Backstack、Task)

前言: Android对Activity的组织管理会引入一些名词概念术语,像Stack.Task等,本文会做简单介绍.Activity的启动.切换以及组织管理会受不同的配置和属性的影响,本文会简单介绍一些相对重要和典型的概念,比如BackStack.Affinity. 文章目录: ? 概述? Launcher启动Activity? 应用内启动子Activity? 锁屏状态下启动Activity? Stack.Task.BackStack.Affinity 此文章原始是PPT格式已转换为PDF,请

Android中实现短信发送的一种方式

SendSmsActivity.java: package com.test.smsmangerdemo.sendsmsactivity; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.content.Intent; import android.app.PendingIntent; import android.telephony.SmsManager; imp

Android 中实现分享和第三方登陆---以新浪微博为例

尊重原创:http://blog.csdn.net/yuanzeyao/article/details/38781957 第三方登陆和分享功能在目前大部分APP中都有,分享功能可以将自己觉得有意义的东西分享给身边的朋友,而第三方登陆可以借助已经有巨大用户基础的平台(如QQ和新浪微博)的账号,让用户在使用自己APP的时候不用注册,直接使用第三方账号登陆,从而避免了注册的过程(其实是服务器端帮你注册),这对于吸引更多的用户非常有意义.下面我们就以新浪微博为例,讲解如何实现分享功能和第三方登陆.首先你