当前位置:首页 » 文件传输 » 访问应用程序私有目录
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

访问应用程序私有目录

发布时间: 2022-08-20 16:33:35

❶ Android访问不了私有文件夹

在介绍如何在Android平台下进行文件的读取之前,有必要了解Android平台下的数据存储规则。在其他的操作系统如Windows
平台下,应用程序可以自由地或者在特定的访问权限基础上访问或修改其他应用程序名下的文件等资源,而在Android平台下,一个应用程序中所有的数据都是私有的。

当应用程序被安装到系统中后,其所在的包会有一个文件夹用于存放自己的数据,只有这个应用程序才有对这个文件夹的写入权限,这个私有的文件夹位于Android系统的/data/data/<应用程序包名>目录下,其他的应用程序都无法再这个文件夹中写入数据。除了存放私有的数据文件夹外,应用程序也具有SD卡的写入权限。

使用文件I/O 方法可以直接往手机中存储数据,默认情况下这些文件不可以被其他的应用程序访问。Android平台支持
java平台下的 文件I/O操作, 主要使用FileInputStream 和 FileOutputStream
这两个类来实现文件的存储与读取。获取这两个类对象的方式有两种

。详细

❷ 请教应用程序能否访问/private /var/ mobile/Media下的文件

iPhone的程序受“沙盒”机制限制,无法访问程序文件夹以外的资源(但可通过UIImagePickerController访问照片库)。Simulator中,程序文件夹位于:用户/Application Support/iPhone Simulator/User/Applications下。可读写文件,但不能超过这个文件...

❸ 写至文件时出错 请确认您有权访问该目录

原因:卸载不完整导致。

解决方法:

1、进入我的电脑→C盘→删除SSD2文件夹。

2、进入我的电脑→C盘-Program Files→删除SRSSoft文件夹。

3、重新加载或下载客户端。


出错原因:

一、应用程序

应用程序由于自身BUG引用了不正常的内存光标

在使用动态分配的应用程序中,有时会有这样的情况出现:程序试图读写一块“应该可用”的内存,但不知为什么,这个预料中可用的光标已经失效了。有可能是“忘记了”向操作系统要求分配,也可能是程序自己在某个时候已经注销了这块内存而“没有留意”等等。

注销了的内存被系统回收,其访问权已经不属于该应用程序,因此读写操作也同样会触发系统的保护机制,企图“违法”的程序唯一的下场就是被操作终止执行,回收全部资源。计算机世界的法律还是要比人类有效和严厉得多啊!

二、木马病毒

木马或病毒这类程序为了控制系统往往不负责任地修改系统,从而导致操作系统异常。平常应加强信息安全意识,对来源不明的可执行程序绝不好奇。

三、操作系统

有时候操作系统本身也会有BUG,要注意安装官方发行的升级程序。更新操作系统,让操作系统的安装程序重新拷贝正确版本的系统档案、修正系统参数。

四、硬件本身

硬件本身质量问题及不兼容的情况,同时还要注意散热问题,超频等特殊情况。

以上内容参考网络-应用程序出错

❹ 是否可以设定某个应用程序对文件夹的访问权限

应该没有。
系统安全是针对用户来的,比如有些电脑设置了多个用户,登录时会让选择一个用户,登录后用户的权限就完全明确了
部分软件、系统自带的策略也可以限制某个文件被访问,但这是全局的,最多针对用户,不会针对程序

你的需求,我觉得虚拟机可能比较接近

❺ 如何在windows里限制每个应用程序所能访问的目录、文件

沙盘方式运行程序,或是虚拟环境运行程序,这是我能想到的,长久以为就是一直想限制程序往系统目录里面安装东西,但很多软件都把系统目录越塞越大

❻ android 微信7.0怎么获取存储权限

