android:installLocation简析

关于AndroidStudio出现 XX is not allowed here 这一问题的解决办法 关于AndroidStudio出现 XX is not allowed here 这一问题的解决办法 近期重拾以前写过的一个东西的代码,想要复制到新的电脑上跑跑看,结果就发现了这个问题,具体表现为:某些代码按理讲应该合规但是被标红了,还只是显示“XX XXXXX is not allowed here”。build按键并不管事,而且就算重新编译也没有效果。 但最大的问题在于,在网上没有找到相关资料... 阅读详情

在Froyo(android 2.2,API Level:8)中引入了android:installLocation.通过设置该属性可以使得开发者以及用户决定程序的安装位置.

android:installLocation隶属于AndroidManifest.XML中的manifest节点.如下所示:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
         
package="string"
         
android:sharedUserId="string"
         
android:sharedUserLabel="string resource"
         
android:versionCode="integer"
         
android:versionName="string"
         
android:installLocation=["auto" | "internalOnly" | "preferExternal"] >
    . . .
</manifest>
android:installLocation可以设置为"auto"、"internalOnly"、"preferExternal"三个值中的任何一个.
  auto:程序可能被安装在外部存储介质上(例如:SD Card),但是默认会被安装到手机内存中.当手机内存为空时,程序将被安装到外部存储介质上.当程序安装到手机上后,用户      可以决定把程序放在外部储介质还是内存中.
  internalOnly:默认值.当设置为该值时,程序只能被安装在内存中,如果内存为空,则程序将不能成功安装.
  preferExternal:将程序安装在外部存储介质上,但是系统不保证程序一定会被安装到外部存储介质上.当外部存储介质不可以或空时,程序将被安装到内存中.程序使用了for      ward-locking机制时也将被安装到内存中,因为外部存储不支持此机制.程序安装后,用户可以自由切换程序应该在外部还是内部存储介质上.
注意:当程序使用了Google Play的Copy Protection特性时,只能安装到内存中.
当程序被安装到外部存储介质时,
① .apk文件将被移动到外部存储介质上,但是程序的数据仍然会在内存中
② 保存.apk文件的容器将会使用一个随机生成的密钥进行加密,这样只有安装该程序的设置可以使用存在外部存储介质上的数据.
警告:当外部存储介质被卸载时,安装在该外部存储介质上的程序将立刻被终止掉!
向后兼容性:
  声明了android:installLocation,但android:minSdkVersion小于8时,我们使用不低于Froyo的AVD进行编译,这样在低于Froyo的系统中android:installLocation将被忽略,而不低于Fro  yo的系统中将使用我们指定的android:installLocation.
当我们的程序具有如下行为时我们不应该将程序安装到外部存储介质上
  ①Service
    正在运行的服务将被终止,当外部存储介质被重新加载时服务不会被重启.
  ②Alarm Service
    闹钟服务将被取消,开发者必须在外部存储介质重新加载后重新注册闹钟服务.
  ③Input Method Engines
    输入法将被换成系统输入法,当外部存储介质被重新加载后用户可以通过系统设置来启动我们的输入法
  ④Live Wallpapers
    我们的动态壁纸将被替换为默认的动态壁纸.外部存储介质重载后,用户可以更换回来.
  ⑤Live Folders
    我们的动态文件夹将被移出.
  ⑥App Widgets
    我们的小部件将被移出,通常只有系统重启后我们的小部件才可用.
  ⑦Account Managers
    使用AccountManager创建的账户将会消失,直至存储介质被重新加载.
  ⑧Sync Adapters
    只有外部存储介质被重新加载时,我们的同步功能才可用
  ⑨Device Administrators
    我们的DeviceAdminReceiver将会失效
  ⑩监听开机结束事件
    系统会在加载外部存储介质之前发送ACTION_BOOT_COMPLETED广播.因此安装在外部存储介质的程序将不能接受开机广播.
通常,只要我们没有使用上述的特性,我们就可以将我们的程序安装到外部存储介质上.例如,大的游戏程序.当我们的APK文件有几M大时我们应该认真的考虑是否要将程序移动到外部存储介质上以帮助用户节省内存.
android开机自启 1、监控RECEIVE_BOOT_COMPLETED,即开机自启动事件AndroidManifest.xml 设置开机启动权限以及相应的receiver 2、监控sd卡的mount事件,开机的时候一般都会扫描sd卡,监控sd卡事件也有类似开机启动效果,特别app安装在sd卡的情况下有些os是抓取不到RECEIVE_BOOT_COMPLETED所以设置android:installLocation=“internalOnly”,限制app的安装位置,使其能抓取到RECEIVE_BOOT_COMPLETED 阅读详情

相关推荐

ENVI哨兵一号数据处理

使用ENVI+SarScape处理哨兵数据

Rjjjjj11的博客 2万+

android:installLocation

