Hello Walter,
Thanks for posting. The SetOption and GetOption actions do not use files but the LocalStorage HTML5 API.
Hello Walter,
Thanks for posting. The SetOption and GetOption actions do not use files but the LocalStorage HTML5 API.
Hello,
Interesting information Nelson. Yesterday I try installing Visual Studio in order to get the SDK and other software ready to use with my Adobe Phonegap installation, however, maybe due to the options I choose during the installation, the build file start adding the platform and create some files, but terminates with some "requeriments" error.
I will try to do more test about that. Do not forget that Phonegap provide at least three ways for Microsoft platforms: Windows, which means our apps can be deployed to Windows 8.1 and Windows Phone 8.1; Windows Phone 7, suposelly to get our app ready to deploy in that version of Windows Phone; and also Windows Phone 8, to be used in order to deploy in this Windows Phone version.
I want to try with the first option, since a phone with the Windows 8.1 operating system have a more or less affordable price. Anyway remember that, at least at the current App Builder stage, we can try EVERYTHING in a browser, that is, using the App Builder included debugger. Or open our app in a browser using the HTTP served that AB incorporate. Maybe a couple of "Open in browser buttons" are a good idea.
This is the primary intention in App Builder: everything must run in a browser or must be emulated in a browser. An example can be the Vibrate and Beep actions. These actions relies on certain Phonegap plugins, Vibration and Dialogs, however, if they are not exists, the both actions works like we can expected by vibrating the screen (with a CSS animation) or play a beep sound. This primary intention, however, can be break by certain specific actions in the future.
When such time come, certainly, we need to think in how to emulate an Android device, for example, or how to connect a device in our computer in order to debug the compiled APK app. I have a better experience doing this instead of use an emulator, since the speed of the emulators are not too fast, at least in my computer.
Following with the Windows Phone or Windows platforms, maybe can be a good idea, at least to try, to using the Adobe Phonegap Build online service. I prefer the Adobe Phonegap CLI flavour, because the results appear better and also we do not get with the limitations of the free service of Adobe. I want to get an environment ready to deploy Windows and Windows Phone apps using the Phonegap CLI and the required Microsoft Windows software stuff, SDK's, etc.
Hello Nelson,
To be honest until today I am mainly focused in web browsers and Android platforms. Since I prefer that I am right now downloading the required software for the Windows and Windows Phone 8 platforms: http://short.cz/2N
As you can say we can expect the things currently works well, not only by the nature of HTML5 apps, but also by the nature of the App Builder itself, intented to work in almost platforms as possible, starting with the web browsers.
But certainly I am interested to try in some possible Windows Phonen emulator and even I am thinkin in buy a more or less cheap Windows phone in order to test my own apps. Maybe another mate made some efforts on this platform and can help us.
Thanks Eric. Hopefully we can create useful apps with App Builder. :)
Hello Nelson,
According to my database any of your NeoPlugins are expired. I plain to send by email your NeoPlugins personal registration data after write this post. Since your plugins are not expired you can use the latest releases downloading from the NeoPlugins website.
[s]You can found the current and old releases here in DropBox:[/s]
The old releases of all DecSoft's software can now be found in the customer's area of the DecSoft's website!
Hello Walter,
Thanks for posting. Before all, update your App Builder copy: you can discover great news (read the History file from the Help menu for more information). After this note I will try to answer your question as best as possible.
1. I´m really a newbie in this kind of app devolopement, but my interest are apps for mobile devices which also run offline - means after installing all media etc. are on my phone,tablet. Where and how do/can I manage this?
In the future I want to integrate Phonegap into App Builder to made easy to use. Today, what you obtain when Build an app with App Builder is the right HTML5, Javascript, CSS and Config files (along other of your app files) ready to be deployed in a web server to be running from a mobile or desktop web browser and also ready to be compiled using Phonegap. However you need to install Phonegap by yourself and then compile the produced app.
May you can also use the service of Adobe Phonegap Build to do the same, but I get better results using the CLI version of Phonegap. If you have Phonegap installed and ready to use, you can put a BAT file into your app compiled directory (in the same place than the "config.xml" file) containing the below code in order to add the Android platform, the appropiate Phonegap plugins, and finally build your app to obtain your APK file ready to be deployed in an Android device:
Files like images, JSON, HTML templates, etc., are put with your app and compiled in order to be availables. Video and audio files to be reproduced with the MediaPlayer control, unfortunatelly, cannot be locally to your app in Android, due to an issue in Phonegap/Android that disallow the access to these files. You can always put these media files in some web server since in this way the refered issue dissapear. If you refer on how to refer to your app files, if you take a look at the app file's manager, you can view the relative URLs which you need to use, and copy these URLs into the clipboard if your right click some app file item.
2. At the moment I have to add every file I use in my app at least in the app file list before compiling. Could this be done in future dynamically? Imagine for example a slideshow of pictures - to handle this with a var based code I have to update the apps file list every time I have a new picture ...
The problem now with the app file's manager is you only can put files one by one. This is something you can view fixed in the latest App Builder release, that has enhance the app file's manager in order to allow us to choose more than one file at the same time. Of course, once you Build your app, you can add whatever files you wanted into whatever directory and refer to that files from your app. But this probably is not a recommended way.
The app file's manager exists in order to maintain the files uses by the app, not only in a simple list, but also "refered" to the app, in order that you can translate your app and their files from one computer to another without loss the files references. In some situation like when you choose an image from the object inspector to be show in an Image control, such image is then compiled dinamically when you Build your app.
In any other case and to be honest, I think the app file's manager is the best way in order to manage our app files.
My main issue in that question is to keep my app maximum open and define controls properties with vars whereever possible. By the way doing this with Top and Left doesn´t work ?
Are you read the Responsive app tutorial recently included into the help file? Read it Walter. Of course you can set the top and left position for the controls using the "SetStyle" action by the way. However we need to take in consideration several possible approach if we want our apps run in almost available platforms and screens. In general, if you choose the "Scaled" app option and plain to deploy your app in mobile devices, probably you no need to do too much things.
The same can be say for larger screens, and, in any other case, we need to take in consideration what I try to explain in the refered tutorial which I carefully recommend you.
Thanks again for posting and don't hesitate to do again if you need Walter.
Hello,
If the transparency option of the line object doesn't nothing,... I think we can't do nothing in order to get working with something like you refer, sir. If we hide the rectangle/line, we hide the line too, because the line is draw inside the rectangle. You can view this when you move or resize the line in designtime: what you can view is moving or resizing the rectangle which contain the line. Then when you put a rectangle/line on top of another rectangle, what you do is to put a rectangle inside the cam rectangle, not to draw a line inside the cam rectangle.
Hello,
You're welcome Nelson. ;)
Hello Nelson,
Fortunatelly this kind of error is a plugin catched error, an "action argument error" to be exactly. If you try with the plugin samples, for example, you never get an error like that, or I need to fix that to work properly. But this is not an unexpected error, just an expected error when we do not provide the right argument to some plugin action.
Well. As you know, some NeoPlugins allow us to create various instances of a certain object, for example, we can create various "Ciphers" using the npCiphCreate action. Ok. Since we can create various objects, when we want to operate over such objects, we need some way in order to identify particular objects. And for that reason we have the "ID" argument in the right plugins actions.
The "ID" argument is not a random number, but it's the number returned in the result variable of the "create" actions. This mean the "npCiphCreate" action return in their result variable the "ID" of the object being created. Then, we can use another plugin actions like npCiphEncryptStr (to encrypt strings in this case) indicating the object "ID" that we want to use.
In few words this all stuff is useful because we can use more than one instance of an object. And this is useful for various reasons, for example, we can share "events" actions code between objects, because "events" actions provide the "ID" of the object that launch the "event" subroutine. You can maintain available all the objects until you need it, and, optionally, use the "destroy" actions (provide the "ID" of an object) in order to destroy it and free from the memory.
A good approach is to use the "create" actions providing a descriptive identifier for the "ID" variable. For example, take a look at the bellow code: we create a cipher object, use it to encrypt an string, and then destroy it. Note how we name the object "ID" variable with a descriptive name, which allow us to identify what this variable is and for what we can use.
Hope this explanation help you in some manner. What I suggest is to familiarize yourself with the plugin samples. If you have any other question don't hesitate to post it here Nelson.
Always thanks you Eric!
Hello Nelson,
Thanks for your comments and kindly words.
Now, I would like to ask if you have some sort of road map you could share with us?, mainly sketch up dates for future releases or an estimate for the 1.0
My intention is to publish a first stable and public available version of App Builder as quickly as possible, however, lots of things need to be made before I considerer App Builder ready. For example, the program help file is not initiated right now and must be more or less complete before the program can be published. Maybe another month can be a good date aproximation for a first public release. Anyway for sure you can view more news in the successives ALPHA releases of the program.
I believe It would be really useful to have the option to use databases engines within the application... What are your thought about this matter?
You can take a look at the Report sample: very simple right now, but maybe sufficient in order to get an idea. We include a JSON file plenty of data along the Report sample app and then use the Report control in order to parse it and show the information in an HTML table. The sample show us how we can also filter the data using an input control linked to the Report control.
This is how this kind of hybrid apps works: they make HTTP GET request to retrieve information from a server/database and also make HTTP POST request in order to update/insert information into the server/database. What database? No matter. What server? No matter also. Your server can run an Apache and a MySQL instance, for example, and the app do not know nothing about.
Your server/database made responses in a suitable format like JSON and the app can show the information in a human readable way, alowing to reorder, filter, etc. Your app can send new information and data to the server/database in a "key/value" way by making HTTP POST calls, just like you can view right now in the SimplePost app sample. The user enter the data in various fields and the app send these data to the server.
And what happend with local files/databases? Right now we can read JSON files and present their information like in the Report app sample. One of the things I need to investigate is the HTML5 File API's like FileWrite, however, taking a look at the FileWriter API support... they appear not too much suitable right now. Again we need to think in the possible app platforms: in fact we do not get happy if some web app can read our files...
Another possible way to set and get information in an app is the use of the local storage. We can use around 5 MB of data in the app local storage, saving such information in a key/value way. I mention here just to explain another possible way to store/retrieve information by an app with persistence in mind. Local storage remains between app executions and can only be removed by the user. Local storage are also available right now by using the SetOption, GetOption, RemoveOption and ClearOptions actions.
This is more or less the way in which we can work right now.
If you have any suggestion or idea, please, share it here Nelson.
Everybody can read the DecSoft support forum for learning purposes, however only DecSoft customers can post new threads. Purchase one or more licenses of some DecSoft products in order to give this and other benefits.
This website uses some useful cookies to store your preferences.