AndroidN除了提供诸多新特性和功能外,还对系统和API行为做出了各种变更。本文重点介绍您应该了解并在开发应用时加以考虑的一些重要变更。如果您之前发布过Android应用,请注意您的应用可能受到这些平台变更的影响。电池和内存AndroidN包括旨在延长设备电池寿命和减少RAM使用的系统行为变更。这些变更可能会影响您的应用访问系统资源,以及您的系统通过特定隐式Intent与其他应用互动的方式。低电耗模式Android6.0(API级别23)引入了低电耗模式,当用户设备未插接电源、处于静止状态且屏幕关闭时,该模式会推迟CPU和网络活动,从而延长电池寿命。而AndroidN则通过在设备未插接电源且屏幕关闭状态下、但不一定要处于静止状态(例如用户外出时把手持式设备装在口袋里)时应用部分CPU和网络限制,进一步增强了低电耗模式。图1.低电耗模式如何应用第一级系统活动限制以延长电池寿命的图示。当设备处于充电状态且屏幕已关闭一定时间后,设备会进入低电耗模式并应用第一部分限制:关闭应用网络访问、推迟作业和同步。如果进入低电耗模式后设备处于静止状态达到一定时间,系统则会对PowerManager.WakeLock、AlarmManager闹铃、GPS和Wi-Fi扫描应用余下的低电耗模式限制。无论是应用部分还是全部低电耗模式限制,系统都会唤醒设备以提供简短的维护时间窗口,在此窗口期间,应用程序可以访问网络并执行任何被推迟的作业/同步。图2.低电耗模式如何在设备处于静止状态达到一定时间后应用第二级系统活动限制的图示。请注意,激活屏幕或插接设备电源时,系统将退出低电耗模式并取消这些处理限制。此项新增的行为不会影响有关使您的应用适应Android6.0(API级别23)中所推出的旧版本低电耗模式的建议和最佳实践,如低电耗模式和应用待机模式优化中所讨论。您仍应遵循这些建议(例如使用GoogleCloudMessaging(GCM)发送和接收消息)并开始安排更新计划以适应新增的低电耗模式行为。ProjectSvelte:后台优化AndroidN删除了三项隐式广播,以帮助优化内存使用和电量消耗。此项变更很有必要,因为隐式广播会在后台频繁启动已注册侦听这些广播的应用。删除这些广播可以显着提升设备性能和用户体验。移动设备会经历频繁的连接变更,例如在Wi-Fi和移动数据之间切换时。目前,可以通过在应用清单中注册一个接收器来侦听隐式CONNECTIVITY_ACTION广播,让应用能够监控这些变更。由于很多应用会注册接收此广播,因此单次网络切换即会导致所有应用被唤醒并同时处理此广播。同理,应用可以注册接收来自其他应用(例如相机)的隐式ACTION_NEW_PICTURE和ACTION_NEW_VIDEO广播。当用户使用相机应用拍摄照片时,这些应用即会被唤醒以处理广播。为缓解这些问题,AndroidN应用了以下优化措施:面向AndroidN开发的应用不会收到CONNECTIVITY_ACTION广播,即使它们已有清单条目来请求接受这些事件的通知。在前台运行的应用如果使用BroadcastReceiver请求接收通知,则仍可以在主线程中侦听CONNECTIVITY_CHANGE。应用无法发送或接收ACTION_NEW_PICTURE或ACTION_NEW_VIDEO广播。此项优化会影响所有应用,而不仅仅是面向AndroidN的应用。如果您的应用使用任何Intent,您仍需要尽快移除它们的依赖关系,以正确适配AndroidN设备。Android框架提供多个解决方案来缓解对这些隐式广播的需求。例如,JobSchelerAPI提供了一个稳健可靠的机制来安排满足指定条件(例如连入无限流量网络)时所执行的网络操作。您甚至可以使用JobScheler来适应内容提供程序变化。如需了解有关AndroidN中后台优化以及如何改写应用的详细信息,请参阅后台优化。权限更改AndroidN做了一些权限更改,这些更改可能会影响您的应用。系统权限更改为了提高私有文件的安全性,面向AndroidN或更高版本的应用私有目录被限制访问(0700)。此设置可防止私有文件的元数据泄漏,如它们的大小或存在。此权限更改有多重副作用:私有文件的文件权限不应再由所有者放宽,为使用MODE_WORLD_READABLE和/或MODE_WORLD_WRITEABLE而进行的此类尝试将触发SecurityException。注:迄今为止,这种限制尚不能完全执行。应用仍可能使用原生API或FileAPI来修改它们的私有目录权限。但是,我们强烈反对放宽私有目录的权限。传递软件包网域外的file://URI可能给接收器留下无法访问的路径。因此,尝试传递file://URI会触发FileUriExposedException。分享私有文件内容的推荐方法是使用FileProvider。DownloadManager不再按文件名分享私人存储的文件。旧版应用在访问COLUMN_LOCAL_FILENAME时可能出现无法访问的路径。面向AndroidN或更高版本的应用在尝试访问COLUMN_LOCAL_FILENAME时会触发SecurityException。通过使用DownloadManager.Request.()或DownloadManager.Request.()将下载位置设置为公共位置的旧版应用仍可以访问COLUMN_LOCAL_FILENAME中的路径,但是我们强烈反对使用这种方法。访问由DownloadManager公开的文件的首选方式是使用ContentResolver.openFileDescriptor()。应用间共享文件对于面向AndroidN的应用,Android框架执行的StrictModeAPI政策禁止向您的应用外公开file://URI。如果一项包含文件URI的Intent离开您的应用,应用失败,并出现FileUriExposedException异常。若要在应用间共享文件,您应发送一项content://URI,并授予URI临时访问权限。进行此授权的最简单方式是使用FileProvider类。如需有关权限和共享文件的信息,请参阅共享文件。无障碍改进为提高平台对于视力不佳或视力受损用户的可用性,AndroidN做出了一些更改。这些更改一般并不要求更改您的应用代码,不过您应仔细检查并使用您的应用测试这些功能,以评估它们对用户体验的潜在影响。屏幕缩放AndroidN支持用户设置显示尺寸,以放大或缩小屏幕上的所有元素,从而提升设备对视力不佳用户的可访问性。用户无法将屏幕缩放至低于最小屏幕宽度sw320dp,该宽度是Nexus4的宽度,也是常规中等大小手机的宽度。图3.右侧屏幕显示的是一台运行AndroidN系统映像的设备增大显示尺寸后的效果。当设备密度发生更改时,系统会以如下方式通知正在运行的应用:如果是面向API级别23或更低版本系统的应用,系统会自动终止其所有后台进程。这意味着如果用户切换离开此类应用,转而打开“Settings”屏幕并更改Displaysize设置,则系统会像处理内存不足的情况一样终止该应用。如果应用具有任何前台进程,则系统会如处理运行时变更中所述将配置变更通知给这些进程,就像对待设备屏幕方向变更一样。如果是面向AndroidN的应用,则其所有进程(前台和后台)都会收到有关配置变更的通知,如处理运行时变更中所述。大多数应用并不需要进行任何更改即可支持此功能,不过前提是这些应用遵循Android最佳实践。具体要检查的事项:在屏幕宽度为sw320dp的设备上测试您的应用,并确保其充分运行。当设备配置发生变更时,更新任何与密度相关的缓存信息,例如缓存位图或从网络加载的资源。当应用从暂停状态恢复运行时,检查配置变更。注:如果您要缓存与配置相关的数据,则最好也包括相关元数据,例如该数据对应的屏幕尺寸或像素密度。保存这些元数据便于您在配置变更后决定是否需要刷新缓存数据。避免用像素单位指定尺寸,因为像素不会随屏幕密度缩放。应改为使用与密度无关像素(dp)单位指定尺寸。设置向导中的视觉设置AndroidN在“Welcome”屏幕中加入了“VisionSettings”,用户可以在新设备上设置以下无障碍功能设置:Magnificationgesture、Fontsize、Displaysize和TalkBack。此项变更增强了与不同屏幕设置相关的错误的可见性。要评估此功能的影响,您应在启用这些设置的状态下测试应用。您可以在Settings>Accessibility中找到这些设置。NDK应用链接至平台库AndroidN做了一些命名空间更改,以阻止加载非公开API。如果您使用NDK,则只能使用Android平台提供的公开API。在下一个官方发布的Android版本上使用非公开API会导致应用崩溃。为提醒您使用了非公开API,在AndroidN设备上运行的应用会在有应用调用非公开API时在日志消息输出中生成一个错误。此错误还会作为消息显示在设备屏幕上,以帮助增强您对此情况的认识。您应检查应用代码以删除使用非公开平台API,并使用预览版设备或模拟器全面测试应用。如果您的应用依赖平台库,则请参见NDK文档,了解使用公开API等效项替换普通私有API的典型修复。您还可以链接至平台库,而无需实现此应用,如果应用使用的库是平台的一部分(例如libpng),但不属于NDK,则更可如此。此情况下,请确保您的APK包含您打算链接到的所有.so文件。注意:有些第三方库可能会链接至非公开API。如果您的应用使用这些库,那么当您的应用在下一个官方发布的Android版本上运行时可能会出现崩溃现象。应用不应依赖或使用不属于NDK的原生库,因为这些库可能会发生更改或从一个Android版本迁移至另一版本。例如,从OpenSSL切换至BoringSSL即属于此类更改。此外,不同的设备可能提供不同级别的兼容性,因为不属于NDK中的平台库没有兼容性要求。如果您必须在较旧设备上访问非NDK库,则请依据AndroidAPI级别进行加载。为帮助您诊断此类问题,下面列举了一些在您试图使用AndroidN开发应用时可能遇到的Java和NDK错误:Java错误示例:java.lang.UnsatisfiedLinkError:dlopenfailed:library"/system/lib/libcutils.so""classloader-namespace"NDK错误示例:dlopenfailed:cannotlocatesymbol"__system_property_get"referencedby以下是遇到这类错误的应用的一些典型修复:可以使用标准JNI函数来替代使用libandroid_runtime.so中的getJavaVM和getJNIEnv:AndroidRuntime::getJavaVM->GetJavaVMfromAndroidRuntime::getJNIEnv->JavaVM::GetEnvorJavaVM::AttachCurrentThreadfrom.可以使用公开alternative__system_property_get来替代使用libcutils.so中的property_get符号。如需这样做,请使用__system_property_get及以下include函数:#include应使用应用本地版本来替代使用libcrypto.so中的SSL_ctrl符号。例如,您应在.so文件中静态链接libcyrpto.a,或者在应用中包含您自己的来自BoringSSL或OpenSSL的动态libcrypto.so。AndroidforWorkAndroidN包含一些针对面向AndroidforWork的应用的变更,包括对证书安装、密码重置、二级用户管理、设备标识符访问权限的变更。如果您是要针对AndroidforWork环境开发应用,则应仔细检查这些变更并相应地修改您的应用。您必须先安装授权证书安装程序,然后DPC才能对其进行设置。对于面向NSDK的个人资料和设备所有者应用,您应在设备策略控制器(DPC)调用DevicePolicyManager.setCertInstallerPackage()之前安装授权证书安装程序。如果尚未安装此安装程序,则系统会引发IllegalArgumentException。针对设备管理员的重置密码限制现在也适用于个人资料所有者。设备管理员无法再使用DevicePolicyManager.resetPassword()来清除或更改已经设置的密码。设备管理员仍可以设置密码,但只能在设备没有密码、PIN或图案时这样做。即使设置了限制,设备所有者和个人资料所有者仍可以管理帐户。而且,即使具有DISALLOW_MODIFY_ACCOUNTS用户限制,设备所有者和个人资料所有者仍可调用AccountManagementAPI。设备所有者可以更轻松地管理二级用户。当设备在设备所有者模式下运行时,系统将自动设置DISALLOW_ADD_USER限制。这样可以防止用户创建非托管二级用户。此外,CreateUser()和createAndInitializeUser()方法已弃用,取而代之的是DevicePolicyManager.createAndManageUser()方法。设备所有者可以访问设备标识符。设备所有者可以使用DevicePolicyManagewr.getWifiMacAddress()访问设备的Wi-FiMAC地址。如果设备上从未启用Wi-Fi,则此方法将返回一个null值。工作模式设置控制工作应用访问。当工作模式关闭时,系统启动器通过使工作应用显示为灰色来指示它们不可用。启用工作模式会再次恢复正常行为。如需了解有关AndroidN中针对AndroidforWork所做变更的详细信息,请参阅AndroidforWork更新。注解保留AndroidN在注解可见性被忽略时修复错误。这种问题将启用本不应被允许的运行时访问注解。这些注解包括:VISIBILITY_BUILD:仅应编译时可见。VISIBILITY_SYSTEM:运行时应可见,但仅限基本系统。如果您的应用依赖这种行为,请在注解中添加一项运行时必须可用的保留政策。您可通过使用@Retention(RetentionPolicy.RUNTIME)来如此做。其他重要说明如果一个应用在AndroidN上运行,但却是针对更低API级别开发的,那么在用户更改显示尺寸时,系统将终止此应用进程。应用必须能够正常处理此情景。否则,当用户从最近使用记录中恢复运行应用时,应用将会出现崩溃现象。您应测试应用以确保不会发生此行为。要进行此测试,您可以通过DDMS手动终止应用,以造成相同的崩溃现象。在密度发生更改时,系统不会自动终止面向N及更高版本的应用;不过,这些应用仍可能对配置变更做出不良响应。AndroidN上的应用应能够正常处理配置变更,并且在后续启动时不会出现崩溃现象。您可以通过更改字体大小(Setting>Display>Fontsize)并随后从最近使用记录中恢复运行应用,来验证应用行为。由于之前的Android版本中的一项错误,系统未能将对主线程上的一个TCP套接字的写入操作举报为严格模式违反。AndroidN修复了此错误。呈现出这种行为的应用引发android.os.NetworkOnMainThreadException。一般情况下,我们不建议在主线程上执行网络操作,因为这些操作通常都有可能导致ANR和卡顿的高尾延迟。Debug.startMethodTracing()方法族现在默认在您的共享的存储空间上的软件包特定目录中存储输出,而非SD卡顶级。这意味着应用不再需要请求WRITE_EXTERNAL_STORAGE使用这些API的权限。许多平台API现在开始检查在Binder事务间发送的大负载,系统现在会将TransactionTooLargeExceptions再次作为RuntimeExceptions引发,而不再只是默默记录或抑制它们。一个常见例子是在Activity.onSaveInstanceState()上存储过多数据,导致ActivityThread.StopInfo在您的应用面向AndroidN时引发RuntimeException。如果应用向View发布Runnable任务,并且View未附加到窗口,系统会用View为Runnable任务排队;在View附加到窗口之前,Runnable任务不会执行。此行为会修复以下错误:如果一项应用是从并非预期窗口UI线程的其他线程发布到View,则Runnable可能会因此运行错误的线程。如果Runnable任务是从并非环路线程的其他线程发布,则应用可能会曝光Runnable任务。如果AndroidN上一项有DELETE_PACKAGES权限的应用尝试删除一个软件包,但另一项应用已经安装了这个软件包,则系统可能要求用户确认。在这种情况下,应用在调用PackageInstaller.uninstall()时的返回状态应为STATUS_PENDING_USER_ACTION。

