Chrome App offline installer for ICT4D - google-chrome

I'm interested in using Chrome (Packaged) Apps for ICT4D applications.
Is it possible to distribute Chrome Apps without being online / using the Chrome Web Store at all?
The big goal would be to distribute packaged apps using only USB flash drives / pendrives.
I would like to use Chrome Apps for their ability to target all desktop (& laptop) OSs. (Even fairly old ones. I might have to also distribute Chrome with the app.) Using web technologies (and laptops / computers) makes sense for the content-creation part of the app (and to reuse code), I think. The data could be distributed with the app in one neat offline bundle.
I will target mobile OSs with a simpler content-consumption app, but will probably try to reuse a lot of the code. In Android at least the app might be able to simply keep an .apk copy of itself to distribute to others offline.

You could put an platform specific Autoruns on the USB stick that run chrome with the --load-and-launch-app
Windows
C:\Program Files (x86)\Google\Chrome\Application\chrome.exe --load-and-launch-app=.
C:\Program Files\Google\Chrome\Application\chrome.exe --load-and-launch-app=.
Mac
/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --load-and-launch-app=.
Linux
/opt/google/chrome/chrome --load-and-launch-app=.

Related

Tizen doesn't recognize Google Chrome

I just bought a Samsung gear 2 neo and wanted to create my own watch. So this means I am new to Tizen development.
I installed the Tizen IDE and the SDK but for some reason after following -a part- this tutorial (http://www.slideshare.net/badaindonesia/professional-tizen-application-development) Tizen won't run my projects because it can't find Google Chrome on the specified location. This problem occures when I try to run a Tizen web application as a Tizen web simulator app. When i try to launch it as a Tizen web app it says Could not find emulator or device but that isn't my current target.
The specific message is Google Chrome could not be found (C:\Program Files(x86)\Google\Chrome\Application\Chrome.exe). Please install Google Chrome and specify the Google Chrome program location in Window->Preferences under "Tizen SDK/Web/Simulator".
I have tried changing the location to C:\Program Files(x86)\Google\Chrome\Application\ But this wouldn't help either. Yes, i have entered the correct location since i have manually located the chrome.exe to.
The only thing which might be wrong is that I am using the Windows 7 64 bit installer while I am on a Windows 8 64 bit desktop pc.
I have experienced a similar bug. Maybe this will help you/future developers:
My problem was that the Chrome app wouldn't open while pressing debug. I subsequently tried it with the Visual Studio Tizen extension: same problem.
The fix: I dove into the extension code and found that changing the chrome path via the option "Change Chrome path" doesn't actually change your chrome path.
What does? Going into "C:\Users\[USERNAME]\.vscode\extensions\tizenweb.wappl-1.1.2\lib\constants.js" and changing Constants.CHROME_PATH to your chrome path (for the operating system you are using).
I have not found a solution for the Tizen app, though I would recommend using the VScode extension anyway.
I had the same problem. Though not exactly a solution, I found a workaround.
Start the Web Simulator from Start Menu
Enter the location of your index.html file in the address field and press Enter
Don't forget to add file:/// in the front.
There you go!!

FDT - Accessing Same Project from Different Computers with Google Drive - Error "Project description file is missing"

I am using the latest subscription version of FDT 64 bit (with a subscription, not the free version). I have my FDT workspace and project files saved in my Google Drive. I am trying to work on the same FDT project from two computers: A Windows 7 desktop, and a new MacBook Pro.
Disclaimer: I am new to FDT, since just getting the MacBook I am trying out moving from FlashDevelop to FDT so that I can have a native IDE on both my desktop and laptop.
I created the project and started working on it while going through FDT tutorials on the Windows 7 desktop. Compiling, debugging, everything was working great. I am now trying to open the project and work on it from the MacBook. Upon launching FDT and choosing the workspace in Google Drive (which has finished syncing) I can see the project in the FDT Explorer, but if I try to open it by double-clicking on it I am presented with the error:
"'Open Project' has encountered a problem. The project description file (.project) for 'My Project' is missing. This file contains important information about the project. The project will not function properly until this file is restored."
However, showing hidden files and browsing with Finder shows that the .project file is indeed there, as well as every other file in the project's folder. I compared the contents of the files on the PC and Mac, and they appear to be the same.
Other notes: Both the desktop and MacBook have the 64-bit version of FDT installed.
My desired outcome is to easily move from my Windows desktop to my MacBook and continue working on the same project. Perhaps I'm doing it all wrong with trying to use Google Drive and setting the workspaces to be the same. Please critique and tell me how I should be doing it :)
After doing more research based off of the comments on my question, I decided to use a version control system instead of a network drive. A shared network drive is just not the right workflow for something like this, and corrupted files will always be an issue. I am now using BitBucket: https://bitbucket.org/
See here for more related information:
DropBox as Version Control and Offsite Backup
Update: For anyone getting started with Bit Bucket, this is what I used to get started:
This tutorial: http://www.youtube.com/watch?v=pp2S2lHjzZI (it's for Git Hub but works fine with Bit Bucket)
I am using TortoiseGit on windows, and Tower for Mac.
Few things you should confirm on your Mac to resolve the problem (in Terminal):
Check if the file is there ls ~/Google\ Drive/[your_project]/.project
Change file rights for the file sudo chmod 0777 ~/Google\ Drive/[your_project]/.project

AIR file too big, breaks during installation

A client is having me convert an HTML5 video web application that I've already built into an AIR app.
The end users are going to need this to work with no internet access, so I MUST include a LOT of video files with the installer. This works fine on my machine, but my client can't install it because the .air file is too large and they don't have enough RAM. We'll need this installed on a number of laptops that aren't super powerful.
My SDK is up to date and we're using AIR 3.1.
Has anyone else run into a similar situation? Is there any workaround? For instance could I either include both the installer and the .air in a zipped folder, then have the installer move the video files to the appropriate location, or use AS to have the installer download the files (they will have internet access when installing).
I'd recommend you not to include heavy video files into your application. Downloading assets from web is a descent idea, I use same technique for several museum touchscreen apps.
So here's workflow: on startup app tries to connect to "assets server" and request list of files to download. It can be list of all the files, or list of files that have been updated/added since timestamp that you pass with your request. Then you download them to File.applicationStorageDirectory. Not to have mess in that directory I put all of them to "cache" subdirectory.
In case there's no internet connection for some reason when you install that app, you can have all that "cache" folder on your memory-stick/externalHD so you can manually perform that downloading process.
If you use Greensock's LoaderMax: I've written a simple URLStreamLoader that extends LoaderItem, handy for downloading files. Can share that.
The problem is quite obvious: the Adobe AIR provided installer for deploying your application is lacking.
However, Adobe recently released a new feature for deploying Adobe AIR apps: "runtime captive bundle" (Windows or OSX).
Which means 2 important things:
You receive an .exe which no longer requires an user to have Adobe AIR runtime installed (and no more incompatibilities when targeting multiple Adobe AIR runtimes).
You are no longer provided with an installer, and you have to find your own (which solves your problem halfway).
Target bundle when "compiling", and then just use a better installer (Windows or OSX) - think you are just deploying a normal application (worked for me:) ). There are too many installers arround to mention.
Your installer of choice + bundle compiling, together solve your offline installation requirement and the memory exhausting issue.
Packaging a captive runtime bundle for desktop computers

