如果我想离线或在线使用MS Sql 2008,我需要使用GUI - > DB-Tasks-Take Online或Take Offline.
这可以用一些sql脚本完成吗?
我有一个HTML5应用程序,它使用清单文件进行脱机缓存.触发更新缓存的唯一方法是更改服务器上的清单文件.我正在寻找一种使缓存过期并实施更新的编程方式.
我查看了规范,在window.applicationCache上寻找一些方法使缓存失效.但没有找到任何.有一个update()方法,但只有在缓存过期时才会更新(即清单文件有变化).所以这没有用.
任何人都知道一种程序化的方式来使应用程序缓存过期并强制下载?
我正在使用GCM开发Android应用程序.目前我在客户端和服务器端使用标准的Google库.如果我在两台Android设备上进行测试,无论我的应用程序是否正在运行,两台设备都打开时GCM都能正常工作.
但是,如果设备A已关闭且我正在从设备B向其发送消息,则当设备A重新打开时,它不会接收在离线时发送的任何消息.
在服务器端(启动实际发送),每个到设备A的消息都没有collapse_key,time_to_live设置为2000000(以防用于测试目的).实际发送的重试参数设置为50(如果GCM本身无法访问,则不太可能).
我是否需要在设备启动时完成GCM注册程序?目前我这样做.
请注意,GCM广播接收器和GCMIntentService以及Google网站上描述的清单中的权限都已设置.
任何建议将不胜感激.我真的遇到了这个问题.
我的问题是如何在离线Phonegap应用程序中有效地显示大型自定义地图,允许它们平滑地平移和缩放,同时仍然支持旧的移动设备?
我正在开发一个移动应用程序,该应用程序涉及使用地理位置来导航偏远地区的步行路线,在那里用户可能没有信号,因此也没有互联网连接.重要的是该应用程序适用于Android 2.2+(因此SVG不是一个选项)以及iOS4 +.
我使用Adobe Illustrator以适合每条路线的分辨率绘制自定义矢量地图,平均值约为2000x2000像素,其中最大的一个到目前为止导致图像为4000x2400像素.
我选择使用Phonegap/JQM而不是本机只是因为我来自网络编程背景,它似乎是最快的方式来启动和运行用户界面而不需要过多地钻研本机代码,尽管我已经为了电源和屏幕管理的目的,使用本机代码编写了几个Phonegap插件.
应用程序需要允许用户在地图上平移(通过拖动)和放大/缩小(通过捏合)原始图像大小的大约25%到200%.
我所做的大部分测试都是运行Android 2.3.3的HTC Desire和运行Android 2.2的HTC Wildfire,因为这些可能是应用程序必须运行的最低规格设备.
我已经尝试了各种方法来显示地图(详见下文),但到目前为止,每个都被证明不适合用途,因为应用程序的内存使用量太大,所需的存储空间使得应用程序太大而无法下载或CPU使用过于密集,导致平移/缩放时出现延迟.
任何建议非常感谢.提前致谢.
我试过的方法:
1.使用标记将地图显示为栅格PNG
这是我尝试的第一种方法.将Illustrator中的4000x2400像素图像导出为128色PNG-8,得到746Kb文件.我通过相对于视口绝对定位图像来平移图像,并通过缩放标记的宽度/高度属性来缩放图像.这种方法的问题是,即使在1:1缩放级别,Android应用程序使用60Mb的RAM用于图像,并且放大到200%导致这增加120Mb,导致应用程序在HTC Wildfire上崩溃.
2.使用HTML5画布显示光栅PNG的部分
为了避免放大导致内存使用量成比例增加的问题,我尝试通过JS加载图像,然后将要显示的图像部分复制到视口大小的画布,如:
var canvas = $(‘canvas#mycanvas’);
canvas.width = $(window).width;
canvas.height = $(window).height;
...
var img = new Image();
img.src = “map.png”;
...
var context = canvas[0].getContext("2d");
context.drawImage(img, x, y, w, h, 0, 0, canvas.width, canvas.height);
Run Code Online (Sandbox Code Playgroud)
其中x,y是由平移和w定义的源图像中的左上角,h是源图像中由缩放级别确定的区域大小
这里的问题是大型地图图像在内存中以某种方式失去了质量(我只能假设存在一些内存上限导致抖动),导致地图在应用程序中看起来扭曲:请参阅此处查看示例屏幕截图
3.使用HTML5画布将地图显示为矢量
一些谷歌搜索让我发现了ai2canvas,这是一个Illustrator插件,可以将作品导出为HTML5画布中显示的矢量.导出的结果是一个包含一大块JS的html文件,它将illustrator中的所有路径表示为贝塞尔曲线.导出我的4000x2400地图导致包含矢量路径的550Kb html文件.在我的测试应用程序中,我将整个地图渲染到4000x2400像素的内存中画布(未附加到DOM),然后使用context.drawImage()将其相关部分复制到视口大小的画布中.内存画布作为源.在HTC Wildfire上,虽然内存画布的所有贝塞尔曲线的初始渲染时间约为2000毫秒,但画布之间的复制速度足够快,可以进行平滑的平移和缩放.问题是当我查看应用程序的内存使用情况时,一旦所有向量都呈现,它就会使用120Mb作为内存中的画布.
我尝试了使用矢量图的第二种方法; 而不是将所有向量渲染到大型内存中画布,我让应用程序计算在每个拖动/捏合事件期间当前平移位置/缩放级别的视口中哪些矢量路径可见,并且仅将可见矢量绘制到视口大小的帆布.虽然这将所需的内存使用量减少到10Mb,但是在每个拖动/捏合周期执行这些计算所需的CPU周期使得应用程序在旧的Android手机上落后很多,因此无法使用.
4.使用离线平铺显示地图
使用地图修整器,我为我的地图创建了PNG图块,缩放级别从25%到100%.在我的测试应用程序中,我可以根据需要延迟加载磁贴,从而减少内存使用并在HTC Wildfire上产生平滑的平移/缩放体验.我以为我找到了解决方案,直到我看到APK生成的大小:对于我的4000x2400地图,地图砖工生成了4Mb的平铺图像.我的大多数地图大约是2000x2000像素,因此产生了大约2Mb的图块.我的正确应用程序的代码加上Phonegap开销是另一个2Mb.
我的目的是在Android/Apple市场上发布一系列应用程序,每个应用程序都有一组大约10个地图,但是每个地图的平铺重量在1-4Mb之间,因此生成的应用程序变得非常大.
我正在使用带有cordova的netbeans为移动设备构建html5应用程序(android/iOS)
我没有连接到互联网时在netbeans中构建应用程序时遇到问题,因为尽管我已经连接到互联网并且下载了所需的所有内容并且应用程序运行良好,但是Cordova总是试图下载插件.当互联网连接断开时,我无法建立.
你有任何想法从互联网上禁用cordova插件下载.我在同一天多次丢失我的互联网连接,并且cordova在编译时给我错误,因为我离线了:
ant -f /home/user/NetBeansProjects/electionMobile/nbproject -Dandroid.target.device.arg=emulate -Denv.DISPLAY=:0.0 -Dupdate.task.jar=/home/user/.netbeans/7.4/ant/extra/org-netbeans-modules-cordova-projectupdate.jar -Dandroid.sdk.home=/var/www/adt-bundle-linux-x86_64-20130917/sdk -Dandroid.build.target=android-17 -Dstart.file=index.html -Dandroid.project.activity=electionMobile -Dconfig=android "-Dios.certificate.name=iPhone Developer" -Dsite.root=www "-Dcordova.version=3.1.0-0.1.0
" sim-android
check-android-template:
check-cordova-version:
check-cordova-project:
upgrade-to-cordova-project:
create-android:
update-plugins:
cordova plugins
cordova -d plugin add https://git-wip-us.apache.org/repos/asf/cordova-plugin-media.git
Calling plugman.fetch on plugin "https://git-wip-us.apache.org/repos/asf/cordova-plugin-media.git"
Fetching plugin from location "https://git-wip-us.apache.org/repos/asf/cordova-plugin-media.git"...
Fetching plugin via git-clone command: git clone "https://git-wip-us.apache.org/repos/asf/cordova-plugin-media.git" "plugman-tmp1386435517527"
Error: Error fetching plugin: Error: failed to get the plugin via git from URL https://git-wip-us.apache.org/repos/asf/cordova-plugin-media.git, output: Cloning into 'plugman-tmp1386435517527'... …Run Code Online (Sandbox Code Playgroud) 我正在使用aSmack和Openfire进行聊天应用.我能够很好地发送和接收消息.当收件人离线时,Openfire支持离线邮件传输,通过保持消息直到他联机.
但是当发件人离线或他的互联网在通信之间掉线时该怎么办?
是否有任何api由aSmack/Smack提供,它会在互联网恢复之前保留消息?
或者我应该通过SQLite发送消息?
我已经搜遍了所有但没有找到答案.
在我的Android应用程序中,用户可以脱机使用该应用程序,并且某些事件会向我的服务器生成http GET请求.我正在使用Volley,当用户在线时,请求正常工作,但是脱机它们会立即失败并从请求队列中删除.
我希望Volley存储这些请求,并在服务器可访问时再试一次,或者至少继续尝试.这种行为可能吗?
这就是我做事的方式:
StringRequest request = new StringRequest(Request.Method.GET, url, listener, listener);
request.setRetryPolicy(new DefaultRetryPolicy(8000, 2, 1.5f));
postToDefaultQueue(request);
private void postToDefaultQueue (StringRequest request) {
if (sQueue == null) {
sQueue = Volley.newRequestQueue(mContext.get());
}
sQueue.add(request);
}
Run Code Online (Sandbox Code Playgroud)
非常感谢,任何帮助表示赞赏
所以我设法让请求在失败后返回队列.代码如下:
private class DummyListener implements Response.Listener<String>, Response.ErrorListener {
String mUrl;
public DummyListener (String url){
mUrl = url;
}
@Override
public void onErrorResponse(final VolleyError error) {
new Timer().schedule(new TimerTask() {
@Override
public void run() {
Log.v(DummyListener.class.getSimpleName(), "ErrorResponse", error);
offlineStringGetRequest(mUrl);
}
}, 5000);
}
@Override …Run Code Online (Sandbox Code Playgroud) 我们目前正在构建一个Web应用程序(Django,Ember),我们发现大多数潜在客户都需要对应用程序进行零星的离线访问.
我们需要的不仅仅是"呈现"应用程序,以便用户可以导航,缓存清单中的内容等等(我想我们最终也需要),但我们必须让用户尽可能多地操作,就好像他们是线上.显然有一些功能不可用,但应该可以使用应用程序的基本用法.
也就是说,我希望听到一些关于之前遇到过这种情况的人的想法.我看到这个的方式,我们需要:
1.-检查我们是否经常在线/离线,或让用户指定他们何时离线(如智能手机中的飞行模式).
2.-所有数据都应该转储到IndexedDB中,从那时起我们就使用IndexedDB处理与数据相关的任何事情.
3.-当用户重新联机时,Synch进程必须尝试将数据从脱机用户转储到db online.虽然这可能看起来很危险,但我不希望很多用户同时离线,而其他在线用户正在使用该应用程序,所以我希望这个同步过程不会成为真正的噩梦,我也不会期待有竞争条件.
好吧,显然可以选择创建一个桌面独立应用程序......但我会尽量避免这种情况......
谢谢!
django offline offline-mode offline-caching offline-browsing
我正在开发一个Android应用程序,它将监听语音命令并相应地触发操作.
以下是一些疑问:
我们可以用唤醒词创建我们自己的单词和命令词典.
应用程序应该在脱机模式下工作(没有Internet).
我使用以下命令创建了一个脱机布局文件夹:
vs_enterprise.exe --layout c:\vs2017layout --add Microsoft.VisualStudio.Workload.ManagedDesktop --add Microsoft.VisualStudio.Workload.NetWeb --add Component.GitHub.VisualStudio --includeOptional --lang en-US
Run Code Online (Sandbox Code Playgroud)
然后我将整个结果vs2017layout文件夹(~2.57GB)复制到另一台没有Internet访问权限的计算机上并运行以下命令:
vs_enterprise.exe --add Microsoft.VisualStudio.Workload.ManagedDesktop --add Microsoft.VisualStudio.Workload.NetWeb --add Component.GitHub.VisualStudio --includeOptional --lang en-US
Run Code Online (Sandbox Code Playgroud)
但是,安装程序仍然需要Internet连接.请告知我缺少的东西.

先感谢您.