❼ android中一个应用程序可以访问另一个程序的私有目录吗

据我所知似乎是没有办法修改的。
应用程序的安装只能在flash内,而资源之类可以放到sd卡上。
有个第三方管理器,可以让你指定安装目录,甚至安装到sd卡上,但是仅限于不大的应用。因为最终都是load到ram中执行的。

❽ android怎么获取应用的目录

一、方法介绍:
每个Android应用程序都可以通过Context来获取与应用程序相关的目录,这些目录的功能各异,每一个目录都有自己的特点,有时候可能会搞混淆,本文结合android源码注释和实际操作,详细介绍一下每个方法:
方法:getFilesDir
释义:返回通过Context.openFileOutput()创建和存储的文件系统的绝对路径,应用程序文件,这些文件会在程序被卸载的时候全部删掉。

方法:getCacheDir
释义:返回应用程序指定的缓存目录,这些文件在设备内存不足时会优先被删除掉,所以存放在这里的文件是没有任何保障的,可能会随时丢掉。

方法:getDir
释义:这是一个可以存放你自己应用程序自定义的文件,你可以通过该方法返回的File实例来创建或者访问这个目录,注意该目录下的文件只有你自己的程序可以访问。

方法:getExternalCacheDir
释义:使用这个方法需要写外部存储的权限“<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />”,调用该方法会返回应用程序的外部文件系统(Environment.getExternalStorageDirectory())目录的绝对路径,它是用来存放应用的缓存文件,它和getCacheDir目录一样,目录下的文件都会在程序被卸载的时候被清除掉。

