
一、方法介绍:
每个Android应用程序都可以通过Context来获取与应用程序相关的目录,这些目录的功能各异,每一个目录都有自己的特点,有时候可能会搞混淆,本文结合android源码注释和实际 *** 作,详细介绍一下每个方法:
方法:getFilesDir
释义:返回通过ContextopenFileOutput()创建和存储的文件系统的绝对路径,应用程序文件,这些文件会在程序被卸载的时候全部删掉。
方法:getCacheDir
释义:返回应用程序指定的缓存目录,这些文件在设备内存不足时会优先被删除掉,所以存放在这里的文件是没有任何保障的,可能会随时丢掉。
方法:getDir
释义:这是一个可以存放你自己应用程序自定义的文件,你可以通过该方法返回的File实例来创建或者访问这个目录,注意该目录下的文件只有你自己的程序可以访问。
方法:getExternalCacheDir
释义:使用这个方法需要写外部存储的权限“<uses-permission android:name="androidpermissionWRITE_EXTERNAL_STORAGE" />”,调用该方法会返回应用程序的外部文件系统(EnvironmentgetExternalStorageDirectory())目录的绝对路径,它是用来存放应用的缓存文件,它和getCacheDir目录一样,目录下的文件都会在程序被卸载的时候被清除掉。
方法:getExternalFilesDir
释义:使用这个方法需要写外部存储的权限“<uses-permission android:name="androidpermissionWRITE_EXTERNAL_STORAGE" />”,这个目录是与应用程序相关的外部文件系统,它和getExternalCacheDir不一样的是只要应用程序存在它就会一直存在,这些文件只属于你的应用,不能被其它人访问。同样,这个目录下的文件在程序被卸载时也会被一同删除。
方法:getExternalFilesDir
释义:和上面的方法一样,只是返回的是其目录下某一类型的文件,这些类型可以是: Environment#DIRECTORY_MUSIC 音乐 Environment#DIRECTORY_PODCASTS 音频 Environment#DIRECTORY_RINGTONES 铃声 Environment#DIRECTORY_ALARMS 闹铃 Environment#DIRECTORY_NOTIFICATIONS 通知铃声 Environment#DIRECTORY_PICTURES Environment#DIRECTORY_MOVIES 视频
方法:getDatabasePath
释义:保存通过ContextopenOrCreateDatabase 创建的数据库文件
方法:getPackageCodePath
释义:返回android 安装包的完整路径,这个包是一个zip的压缩文件,它包括应用程序的代码和assets文件。
方法:getPackageResourcePath
释义:返回android 安装包的完整路径,这个包是一个ZIP的要锁文件,它包括应用程序的私有资源。
方法:getObbDir
释义:返回应用程序的OBB文件目录(如果有的话),注意如果该应用程序没有任何OBB文件,这个目录是不存在的。
二、测试程序:
测试代码如下:
private StringBuilder getFilePath( ){
StringBuilder filePathBuilder = new StringBuilder( );
// 返回通过ContextopenFileOutput()创建和存储的文件系统的绝对路径,应用程序文件,这些文件会在程序被卸载的时候全部删掉。
filePathBuilderappend( "getFilesDir == " )append( getFilesDir( ) )append( "\n" );
// 返回应用程序指定的缓存目录,这些文件在设备内存不足时会优先被删除掉,所以存放在这里的文件是没有任何保障的,可能会随时丢掉。
filePathBuilderappend( "getCacheDir == " )append( getCacheDir( ) )append( "\n" );
// 这是一个可以存放你自己应用程序自定义的文件,你可以通过该方法返回的File实例来创建或者访问这个目录,注意该目录下的文件只有你自己的程序可以访问。
filePathBuilderappend( "getDir == " )append( getDir("testtxt", ContextMODE_WORLD_WRITEABLE) )append( "\n" );
/ 需要写文件权限 <uses-permission android:name="androidpermissionWRITE_EXTERNAL_STORAGE" /> /
// 调用该方法会返回应用程序的外部文件系统(EnvironmentgetExternalStorageDirectory())目录的绝对路径,它是用来存放应用的缓存文件,它和getCacheDir目录一样,目录下的文件都会在程序被卸载的时候被清除掉。
filePathBuilderappend( "getExternalCacheDir == " )append( getExternalCacheDir( ) )append( "\n" );
// 这个目录是与应用程序相关的外部文件系统,它和getExternalCacheDir不一样的是只要应用程序存在它就会一直存在,这些文件只属于你的应用,不能被其它人访问。同样,这个目录下的文件在程序被卸载时也会被一同删除。
filePathBuilderappend( "getExternalFilesDir == " )append( getExternalFilesDir( "/" ) )append( "\n" );
/
和上面的方法一样,只是返回的是其目录下某一类型的文件,这些类型可以是:
Environment#DIRECTORY_MUSIC 音乐
Environment#DIRECTORY_PODCASTS 音频
Environment#DIRECTORY_RINGTONES 铃声
Environment#DIRECTORY_ALARMS 闹铃
Environment#DIRECTORY_NOTIFICATIONS 通知铃声
Environment#DIRECTORY_PICTURES
Environment#DIRECTORY_MOVIES 视频
/
filePathBuilderappend( "getExternalFilesDir == " )append( getExternalFilesDir( EnvironmentDIRECTORY_PICTURES ) )append( "\n" );
// 保存通过ContextopenOrCreateDatabase 创建的数据库文件
filePathBuilderappend( "getDatabasePath == " )append( getDatabasePath( DATA_BASE_NAME ) )append( "\n" );
// 返回android 安装包的完整路径,这个包是一个zip的压缩文件,它包括应用程序的代码和assets文件
filePathBuilderappend( "getPackageCodePath == " )append( getPackageCodePath( ) )append( "\n" );
// 返回android 安装包的完整路径,这个包是一个ZIP的要锁文件,它包括应用程序的私有资源。
filePathBuilderappend( "getPackageResourcePath == " )append( getPackageResourcePath( ) )append( "\n" );
// 返回应用程序的OBB文件目录(如果有的话),注意如果该应用程序没有任何OBB文件,这个目录是不存在的。
filePathBuilderappend( "getObbDir == " )append( getObbDir( ) )append( "\n" );
return filePathBuilder;
}
Android dex拆分和缩小是一种优化Android应用程序的方法,它可以减少apk文件的大小,提高应用程序的性能,提高用户体验。
Android dex拆分可以分解apk文件,将其中的部分dex文件分解出来,放在服务器上,当应用程序需要时,再从服务器上下载。这样,不仅可以提高应用程序加载速度,而且可以减少apk文件的大小,从而节省用户设备的存储空间。
Android dex缩小可以减少apk文件的大小,更加有效地利用资源。Android dex缩小是通过将dex文件中的不必要的内容删除,减少dex文件的大小,从而减少apk文件的大小。
Android dex拆分和缩小是一种非常有用的优化Android应用程序的方法,既可以提高应用程序的性能,又能节省用户设备的存储空间,提高用户体验。
测试升级的时候,要实现这样一种需求:
用户手机该app的版本为899,用户在该手机上覆盖安装899的版本,要求sp中的数据要删除掉重新统计。
由于app覆盖安装时sp是不会主助删除的,该如何实现这样的需求呢?
思路:
找一个变量用来记录app安装前后的区别,
app安装前后有什么区别呢?
1,app首次启动flag ,不行
2,同意安装权限falg,不行,因为用户同意安装权限后,在用户覆盖安装app的过程中用户也可以终止掉当前的行为(不想安装了),这时候用该flag来判断就会有问题
3,然后就想到了安装时间!
android监听app安装与卸载
android如何获得已安装程序的大小和时间
Android 获取应用的安装时间及更新时间
android卸载或者程序更新,SharedPrefefences文件会删除吗
installTime : 1629789193000 firstInstallTime : 1629733990429 lastUpdateTime : 1629789195901
installTime : 1629789694000 firstInstallTime : 1629733990429 lastUpdateTime : 1629789697866
installTime : 1629789826000 firstInstallTime : 1629789828679 lastUpdateTime : 1629789828679
installTime : 1629790025000 firstInstallTime : 1629789828679 lastUpdateTime : 1629790027580
installTime : 1629790063000 firstInstallTime : 1629789828679 lastUpdateTime : 1629790067069
installTime : 1629790063000 firstInstallTime : 1629789828679 lastUpdateTime : 1629790067069
installTime : 1629790388000 firstInstallTime : 1629789828679 lastUpdateTime : 1629790390625
firstInstallTime :记录的是用户从无到有(无是指用户安装该
app前,手机上没有app)的情况,及: 该app从安装到手机
上到后续不断升级app的期间没有主动卸载过的情况,也就是
说覆盖安装时不会更新该值。
installTime 和 lastUpdateTime 的意思是 无论主动卸载后安装
还是不卸载直接覆盖安装,该值都会更新。
adb install -r 替换已存在的应用程序,也就是说强制安装
adb install -l 锁定该应用程序
adb install -t 允许测试包
adb install -s 把应用程序安装到sd卡上
adb install -d 允许进行将见状,也就是安装的比手机上带的版本低
adb install -g 为应用程序授予所有运行时的权限
adb 查看 android手机的CPU架构
adb shell cat /proc/cpuinfo
这是由于应用运行过程中会产生大量缓存数据,长期堆积占用内存空间,因此即使下载的软件文件等并不多,还是会提示内存不足。
清理方法如下:
1 进入手机设置选项,选择设置—应用程序—管理应用程序;
2 按一下Menu键,选择“按大小排序”选项(如果是Android 22手机先要选择已下载标签),然后就可以按照应用程序大小排列所有手机安装的应用程序;
3 随便点击列表中的应用程序,如果程序有缓存文件可以显示缓存大小,直接点击“清除缓存”选项就可以释放这些缓存文件占据的空间,如果没有缓存的话,清除缓存的按钮是无法点击的,这说明不用清理;
4 有一些系统的应用程序缓存文件可能多达数MB,比如Google Maps(谷歌地图),Market(电子市场),浏览器和相册程序,清理这几个程序的缓存文件就可以释放不少可用空间。
5 移动所有可以移动的应用程序数据到SD卡;
6 如果觉得每个程序单独设置太麻烦,可以借助Apps 2 SD和SDMove这样的程序简化 *** 作过程。对于那些动手能力比较强的用户可以通过网上的教程设置应用程序默认安装到SD卡,这样就可以一劳永逸。
android读写联系人,读和写权限:
<uses-permission android:name="androidpermissionREAD_CONTACTS" />
<uses-permission android:name="androidpermissionWRITE_CONTACTS" />
android权限系统非常庞大,在android系统中做任何 *** 作都需要首先获取android系统权限,以下是android权限大全:
访问网络
androidpermissionINTERNET,访问网络连接,可能产生GPRS流量
androidpermissionCHANGE_WIFI_STATE Wifi 改变状态
androidpermissionACCESS_WIFI_STATE WiFi 状态
androidpermissionACCESS_NETWORK_STATE 网络状态
录制视频
androidpermissionCAMERA
androidpermissionRECORD_AUDIO
androidpermissionWRITE_EXTERNAL_STORAGE
底层访问权限
androidpermissionCWJ_GROUP,允许CWJ账户组访问底层信息
手机优化大师扩展权限
androidpermissionCELL_PHONE_MASTER_EX,手机优化大师扩展权限
控制定位更新
androidpermissionCONTROL_LOCATION_UPDATES,允许获得移动网络定位信息改变
删除缓存文件
androidpermissionDELETE_CACHE_FILES,允许应用删除缓存文件
删除应用
androidpermissionDELETE_PACKAGES,允许程序删除应用
电源管理
androidpermissionDEVICE_POWER,允许访问底层电源管理
应用诊断
androidpermissionDIAGNOSTIC,允许程序到RW到诊断资源
禁用键盘锁
androidpermissionDISABLE_KEYGUARD,允许程序禁用键盘锁
转存系统信息
androidpermissionDUMP,允许程序获取系统dump信息从系统服务
状态栏控制
androidpermissionEXPAND_STATUS_BAR,允许程序扩展或收缩状态栏
工厂测试模式
androidpermissionFACTORY_TEST,允许程序运行工厂测试模式
使用闪光灯
androidpermissionFLASHLIGHT,允许访问闪光灯
强制后退
androidpermissionFORCE_BACK,允许程序强制使用back后退按键,无论Activity是否在顶层
访问账户Gmail列表
androidpermissionGET_ACCOUNTS,访问GMail账户列表
获取应用大小
androidpermissionGET_PACKAGE_SIZE,获取应用的文件大小
获取任务信息
androidpermissionGET_TASKS,允许程序获取当前或最近运行的应用
允许全局搜索
androidpermissionGLOBAL_SEARCH,允许程序使用全局搜索功能
硬件测试
androidpermissionHARDWARE_TEST,访问硬件辅助设备,用于硬件测试
注射事件
androidpermissionINJECT_EVENTS,允许访问本程序的底层事件,获取按键、轨迹球的事件流
安装定位提供
androidpermissionINSTALL_LOCATION_PROVIDER,安装定位提供
安装应用程序
androidpermissionINSTALL_PACKAGES,允许程序安装应用
内部系统窗口
androidpermissionINTERNAL_SYSTEM_WINDOW,允许程序打开内部窗口,不对第三方应用程序开放此权限
结束后台进程
androidpermissionKILL_BACKGROUND_PROCESSES,允许程序调用killBackgroundProcesses(String)方法结束后台进程
管理账户
androidpermissionMANAGE_ACCOUNTS,允许程序管理AccountManager中的账户列表
管理程序引用
androidpermissionMANAGE_APP_TOKENS,管理创建、摧毁、Z轴顺序,仅用于系统
高级权限
androidpermissionMTWEAK_USER,允许mTweak用户访问高级系统权限
社区权限
androidpermissionMTWEAK_FORUM,允许使用mTweak社区权限
软格式化
androidpermissionMASTER_CLEAR,允许程序执行软格式化,删除系统配置信息
修改声音设置
androidpermissionMODIFY_AUDIO_SETTINGS,修改声音设置信息
修改电话状态
androidpermissionMODIFY_PHONE_STATE,修改电话状态,如飞行模式,但不包含替换系统拨号器界面
格式化文件系统
androidpermissionMOUNT_FORMAT_FILESYSTEMS,格式化可移动文件系统,比如格式化清空SD卡
挂载文件系统
androidpermissionMOUNT_UNMOUNT_FILESYSTEMS,挂载、反挂载外部文件系统
允许NFC通讯
androidpermissionNFC,允许程序执行NFC近距离通讯 *** 作,用于移动支持
永久Activity
androidpermissionPERSISTENT_ACTIVITY,创建一个永久的Activity,该功能标记为将来将被移除
处理拨出电话
androidpermissionPROCESS_OUTGOING_CALLS,允许程序监视,修改或放弃播出电话
读取日程提醒
androidpermissionREAD_CALENDAR,允许程序读取用户的日程信息
读取联系人
androidpermissionREAD_CONTACTS,允许应用访问联系人通讯录信息
屏幕截图
androidpermissionREAD_FRAME_BUFFER,读取帧缓存用于屏幕截图
读取收藏夹和历史记录
comandroidbrowserpermissionREAD_HISTORY_BOOKMARKS,读取浏览器收藏夹和历史记录
读取输入状态
androidpermissionREAD_INPUT_STATE,读取当前键的输入状态,仅用于系统
读取系统日志
androidpermissionREAD_LOGS,读取系统底层日志
读取电话状态
androidpermissionREAD_PHONE_STATE,访问电话状态
读取短信内容
androidpermissionREAD_SMS,读取短信内容
读取同步设置
androidpermissionREAD_SYNC_SETTINGS,读取同步设置,读取Google在线同步设置
读取同步状态
androidpermissionREAD_SYNC_STATS,读取同步状态,获得Google在线同步状态
重启设备
androidpermissionREBOOT,允许程序重新启动设备
开机自动允许
androidpermissionRECEIVE_BOOT_COMPLETED,允许程序开机自动运行
接收彩信
androidpermissionRECEIVE_MMS,接收彩信
接收短信
androidpermissionRECEIVE_SMS,接收短信
接收Wap Push
androidpermissionRECEIVE_WAP_PUSH,接收WAP PUSH信息
录音
androidpermissionRECORD_AUDIO,录制声音通过手机或耳机的麦克
排序系统任务
androidpermissionREORDER_TASKS,重新排序系统Z轴运行中的任务
结束系统任务
androidpermissionRESTART_PACKAGES,结束任务通过restartPackage(String)方法,该方式将在外来放弃
发送短信
androidpermissionSEND_SMS,发送短信
设置Activity观察其
androidpermissionSET_ACTIVITY_WATCHER,设置Activity观察器一般用于monkey测试
设置闹铃提醒
comandroidalarmpermissionSET_ALARM,设置闹铃提醒
设置总是退出
androidpermissionSET_ALWAYS_FINISH,设置程序在后台是否总是退出
设置动画缩放
androidpermissionSET_ANIMATION_SCALE,设置全局动画缩放
设置调试程序
androidpermissionSET_DEBUG_APP,设置调试程序,一般用于开发
设置屏幕方向
androidpermissionSET_ORIENTATION,设置屏幕方向为横屏或标准方式显示,不用于普通应用
设置应用参数
androidpermissionSET_PREFERRED_APPLICATIONS,设置应用的参数,已不再工作具体查看addPackageToPreferred(String)介绍
设置进程限制
androidpermissionSET_PROCESS_LIMIT,允许程序设置最大的进程数量的限制
设置系统时间
androidpermissionSET_TIME,设置系统时间
设置系统时区
androidpermissionSET_TIME_ZONE,设置系统时区
设置桌面壁纸
androidpermissionSET_WALLPAPER,设置桌面壁纸
设置壁纸建议
androidpermissionSET_WALLPAPER_HINTS,设置壁纸建议
发送永久进程信号
androidpermissionSIGNAL_PERSISTENT_PROCESSES,发送一个永久的进程信号
状态栏控制
androidpermissionSTATUS_BAR,允许程序打开、关闭、禁用状态栏
访问订阅内容
androidpermissionSUBSCRIBED_FEEDS_READ,访问订阅信息的数据库
写入订阅内容
androidpermissionSUBSCRIBED_FEEDS_WRITE,写入或修改订阅内容的数据库
显示系统窗口
androidpermissionSYSTEM_ALERT_WINDOW,显示系统窗口
更新设备状态
androidpermissionUPDATE_DEVICE_STATS,更新设备状态
使用证书
androidpermissionUSE_CREDENTIALS,允许程序请求验证从AccountManager
使用SIP视频
androidpermissionUSE_SIP,允许程序使用SIP视频服务
使用振动
androidpermissionVIBRATE,允许振动
唤醒锁定
androidpermissionWAKE_LOCK,允许程序在手机屏幕关闭后后台进程仍然运行
写入GPRS接入点设置
androidpermissionWRITE_APN_SETTINGS,写入网络GPRS接入点设置
写入日程提醒
androidpermissionWRITE_CALENDAR,写入日程,但不可读取
写入联系人
androidpermissionWRITE_CONTACTS,写入联系人,但不可读取
写入外部存储
androidpermissionWRITE_EXTERNAL_STORAGE,允许程序写入外部存储,如SD卡上写文件
写入Google地图数据
androidpermissionWRITE_GSERVICES,允许程序写入Google Map服务数据
写入收藏夹和历史记录
comandroidbrowserpermissionWRITE_HISTORY_BOOKMARKS,写入浏览器历史记录或收藏夹,但不可读取
读写系统敏感设置
androidpermissionWRITE_SECURE_SETTINGS,允许程序读写系统安全敏感的设置项
读写系统设置
androidpermissionWRITE_SETTINGS,允许读写系统设置项
编写短信
androidpermissionWRITE_SMS,允许编写短信
写入在线同步设置
androidpermissionWRITE_SYNC_SETTINGS,写入Google在线同步设置
<uses-permission android:name="androidpermissionACCESS_WIFI_STATE"/>
访问登记属性
androidpermissionACCESS_CHECKIN_PROPERTIES ,读取或写入登记check-in数据库属性表的权限
获取错略位置
androidpermissionACCESS_COARSE_LOCATION,通过WiFi或移动基站的方式获取用户错略的经纬度信息,定位精度大概误差在30~1500米
获取精确位置
androidpermissionACCESS_FINE_LOCATION,通过GPS芯片接收卫星的定位信息,定位精度达10米以内
访问定位额外命令
androidpermissionACCESS_LOCATION_EXTRA_COMMANDS,允许程序访问额外的定位提供者指令
GPS定位获取模拟定位信息
androidpermissionACCESS_MOCK_LOCATION,获取模拟定位信息,一般用于帮助开发者调试应用
获取网络状态
androidpermissionACCESS_NETWORK_STATE,获取网络信息状态,如当前的网络连接是否有效
访问Surface Flinger
androidpermissionACCESS_SURFACE_FLINGER,Android平台上底层的图形显示支持,一般用于游戏或照相机预览界面和底层模式的屏幕截图
获取WiFi状态
androidpermissionACCESS_WIFI_STATE,获取当前WiFi接入的状态以及WLAN热点的信息
账户管理
androidpermissionACCOUNT_MANAGER,获取账户验证信息,主要为GMail账户信息,只有系统级进程才能访问的权限
验证账户
androidpermissionAUTHENTICATE_ACCOUNTS,允许一个程序通过账户验证方式访问账户管理ACCOUNT_MANAGER相关信息
电量统计
androidpermissionBATTERY_STATS,获取电池电量统计信息
绑定小插件
androidpermissionBIND_APPWIDGET,允许一个程序告诉appWidget服务需要访问小插件的数据库,只有非常少的应用才用到此权限
绑定设备管理
androidpermissionBIND_DEVICE_ADMIN,请求系统管理员接收者receiver,只有系统才能使用
绑定输入法
androidpermissionBIND_INPUT_METHOD ,请求InputMethodService服务,只有系统才能使用
绑定RemoteView
androidpermissionBIND_REMOTEVIEWS,必须通过RemoteViewsService服务来请求,只有系统才能用
绑定壁纸
androidpermissionBIND_WALLPAPER,必须通过WallpaperService服务来请求,只有系统才能用
使用蓝牙
androidpermissionBLUETOOTH,允许程序连接配对过的蓝牙设备
蓝牙管理
androidpermissionBLUETOOTH_ADMIN,允许程序进行发现和配对新的蓝牙设备
变成砖头
androidpermissionBRICK,能够禁用手机,非常危险,顾名思义就是让手机变成砖头
应用删除时广播
androidpermissionBROADCAST_PACKAGE_REMOVED,当一个应用在删除时触发一个广播
收到短信时广播
androidpermissionBROADCAST_SMS,当收到短信时触发一个广播
连续广播
androidpermissionBROADCAST_STICKY,允许一个程序收到广播后快速收到下一个广播
WAP PUSH广播
androidpermissionBROADCAST_WAP_PUSH,WAP PUSH服务收到后触发一个广播
拨打电话
androidpermissionCALL_PHONE,允许程序从非系统拨号器里输入电话号码
通话权限
androidpermissionCALL_PRIVILEGED,允许程序拨打电话,替换系统的拨号器界面
拍照权限
androidpermissionCAMERA,允许访问摄像头进行拍照
改变组件状态
androidpermissionCHANGE_COMPONENT_ENABLED_STATE,改变组件是否启用状态
改变配置
androidpermissionCHANGE_CONFIGURATION,允许当前应用改变配置,如定位
改变网络状态
androidpermissionCHANGE_NETWORK_STATE,改变网络状态如是否能联网
改变WiFi多播状态
androidpermissionCHANGE_WIFI_MULTICAST_STATE,改变WiFi多播状态
改变WiFi状态
androidpermissionCHANGE_WIFI_STATE,改变WiFi状态
清除应用缓存
androidpermissionCLEAR_APP_CACHE,清除应用缓存
清除用户数据
androidpermissionCLEAR_APP_USER_DATA,清除应用的用户数据
应用程序图标 (Icon)应当是一个 Alpha 通道透明的32位 PNG 。
由于安卓设备众多,一个应用程序图标需要设计几种不同大小,如:
LDPI (Low Density Screen,120 DPI),其图标大小为 36 x 36 px。
MDPI (Medium Density Screen, 160 DPI),其图标大小为 48 x 48 px。
HDPI (High Density Screen, 240 DPI),其图标大小为 72 x 72 px。
xhdpi (Extra-high density screen, 320 DPI),其图标大小为 96 x 96 px。
建议在设计过程中,在四周空出几个像素点使得设计的图标与其他图标在视觉上一致,例如:
96 x 96 px 图标可以画图区域大小可以设为 88 x 88 px, 四周留出4个像素用于填充(无底色)。
72 x 72 px 图标可以画图区域大小可以设为 68 x 68 px, 四周留出2个像素用于填充(无底色)。
48 x 48 px 图标可以画图区域大小可以设为 46 x 46 px, 四周留出1个像素用于填充(无底色)。
36 x 36 px 图标可以画图区域大小可以设为 34 x 34 px, 四周留出1个像素用于填充(无底色)。
扩展资料:
手机图标就像电脑图标一样,是一个程序的标记。如:照相机、设置、信箱、通讯录等。
通常为透明背景的如PNG格式。在手机中一半内置的图标都是经过美化的,后来安装的软件由于是个人制作,一定程度上不是那么完美,包括大小、 尺寸、比例等等,如果嫌不美观, 可以到安装目录比对标准的图标尺寸然后替换,用PHOTOSHOP或者其他绘图软件工具制作。
注意:一定要名称一样,格式一样或者修改安装表文件,指向你所更换的图标文件,起到一定的美化作用。同时手机图标要有一定的共同性,便于不同品牌的图标的图标功能相近性,便于使用。
手机图标制作:
一、主题风格:
做手机图标先要定好主题,风格,以及表现方式,如:简洁大方;古朴厚重;晶莹剔透;是写实的3D图标还是平面化的图标。这一环是和整个交互界面密不可分的。
二、选定软件:
根据风格定位,可以确定出是用哪种方法:用max建模>渲染>ps处理;用ps直接表现;用AI绘出>再经ps处理(推荐)易修改大小以及之后的调整。
三、注意要点:
由于AI是矢量软件,可以很好的表现出画面图标的细节,尤其是复杂形体的表现,性能远远高于PS去制作,还有一个原因就是在制作手机图标时图标的大小都是很明确的,对于一些级小的细节AI很有优势,如果ps的话不易画出,如果放大制作,再缩小的话,会模糊掉,显得边缘粗糙。
参考资料来源:百度百科 手机图标
android 40给每个应用程序分配内存是动态分配的。
应用程序,指为完成某项或多项特定工作的计算机程序,它运行在用户模式,可以和用户进行交互,具有可视的用户界面。
内存是计算机中重要的部件之一,它是与CPU进行沟通的桥梁。计算机中所有程序的运行都是在内存中进行的,因此内存的性能对计算机的影响非常大。内存(Memory)也被称为内存储器,其作用是用于暂时存放CPU中的运算数据,以及与硬盘等外部存储器交换的数据。
以上就是关于Android 怎么样获得应用信息全部的内容,包括:Android 怎么样获得应用信息、安卓dex拆分缩小、app覆盖安装或升级sharespr数据不变等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)