IIS做android应用下载服务器注意事项

Windows 10 IIS WebDAV搭建与内网穿透实现私有云盘 文件共享与远程访问是IT基础设施中的基础需求,其核心原理是通过网络协议实现跨设备的数据同步与管理。在众多技术方案中,基于HTTP/HTTPS协议的WebDAV因其良好的兼容性和安全性,成为构建私有文件服务的优选。结合内网穿透技术,可以突破无公网IP的网络限制,实现随时随地安全访问。这种组合方案在数据隐私、传输控制和存储扩展性方面具有显著价值,尤其适用于个人开发者、小型团队搭建私有云盘、项目文件同步等场景。本文以Windows 10平台为例,详细解析如何利用系统自带的IIS服务配置WebDAV,并借助开源工具 阅读详情

          在做android程序自动更新时,发现了个问题。把apk包放到web服务器上【iis6.0】,却无法下载。在浏览器中直接输入apk文件地址,显示无法找到该页。奇怪了,url没错哦!

搜索了下,竟然找到:http://support.microsoft.com/kb/326965/ ,该帖子描述症状如下:


当您从 IIS 6.0 Web 服务器中请求文件时,而该文件的扩展名不是 Web 服务器上已定义的 MIME 类型,您将看到以下错误消息:

HTTP 错误 404 - 找不到文件或目录。
检查了 mime设置,果真没有.apk对应的mime类型:application/vnd.android.package-archive  , 该怎么添加呢,请按照如下步骤:

1、打开 IIS Microsoft 管理控制台 (MMC),右键单击本地计算机名称,然后单击“属性”。
2、单击“MIME 类型”。
3、单击“新建”。
4、在“扩展名”框中,键入apk文件的扩展名.apk
5、在“MIME 类型”框中,键入 application/vnd.android.package-archive 

以上几步操作完毕,然后不停地点“确定” ,“应用”之类的按钮即可。

       通过以上操作之后,apk文件就可以下载了。

       对于Nginx服务器,需要在 文件conf/mime.types中添加:application/vnd.android.package-archive     apk;

       MIME相关介绍,可以参考:http://www.w3.org/Protocols/rfc1341/0_Abstract.html






iOS/安卓手机党必看:用Remotely Save插件+Cpolar,把Obsidian笔记无缝同步回家里电脑的保姆级教程 本文提供了一套利用Remotely Save插件和Cpolar内网穿透技术,实现Obsidian笔记在iOS/安卓手机与Windows电脑间无缝同步的完整解决方案。通过WebDAV协议搭建本地同步服务,结合Cpolar的稳定穿透能力,确保数据自主可控且跨平台实时同步,特别适合注重隐私和效率的知识管理用户。 阅读详情

相关推荐

Android连接IIS部署的WCF服务

WCF基于IIS宿主,Android4.2版本

分发APK文件时候,把APK传到网站上下载出现不能下载的问题

设置IIS的MIME类型,让IISweb下载支持包括APK等文件在内的多文件类型 1.打开IIS网站,右键属性,找到HTTP头,找到MIME类型     点击新建,加上扩展名,我这边是APK,然后下面类型写     application/vnd.android.package-archive     这样用android手机访问改APK文件就可以直接下载并安装了! 2.下面

北京土豆(qqxinxi) 的专栏 6126

ADS使用Smith圆图进行阻抗匹配

在处理RF系统的实际应用问题时,总会遇到一些非常困难的工作,对各部分级联电路的不同阻抗进行匹配就是其中之一。一般情况下,需要进行匹配的电路包括天线与低噪声放大器(LNA)之间的匹配、功率放大器输出(RFOUT)与天线之间的匹配、LNA/VCO输出与混频器输入之间的匹配。匹配的目的是为了保证信号或能量有效地从“信号源”传送到“负载”。 阻抗匹配(impedance matching) 信号源内阻与所接传输线的特性阻抗大小相等且相位相同,或传输线的特性阻抗与所接负载阻抗的大小相等且相位相同,分别称为传输线的输

红茶绿茶和奶茶的博客 3万+

Android基于IIS的APK下载(四)数据下载