方法:getExternalFilesDir
释义:使用这个方法需要写外部存储的权限“<uses-permission android:name="android.permission.WRITE_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
释义:保存通过Context.openOrCreateDatabase 创建的数据库文件

方法:getPackageCodePath
释义:返回android 安装包的完整路径,这个包是一个zip的压缩文件,它包括应用程序的代码和assets文件。

方法:getPackageResourcePath
释义:返回android 安装包的完整路径,这个包是一个ZIP的要锁文件,它包括应用程序的私有资源。

方法:getObbDir
释义:返回应用程序的OBB文件目录(如果有的话),注意如果该应用程序没有任何OBB文件,这个目录是不存在的。

二、测试程序:
测试代码如下:
private StringBuilder getFilePath( ){
StringBuilder filePathBuilder = new StringBuilder( );

// 返回通过Context.openFileOutput()创建和存储的文件系统的绝对路径,应用程序文件,这些文件会在程序被卸载的时候全部删掉。
filePathBuilder.append( "getFilesDir == " ).append( getFilesDir( ) ).append( "\n" );
// 返回应用程序指定的缓存目录,这些文件在设备内存不足时会优先被删除掉,所以存放在这里的文件是没有任何保障的,可能会随时丢掉。
filePathBuilder.append( "getCacheDir == " ).append( getCacheDir( ) ).append( "\n" );
// 这是一个可以存放你自己应用程序自定义的文件,你可以通过该方法返回的File实例来创建或者访问这个目录,注意该目录下的文件只有你自己的程序可以访问。
filePathBuilder.append( "getDir == " ).append( getDir("test.txt", Context.MODE_WORLD_WRITEABLE) ).append( "\n" );

/* 需要写文件权限 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> */
// 调用该方法会返回应用程序的外部文件系统(Environment.getExternalStorageDirectory())目录的绝对路径,它是用来存放应用的缓存文件,它和getCacheDir目录一样,目录下的文件都会在程序被卸载的时候被清除掉。
filePathBuilder.append( "getExternalCacheDir == " ).append( getExternalCacheDir( ) ).append( "\n" );
// 这个目录是与应用程序相关的外部文件系统,它和getExternalCacheDir不一样的是只要应用程序存在它就会一直存在,这些文件只属于你的应用,不能被其它人访问。同样,这个目录下的文件在程序被卸载时也会被一同删除。
filePathBuilder.append( "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 视频
*
* */
filePathBuilder.append( "getExternalFilesDir == " ).append( getExternalFilesDir( Environment.DIRECTORY_PICTURES ) ).append( "\n" );

// 保存通过Context.openOrCreateDatabase 创建的数据库文件
filePathBuilder.append( "getDatabasePath == " ).append( getDatabasePath( DATA_BASE_NAME ) ).append( "\n" );
// 返回android 安装包的完整路径,这个包是一个zip的压缩文件,它包括应用程序的代码和assets文件
filePathBuilder.append( "getPackageCodePath == " ).append( getPackageCodePath( ) ).append( "\n" );
// 返回android 安装包的完整路径,这个包是一个ZIP的要锁文件,它包括应用程序的私有资源。
filePathBuilder.append( "getPackageResourcePath == " ).append( getPackageResourcePath( ) ).append( "\n" );
// 返回应用程序的OBB文件目录(如果有的话),注意如果该应用程序没有任何OBB文件,这个目录是不存在的。
filePathBuilder.append( "getObbDir == " ).append( getObbDir( ) ).append( "\n" );

return filePathBuilder;
}

❾ X.500的X.500的

X.500 主要具备以下特征
1(Decentralized Maintenance):运行 X.500 的每个站点只负责其本地目录部分,所以可以立即进行更新和维护操作。
2.:X.500 提供强大的搜索功能,支持用户建立的任意复杂查询。
3.单一全局命名空间(Single Global Namespace):类似于 DNS,X.500 为用户提供单一相同命名空间(single homogeneous namespace)。与 DNS 相比,X.500 的命名空间更灵活且易于扩展。
4.结构化信息结构(Structured Information Framework):X.500 目录中定义了信息结构,允许本地扩展。
5.基于标准的目录服务(Standards-Based Directory Service):由于 X.500 可以被用于建立一个基于标准的目录,那么在某种意义上,请求应用目录信息(电子邮件、资源自动分配器、特定目录工具)的应用程序就能访问重要且有价值的信息。
由于 X.500 的实施太过于复杂而受到批评。为解决这个问题,密歇根州(Michigan)大学推出了一种较为简单的基于 TCP/IP 的 DAP 新版本,即轻量级目录访问协议 (LDAP:Lightweight Directory Access Protocol),主要用于因特网。 LDAP 与 DAP 具有很多类似的基本功能,另外它还能用来查询私有目录和开放 X.500 目录 上的数据。在过去的几年里,大多数主要的电子邮件和目录服务软件供应商都对 LDAP 表现出了极大的兴趣,LDAP 已迅速发展成为因特网上事实的目录协议标准。

❿ android中使用java.io.File,java.io.FileOutputStream,F

有几点的问题哦:你看看:
1.方法都只支持操作当前Android应用程序文件夹下的文件,即应用的私有目录。这个私有目录位于Android系统的“/data/data/<应用程序报名>/”目录中。
2.传入的文件名不能带有任何的路径信息,只需要传入文件名即可(包括扩展名)。
3.当创建文件时,如果指定的文件不存在,则Android会创建文件,而对于存在的文件,默认使用覆盖私有模式(Context.MODE_PRIVATE)对文件进行写操作;如果想让增量方式写入已存在文件,需要指定输出模式为Context.MODE_APPEND。
4.如果打算让其他应用访问输出的文件,可以设置输出模式为只读Context.MODE_WORLD_READABLE或可读写Context.MODE_WORLD_WRITEABLE。