Google TV emulator without chrome browser?

Is it normal not to have the Google Chrome browser on a google TV emulator in a Linux machine with KVM enabled?
When launching an Intent from my application that hits a web page,
I get the error message "No activity found to handle intent {act=android.intent.action.VIEW, dat=http://...}" and I have tried several web addresses.
The code from My Activity is this and it works fine in other android platforms:
Intent myIntent= new Intent(Intent.ACTION_VIEW,
Uri.parse( "http://www.test.com");
startActivity(myIntent);
Am I missing some step to install the Google Chrome browser? On the other hand I can not find the Google Market application neither.
Sadly it is normal not to have the Chrome browser installed with the emulator. This does make it a bit of a pain to do things like you are trying currently. I'm not sure if there are plans for adding Chrome to the emulator in the future, but in the meantime, it is possible to install Browser.apk (the Android browser) to the emulator (via adb install Browser.apk, which you can either build from AOSP or possibly pull from a device or standard Android emulator via adb pull /system/app/Browser.apk - I think this is the default Browser location on devices).
Once Browser.apk is installed you should be able to test these things as you would expect.
So the steps are:
Start an emulator with Android 3.1 running
adb -s device_id pull /system/app/Browser.apk
adb -s device_id install Browser.apk
In the Android smart TV emulator, I've tried the simplest method to download the Chrome browser.
Drag and drop the APK onto the emulator after downloading it from the provided link. After you will allow from to Settings > Device Preferences > Security & Restrictions > Unknown sources
Chrome APK Download URL
Second
Alternate you can follow the article link

Standalone version of Chrome (for development)

I use the stable version of Google Chrome as my default browser on my system. I now need to work on a project requiring the development version of Chrome, yet I do not wish to replace my system install of Chrome.
Does there exist a standalone package of Chome which can be unpacked into a folder and executed entirely from there? Ie, it should not require anything to be installed, it should not touch the profile associated with my installed version of Chrome. I should be able to download different versions of this into different folders, and be sure that they do not conflict with each other..
(Ideally we could package up prototype builds complete with a copy of this version of Chrome. These packages would then be as self contained as a desktop application...)
You could download the Chromium flavour (which is the open source browser that runs Google Chrome). You can download the latest and greatest from:
http://build.chromium.org/buildbot/continuous/LATEST/
If you have specific dates/revision that you want to download, you can pick them from:
http://build.chromium.org/buildbot/continuous/
That will not interfere with the current version of Chrome, instead it will be using Chromium folder structure (chrome replaced with chromium everywhere).
Simply get the portable version, it does what as you need.
As an answer above, you could get Chromium (portable) which also includes chromedriver from chromium snapshots page.
Pick one with the biggest number (scroll down):
https://commondatastorage.googleapis.com/chromium-browser-snapshots/index.html?prefix=Win_x64/
If the link is dead, there is always a solution to build it from source code, it's a benefit of open source application.
https://chromium.googlesource.com/chromium/src/+/refs/heads/main/docs/windows_build_instructions.md#Build-Chromium
Chromium home page:
https://www.chromium.org/
Hope it helps!
I believe Chrome on Windows installs itself into the Application Data (/Users on Win7) folder of a user. While I can't test this at the moment, try creating a new user account, install Chrome, then log into your other account. Then try running both at the same time. Might be a bit hard to find the executable.
Another option would be to run it in a VM. More expensive versions of Win7 have this somewhat built-in (you need to download an XP image from Microsoft, but the VM software is pre-installed, I think) but you can also install VirtualBox + your own ISO. On a decent computer system, you shouldn't get too much of a performance hit.
A really silly way of doing this is installing the multiple concurrent users Remote Desktop hack, Remote Desktopping to your own computer (if that's possible) and running the second Chrome install as a different user.