在Adobe Air中获取当前登录的OS用户
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Adobe Air中获取当前登录的OS用户相关的知识,希望对你有一定的参考价值。
我需要在Air / Flex应用程序中当前登录用户的名称。该应用程序将仅部署在Windows计算机上。我想我可以通过重新表达User目录来实现这一点,但可以接受其他方式。
答案
您可以进行几次小清理...
package
{
import flash.filesystem.File;
public class UserUtil
{
public static function get currentOSUser():String
{
var userDir:String = File.userDirectory.nativePath;
var userName:String = userDir.substr(userDir.lastIndexOf(File.separator) + 1);
return userName;
}
}
}
按照Kevin的建议,使用File.separator
进行目录拆分跨平台(仅在Windows和Mac OS X上进行了测试。)>
除非您正在寻找孩子,否则无需使用resolvePath("")
。
此外,使函数成为适当的getter可以使绑定而无需任何进一步的工作。
在上面的示例中,我将其放入UserUtil
类,现在我可以绑定到UserUtil.currentOSUser
,例如:
<?xml version="1.0" encoding="utf-8"?>
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Label text="{UserUtil.currentOSUser}"/>
</mx:WindowedApplication>
另一答案
也可以尝试:
另一答案
这不是最漂亮的方法,但是如果您知道AIR应用程序只能在Windows环境中运行,那么效果很好:
另一答案
这里是可以在XP / Vista中使用的解决方案,但是肯定可以扩展到OSX,Linux,我仍然对另一种方法感兴趣。
另一答案
稍后更新:实际上有一个内置函数来获取当前用户。我认为它在nativeApplication中。
以上是关于在Adobe Air中获取当前登录的OS用户的主要内容,如果未能解决你的问题,请参考以下文章
Adobe AIR 全屏(OS X Mavericks)菜单栏
解决报错:在pycharm中使用os模块获取当前进程id,出现错误:AttributeError: module ‘os‘ has no attribute ‘getgid‘(图文并茂!!!)(代码片