在Froyo(android 2.2,API Level:8)中引入了android:installLocation.通过设置该属性可以使得开发者以及用户决定程序的安装位置. android:installLocation隶属于AndroidManifest.XML中的manifest节点.如下所示:           package="string"        

滴水穿石,点石为金 953

Ubuntu20.04下Docker无缝升级实战指南

本文提供了一份在Ubuntu20.04系统上安全、无缝升级Docker的实战指南。文章详细阐述了升级前的版本检查、数据备份等准备工作,逐步演示了通过APT包管理器进行升级或指定版本安装的操作步骤,并强调了升级后的验证与常见问题回滚方案,确保业务容器平稳过渡。

postgres8guard的博客 478

android:installLocation = "auto" 的用法

  在Froyo(android 2.2,API Level:8)中引入了android:installLocation.通过设置该属性可以使得开发者以及用户决定程序的安装位置. android:installLocation隶属于AndroidManifest.XML中的manifest节点.如下所示: &lt;manifest xmlns:android="http://schemas.an...

weixin_34000916的博客 328

电容DAC版图布局中的对称艺术:从二维共质心到误差最小化

本文深入探讨了电容DAC版图布局中的对称艺术,重点介绍了二维共质心技术如何有效最小化误差。通过分析系统误差和随机误差的来源,详细解析了共质心布局的核心技术及优化策略,包括梯度误差补偿和寄生参数平衡方法。实战案例展示了该技术在12位SAR ADC设计中的应用效果,为高精度集成电路设计提供了重要参考。

weixin_29300241的博客 579

OpenCV计算机视觉实战(11)——边缘检测详解

在本节中,我们系统介绍了三大经典边缘检测算子,包括 Sobel 算子:一阶导数平衡了噪声抑制与边缘提取,结合方向信息可用于纹理分析与车道检测;Laplacian 算子:二阶导数对微小亮度突变尤为敏感,配合零交叉和细化技术,可精确捕捉任意方向的细节边缘;Canny 算法:集成多阶段处理与双阈值策略,通过多尺度融合与自适应阈值优化,达到抗噪与细节兼顾的卓越效果。

qq_30167691的博客 4375

android:installLocation使用简析

在Froyo(android 2.2,API Level:8)中引入了android:installLocation.通过设置该属性可以使得开发者以及用户决定程序的安装位置. android:installLocation隶属于AndroidManifest.XML中的manifest节点.如下所示: <manifest xmlns:android="http://schemas.an...

不言三尺剑 3000

使用GBIF获取生物多样性数据与GIS的结合

随着全球生物多样性的重要性日益凸显,越来越多的研究人员和保护机构开始利用地理信息系统(GIS)来分析和可视化生物多样性数据。GBIF(全球生物多样性信息设施)作为一个全球性的生物多样性数据库,提供了大量的物种分布和分类信息,为研究人员和保护工作者提供了宝贵的数据资源。本文将介绍如何使用GBIF API获取生物多样性数据,并将其与GIS技术相结合,以便更好地理解和研究生物多样性。利用GIS的强大功能,我们可以在地理空间上可视化物种分布、分析物种多样性的空间格局,并为保护生物多样性提供科学依据。

BnxBackend的博客 1762

简析android:installLocation

/***************************************************  * TODO: description .  * @author: gao_chun  * @since:  2015-3-30  * @version: 1.0.0  * @remark: 转载请注明出处  ***********************

gao_chun 6435

万字详解YOLOv8网络结构Backbone/neck/head以及Conv、Bottleneck、C2f、SPPF、Detect等模块

YOLOv8是由Ultralytics开发的最先进的目标检测模型,推升了速度、准确性和用户友好性的界限。YOLO这一缩写代表“你只看一次”(You Only Look Once),通过在一次网络传递中同时预测所有边界框,提升了算法的效率和实时处理能力。相比之下,其他一些目标检测技术需要经过多个阶段或过程来完成检测。YOLOv8在流行的YOLOv5架构上进行了扩展,在多个方面提供了改进。

专注于图像领域,主要研究内容包括计算机视觉和深度学习,特别是在图像分类、目标检测和图像生成等方面有深入的研究和实践经验。 14万+

C#上位机之海康相机开发(SDK)实战教程

SDK的接口设计遵循“句柄-操作-释放”模式,掌握→→→的流程,就能完成基础开发;工业场景需重点关注稳定性:断连重连、内存管理、抗干扰(网口相机的IP设置、触发信号的可靠性);进阶功能(如图像处理、多相机同步)需结合视觉库(EmguCV)和硬件特性(GPIO触发),但前提是保证基础采集的稳定。建议新手先跑通SDK自带的C#示例,理解每个函数的作用,再逐步替换为自己的代码。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 2192
上一篇: TortoiseSVN使用简介
下一篇: Activity的四种launchMode,Activity跳转时非常有用
Jumping_Android
博客等级 码龄15年 36粉丝 56原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值