什么是从appdrawer运行。。。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么是从appdrawer运行。。。相关的知识,希望对你有一定的参考价值。

哦,你是要用手机模拟运行win xp吧,哈哈。appdrawer的意思就是让你从手机的菜单里运行模拟xp的那个软件。 参考技术A 应该是app drawer吧!!
google和有道翻译是“应用抽屉”,应该是程序列表吧!!
参考技术B 进去后退出啊

如何检测网页是从网站还是本地文件系统运行

【中文标题】如何检测网页是从网站还是本地文件系统运行【英文标题】:How to detect if a web page is running from a website or local file system 【发布时间】:2010-10-13 04:59:42 【问题描述】:

我是 javascript 的新手。如何检测我的 javascript 是从网站 (http://) 还是本地文件运行。

【问题讨论】:

【参考方案1】:
switch(window.location.protocol) 
   case 'http:':
   case 'https:':
     //remote file over http or https
     break;
   case 'file:':
     //local file
     break;
   default: 
     //some other protocol

【讨论】:

这不是真的。站点可以在本地托管,并且在本地托管在 Web 服务器上时仍然使用“http”协议。 我明白你在说什么,下面的答案解决了这个问题,但我认为原始发帖人是根据他的问题的措辞具体询问 http: vs. file: 协议。 【参考方案2】:

用于同时测试不同“种类”的本地:

// Returns the page location type
// 0 (falsey) = Local file, direct from disk (file://path/to/file.html)
// 1 (truthy) = Virtually remote file, from local server (http://localhost)
// 2 (truthy) = Remote file from remote server (http://example.com)

function locationType()
    if( window.location.protocol == 'file:' ) return 0; 
    if( !window.location.host.replace( /localhost|127\.0\.0\.1/i, '' ) ) return 2; 
    return 1;

基本原理:您可能希望测试该页面是 a) 在远程服务器上,还是 b) 在本地服务器上(同一台计算机,用于测试,例如使用 AMP),或 c) 本地文件,直接检索通过“file://”协议从磁盘获取。

请注意,这并不能处理所有可能的边缘情况。例如,您可以在技术上将不同的 IP 重定向到“localhost”,而其他非“file://”方案(如“foo://”)实际上可能代表本地访​​问。但它适用于大多数情况,并且可以根据需要进行调整

仅对“http”和“https”进行测试有点受限,因为世界各地正在使用数十种其他 LAN 和 WAN 网络方案。当然,它们是否是本地的,甚至是否可以使用 HTML/JS 代码可能会有所不同 (IANA URI Schemes)。

【讨论】:

不是我这样做的确切方式,但赞成检查本地主机。 @Matthias 是的,诚然有点尴尬,但为了我自己的使用,我想要一个函数,如果我想确保它是一个“真实的”本地文件,我可以测试它的真/假,但如果我想知道它是否在 localhost/remote 上,也可以测试整数值。如果太复杂,您可以将其拆分为三个不同的函数,并将正则表达式拆分为 ( window.location.host == 'localhost' || window.location.host == '127.0.0.1' || window.location.host == '' )【参考方案3】:

与同样处理可能端口的@Beejor 相比,我使用了稍微修改的版本。它允许为 e 设置基础 uriHost。 G。如果作为本地文件运行而不是通过 SSH 隧道或直接通过 IP:Port 运行,则可能需要主机部分的 ajax/jquery 请求。检测部分处于if-else条件。

var uriHost = "";
if (window.location.protocol === "file:") 
  console.log("Running as local file!");
  // like: file://<path>/index.html
  uriHost = "http://<my-host-or-ip>:<my-port>";
 else if (
  !window.location.host.replace(/(localhost|127\.0\.0\.1)(:\d+)?/i, "")
) 
  console.log("Running on local server (ssh tunnel etc.)");
  // like: "http://127.0.0.1:<my-port>"
 else 
  console.log("Running normally, via web server");
  // like: "http://<my-host-or-ip>:<my-port>"

// now do something with uriHost, e.g. for ajax uris etc.

检查是否作为本地文件运行(即file://)只检查window.location.protocol === "file:"就足够了。

【讨论】:

【参考方案4】:

其他方法:

if (/^h/.test(document.location)) 
  // remote file over http or https
 else 
  // local file

if (document.location.host) 
  // remote file over http or https
 else 
  // local file

或(slow,不推荐)

if ((''+document.location).indexOf('http') === 0) 
// if (document.location.protocol.indexOf('http') === 0)  // another way
  // remote file over http or https
 else 
  // local file

【讨论】:

以上是关于什么是从appdrawer运行。。。的主要内容,如果未能解决你的问题,请参考以下文章

autojs 8.0 drawer出错

这个新的 Android studio 3.5 Navigation Drawer 示例代码如何运行

这个句子中的 drawer和draw会不会感觉重复,换成啥词比较好

Android - Navigation Drawer

为啥 shadowColor: '...' - 不适用于“react-native-drawer”组件的 Android 上的抽屉样式?

Navigation Drawer - syncState() 做啥以及为啥应该在 onPostCreate() 中调用它?