3

我需要一些帮助,

1)我正在开发应用程序,我想在其中显示包括视频在内的离线网站,所以我在原始文件夹中添加了视频以供离线访问应用程序,我想在几天后更改该视频(可能会从应用程序中添加或删除一些视频) . 那么是否可以在不使用 android 市场的情况下更新我的应用程序?

这个想法是当我启动应用程序时,它会解析 json 并检查我的网站上是否有新版本的应用程序可用。如果它可用,它将开始下载它(我不想打开浏览器进行下载。更新应该在我的应用程序或后台完成)并重新安装它。我怎样才能通过编程方式做到这一点?

还有我如何在网络视图中缓存整个网站。目前我正在使用此代码,但它只缓存访问过的页面(我们在应用程序中打开的页面)

webView.getSettings().setLoadsImagesAutomatically(true);
 webView.getSettings().setDomStorageEnabled(true);
 webView.getSettings().setAppCacheMaxSize(1024*1024*24);
 String appCachePath = getApplicationContext().getCacheDir().getAbsolutePath();
 webView.getSettings().setAppCachePath(appCachePath);
 webView.getSettings().setAllowFileAccess(true);
 webView.getSettings().setAppCacheEnabled(true);
 webView.setWebChromeClient(new WebChromeClient());
 webView.setWebViewClient(new WebViewClient());   
 if (savedInstanceState == null) {
 if(isNetworkAvailable() == true){
 webView.getSettings().setCacheMode(WebSettings.LOAD_DEFAULT);
 webView.loadUrl("http://www.xyz.com");
  } else {
 webView.getSettings().setCacheMode(WebSettings.LOAD_CACHE_ONLY);
 webView.loadUrl("http://www.xyz.com");
  }   } }

2)如何通过usb将apk从mac安装到平板电脑而不点击eclipse的运行按钮。我想将此 apk 安装到 200 台平板电脑,所以我正在寻找一些批处理程序或一些脚本,它们将是应用程序的一键安装脚本。我在谷歌上搜索我发现一个多 apk 点击但我不知道它是否适用于无根平板电脑。

等待回复。谢谢

4

2 回答 2

2

有两种方法可以做到这一点,首先使用推送通知,并在用户单击通知时告诉他们新版本从您的网络服务器下载 apk 并让他们安装(我使用过这个)

其他选项可能会在某个固定时间(一天)后轮询您的 Web 服务器,并检查新版本是否可用,一旦可用,将其推送到通知区域,当用户单击新版本可用时,它将再次重复上述过程为此,您所需要的只是您将请求发送的 Web 服务器,以及您将让用户从哪里下载应用程序

于 2013-02-13T13:20:05.577 回答
1

我认为将视频等存储为资源是一种不好的方式。

您可以通过计时器将数据与您的站点同步,并将所有数据存储在数据库或 SD 卡中 - 因此您无需重新安装应用程序,有时只需下载一些数据,所有数据都将在您的设备上并可离线使用。

关于脚本 - 您可以编写自己的脚本并且只运行abd install app- 所以您只需要启动您的 adb 而无需打开 IDE。

顺便说一句,您无需用户操作即可“重新安装”您的应用程序(在非 root 设备上) - 因此用户多次重新安装您的应用程序非常不方便。

更新

要通过 USB 安装应用程序 - 此人必须有 adb。

他们不想等到下载完成

但在这种情况下,他们必须等到应用程序被下载 =)。他们必须下载内容,即使是资源中的内容或在线可用的内容。

如果您想使用内置内容创建此类应用程序,您可能会遇到一些问题:

  • 有些设备不会接受你非常大的 APK(例如,对于 htc 的需求>20 mb 是个坏主意 =)
  • 每次你想更新你的应用程序时,人们都必须重新下载大量的信息,如果你内置了在线缓存,他们可以花费更少的时间来下载 diff。即使人们通过 USB 安装您的应用程序 - 您也可以将所有数据放在 sdcard 上。
  • 您不能以人们不会生气的方式在非 root 设备上升级您的应用程序 - 每次都必须重新安装您的应用程序。但是使用我的方法可以睡觉并且可以下载内容。

因此,当您的方法比通常的“在线”方法更好时,我无法想象任何用例。

于 2013-02-13T13:33:39.183 回答