java - 如何确定我的应用程序是否在 Android 上运行

标签 java android

我有一个应用程序可以在多个运行 Fedora 或 Android 的移动设备上运行。为了整合我的代码库和分发,我想确定我在哪个操作系统上。我尝试了 System.getProperty("os.name"),但它只返回“Linux”。系统属性中是否有 Android 独有的东西? 谢谢

最佳答案

您可以检查几个属性。候选人是:

  • java.vendor.url --> http://www.android.com
  • java.vm.name --> Dalvik(我不知道,Fedora 用的是哪一个...)
  • java.vm.vendor --> Android 项目
  • java.vendor --> Android 项目

也许您想自己检查一下?

Properties p = System.getProperties();
Enumeration keys = p.keys();
while(keys.hasMoreElements()) {
   String key = (String) keys.nextElement();
   String value = (String) p.get(key);
   System.out.println(key + " >>>> " + value);
}

关于java - 如何确定我的应用程序是否在 Android 上运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4519556/

相关文章:

android - 我可以使用 ViewModel 向服务器发送数据吗?

android - Build Gradle应用程序 “< ”语法错误启动失败

android - 如何动态更改 fragment 的类

java - 在 Android 中使用 JSoup 解析 html 不起作用

java - 应用程序在服务启动时崩溃

java - IDE报告不必要的装箱检查

Java:对象数组不像非数组对象那样工作

放大时Android MapView覆盖消失

android - EditText 中的 drawableLeft 和 drawableStart 有什么区别?

java - Karate 框架 - 如何检查比赛中的条件 OR 包含响应