在《Android基于IIS的APK下载(三)用JSON传输更新数据》一文中已经从服务器中拿到了更新数据,并且呈现到了UI中,结合前面的文章及效果图(参见下图),可以看到UI中的更新列表一行一行的呈现,而每一行的末尾有一个行为按钮,对应着不同的行为,这个行为要如何实现呢? 我们再看一下UpdateItemsAdapter中getView的部分代码 updateItem.SetBehavior(

学而时习之 2034

CanMV K230实战:用MicroPython玩转AI视觉识别(附完整代码)

本文详细介绍了如何使用MicroPython在CanMV K230开发板上实现AI视觉识别,包括环境搭建、摄像头配置、模型部署及优化技巧。通过实战案例(如智能门禁和工业分拣机器人),展示如何快速开发低门槛的嵌入式AI应用,特别适合初学者和嵌入式开发者。

x8y9z0的博客 1142

AT91SAM9260搭建LINUX操作系统

一、 编写目的 2 二、 系统搭建 2 1. 下载相关软件包 2 2. Bootstrap编译 3 3. U-BOOT编译 5 4. LINUX编译 7 5. 通过U-BOOT的TFTP命令从TFTP服务器下载系统镜像 9 6. 文件系统制作 10 7. 挂载NFS作为根文件系统 10 三、 总结 14 一、编写目的 本文档用于记录AT91SAM9260 LINUX学

lshiceman的专栏 7412

Android基于IIS的APK下载(五)IIS的配置

这里使用的IIS是win7_64的。 步骤一:打开IIS。控制面板->管理工具(如果没有,请把查看方式调成大图标)->Internet 信息服务(IIS)管理器。 步骤二:配置网站目录 步骤三:添加JSON和APK的支持。 1、打开MIME 2、添加MIME类型(JSON和APK) 3、重启IIS,访问测试

学而时习之 2313

深度强化学习 | 基于DQN实现Flappy Bird游戏与分析

在Flappy Bird中,玩家需要通过控制小鸟安全穿过随机长度的水管来得分。本文基于深度Q网络DQN来实现Flappy Bird游戏的自主探索与学习

FRIGIDWINTER的博客 5911

Android基于IIS的APK下载(一)自定义更新控件

Android越来越普及,那已经安装的应用要如何更新呢?在应用市场中常会有显示某某应用已经更新之类的信息,那我们是否也可以实现类似的功能呢?如果要实现又要做哪些准备呢?做过WEB开发的,一般都会知道对于WEB服务器有很多,比如Windows自带的IIS、跨平台的Apache等,这里以IIS作为服务器实现APK的更新下载,下面是效果图。 我们可以看到,在获取更新列表后,可以根据情况进行相应

学而时习之 2010

【目标检测】全局上下文感知的详解

目标检测中的全局上下文感知(Global Context Awareness)​是指模型在定位和识别目标时,能够有效利用图像中全局或大范围的上下文信息(如场景语义、目标间关系、空间布局等),而不仅仅依赖局部特征。这种能力显著提升了检测的鲁棒性,尤其是在复杂场景(如遮挡、小目标、密集目标)中表现突出。

浩瀚之水的专栏 644

Open3D 点云DBSCAN聚类算法

DBSCAN(Density-Based Spatial Clustering of Applications with Noise)是一种基于密度的聚类算法,能够识别任意形状的聚类,并处理噪声数据。

纵马踏花向自由 1833

让WIN2003和2008服务器iis支持安卓应用.apk文件下载的配置方法

让WIN2003和2008服务器iis支持安卓应用.apk文件下载的配置方法

swebin的专栏 5391

AI产品经理面试宝典第9天:关于AI产品经理的挑战与转型怎么回答

AI技术重构产品逻辑,AI产品经理需直面三大核心命题:用户定位差异、技术融合边界、商业价值转化。本文从千道真题中提炼出面试高频考点,剖析AI产品经理如何突破传统思维定式,在B端需求与C端体验间构建价值桥梁,用数据驱动产品创新,破解技术落地的隐性壁垒。掌握这三重跃迁法则,助你在AI浪潮中脱颖而出。

打造全国最全的AI Agent开发知识领域的博客 175

ftp软件工具android,安卓ftp传输工具,安卓ftp传输工具,软件详情

安卓ftp传输工具,ftp传输工具有安卓版吗?安卓ftp传输工具除了可以应用于在Windows 操作系统下面可视化地远程Linux操作系统,还可以在安卓操作系统下面可视化地远程连接windows的操作系统,两者都需要在需要被远程的 系统上面安装Vncserver,那vnc控制手机版怎么下载呢?下面是具体的步骤:安卓平台安装VNCServer使用工具:IIS7服务器管理工具IIS7服务器管理工具里面...

weixin_42549154的博客 1409

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

安装Apache服务器出现<OS 10013> 以一种访问不允许的方式做了一个访问套接字的尝试

这几天学习安卓的网络编程中的XML数据解析,所以需要安装一个apache服务器来做服务器端。然后与我的安卓客户端进行一个互动。于是就去官网下载安装文件。到最后都没找到windows下的.msi安装文件,于是只好在网上找资源了。非常感谢网上一些无私的大神,在这里也把资源分享给大家。      安装过程在网上都有教程,需要注意的就是路径不要选择在系统安装盘,否则重装系统的话,所有的配置就会丢失。其余

海贼的船 1090

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

小辣椒安卓机器人无命令_安卓vncviewer中文版使用教程,安卓vncviewer中文版使用教程的6个操作步骤...

最近需要通过安卓手机连接远程linux上的vnc桌面,使用的是vnc viewer,我们安装后打开并添加新连接,然后填写地址以及端口,最后进行连接并填写密码就可以正常的连接远程vnc桌面了。IIS7服务器管理工具是一款强大的远程控制程序,能通过手机连接多个平台端口,让你随时控制其他电脑桌面,并能快速操作或传输文件,应用范围极为广阔,并且能够让你的工作效率大大提高,稳定性强安全性高。IIS7服务器管...

weixin_39635373的博客 857

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

让你的ipad乞丐128g秒变1T至尊皇帝版,彻底丢掉网盘——之如何搭建手机,ipad端和电脑之间的局域网ftp服务器访问

打开控制面板找到程序,点击启用或关闭windows功能 2. 选择internet information services将ftp的服务进行勾选,并确定,此时系统会自动加载一些文件 3. 应用更改好以后,搜索iis 4. 点击进入,并点击添加ftp站点 5. 进行相应的设置 6. 设置结束后,会显示建立好的ftp站点 此时我们打开浏览器,输入ftp://ip:port就能访问你的...

weixin_44797490的博客 3840

Android 与 IIS服务器身份验证

1)基础验证: 1 /** 2 * 从服务器取图片 3 * 4 * @param url 5 * @return 6 */ 7 public void getHttpBitmap(final String url) { 8 new Thread(new Runnable() { 9 ...

weixin_30292843的博客 105

青少年编程与数学 02-020 C#程序设计基础 18课题、项目部署

本文详细解析了C#项目在Web应用、桌面应用、移动应用和云原生应用中的部署方法。Web应用部署包括ASP.NET Core在Azure App Service、IIS、Linux服务器和Docker容器中的配置;Blazor应用部署则根据渲染模式选择合适的方式。桌面应用部署涉及Windows和跨平台.NET MAUI应用的打包与分发,移动应用部署包括Android和iOS应用的商店发布及企业内部分发。文章还介绍了云原生应用在AKS等平台的部署,以及CI/CD工具的使用,并强调了部署时的关键注意事项。

明月看潮生的博客 889

asp.net 打开服务器文件,aspnet打开服务器文件夹

aspnet打开服务器文件夹 内容精选换一换对于一键式重置密码插件采用AUTO模式的裸金属服务器,一键式重置密码插件启动时,会随机选取端口进行使用,可能占用了业务端口。对于已创建的裸金属服务器,仍采用AUTO模式,业务随机占用31000~32999中的一个端口。一键式重置密码插件随机占用的端口的原则是:在该范围内,系统会按照自小到大的顺序,占用当前空闲的端口。推荐您将一键式重置密码在本地主机和Wi...

weixin_35917998的博客 598

[转]android通过webservice验证用户

本文转自:http://danielzzu.blog.163.com/blog/static/118515304201011103562841/ 在企业应用中,手机与企业数据的交互必不可少,在这里我们通过实例来描述android怎样调用.net webservice 第一步:vs2008建webservice ,贴出代码: clsoptuser.cs publiccla...

weixin_30821731的博客 80

从Android转鸿蒙开发:我的第一个HarmonyOS 5.0应用踩坑实录(附DevEco Studio 5.0配置)

本文记录了从Android开发转向HarmonyOS 5.0开发的全过程,重点分享了DevEco Studio 5.0环境配置、项目创建、ArkTS页面编写及调试发布中的关键差异与常见问题。特别针对Android开发者容易遇到的API level兼容性、构建工具转换和声明式UI思维转变等挑战提供了实用解决方案。

mixer_a的专栏 689

UNIapp实现局域网内在线升级

在“扩展名”中填写“.apk”,在“MIME类型”中填写“.apk”的MIME类型“application/vnd.android.package-archive”。第一、需要在 iis 的MiMe 中添加apk 的格式,否则无法下载apk 文件到手持机中。第二、发布新的apk 的时候,需要修改应用版本号(往大了修改),同时版本号.json 文件中。第三、将对应的文件夹发布在iis中,同时要修改uniapp 中的http.js文件。在打开的属性窗口中,选择“MIME类型”选项卡。注意事项中记录如下内容。

freeherotoday的博客 1271

Android调用WebService

 最近开始物联网方面的学习,第一次接触Android开发,学习中遇到了需要调用PC端WebService的问题,现在将自己学习到的知识记录下来,以便今后复习。  准备工作: 1下载第三方类库Ksoap2。 2.使用Eclipse新建Android项目并将下载过来的Ksoa2复制进Android项目lib文件夹下。 3.使用VS201...

weixin_30784945的博客 92

GodPotato与其他提权工具对比:优势与应用场景分析

GodPotato是一款基于DCOM技术的Windows权限提升工具,作为Potato系列提权工具的新一代解决方案,它能够在Windows 2012至Windows 2022系统中实现从服务账户到SYSTEM权限的快速提升。本文将深入对比GodPotato与传统提权工具的核心差异,帮助读者理解其技术优势和适用场景。 ### 一、Potato提权技术的演进历程 Potato系列提权工具已发展6年

gitblog_00551的博客 1126
上一篇: 冒泡排序 Linux下c 实现
下一篇: Win7下,nginx默认80端口被System占用,造成nginx启动报错
love__coder
博客等级 码龄18年 180粉丝 248原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值