Currently I am working on new App Engine application.
Unfortunately it seems that my application uses to lot of resources even for relatively small user number. So I need to determine its bottle necks and optimize them.
Appstats: RPC Instrumentation for Google App Engine. It is being developed by Guido himself.
alt text http://img130.imageshack.us/img130/526/timelinea.png
EDIT: I believe AppStats will not work with Java, but there are some tips here.
The Eclipse plugin for the Google App Engine provides a local App Engine environment in which you can run your program in debug or profile mode. Perhaps this could provide the information you need?
Related
I am writing a Java program for my workplace, to help catalog pricing with several parameters involved. The current program implements JComboBox, along with other Container objects.
I have realized that our workstation will not run a Java program through Windows due to protective limitations, so I am hoping to transition to Google App Engine, since we can load websites much more freely.
The problem I have run into is that JComboBox doesn't run through Google App Engine. In fact, none of the Containers I was using will work in Google App Engine. The tutorials on Google Developers haven't provided the information I need.
Where can I find information on what objects I can use in Google App Engine to simulate a GUI with pop-up menus and buttons?
(I am using the Google Plugin for Eclipse.)
Maybe this link will help you, it lists all compatible frameworks: http://code.google.com/p/googleappengine/wiki/WillItPlayInJava
For a higly responsive GUI, I suggest you take a look at the GWT: http://www.gwtproject.org/examples.html
In a nutshell: GWT allows you to write web applications with Java. Some/all of the Java is converted into JavaScript for better usability.
If you want to use Google App Engine (GAE) you can either use GWT for a standard GUI or a Java Webframework like Vaadin or JSF.
Currently I have a very basic desktop Java application in Eclipse that is meant to add entities to an existing project's datastore on Google App Engine. I have it all setup right now but since I am new to working with Google App Engine, I have no clue on how to get the application to send the Entities into the datastore of my existing project.
I tried looking this up online but most of what I found was for making java web apps. My goal is to have the application running as its own application, not through a browser.
So, what do I have to do to make the application connect to my GAE datastore? Is there some code I need to type, or perhaps some xml file I need to have within the project? I am just using the Java Eclipse plugin for Google App Engine.
Thanks for the help!
Based on the language of your question, I think you really need a big-picture sort of answer, rather than any specific code. Therefore:
You have a desktop application. This runs on some desktop computer.
You have a Google App Engine application with its data store. This runs in Google's data centers.
These are not the same computer. Therefore, they must communicate over the network in some fashion — that is the missing piece you're looking for.
Since GAE is designed around doing web applications, I recommend you think of this as a “web service” situation — that is, your desktop application makes HTTP requests to your GAE application. (The situation is simplified over the general case because you are writing both the client and the server.)
I recommend you read about designing simple web services and do whatever seems to fit your application.
One important warning: Unless your GAE application only ever has one user, you must not simply write a bridge that gives access to the data store over HTTP, because then anyone can make arbitrary changes to other people's data. As it is said for multiplayer game design: don't trust the client — that is, only accept network requests that make sense according to the rules of your application, and do not expect the client to enforce those rules. This is because anyone can make requests to your GAE application using something other than your desktop application, so you must assume you could receive arbitrary requests. This is the fundamental nature of the Internet.
For example, in the simple case of a multi-user application whose users do not interact with each other using the application, this means that every request that, say, updates a record, should only update a record which belongs to the logged-in user, not one of any other user.
For anyone that gets this problem in the future, I got an answer to it. I just tried experimenting around with the project settings and found it. So as it turns out, after you have installed the GAE Eclipse Plugin, you can just right click your project folder in the Package Explorer, go the Google sub menu, then click on App Engine Settings... .
From there, you need to check the Use Google App Engine checkbox, then in the deployment section, just fill in your project's Application ID. Your project's application ID can be found under the Application Settings tab of your project's online Google app engine dashboard. It is listed there as your Application Identifier.
Turns out that for me, I will need to find a different solution as you cannot integrate GAE with a desktop application that uses the Java Swing library. Bummer :/
I am on the lookout for doing analytics for a desktop application written in Java. I came across two services viz: TrackerBird and DesktopMetrics , but for a small time developer like me , those services are not affordable.
Google analytics has android support. So I was wondering if I could use the same in the desktop application which is on Java.I am looking for a headsup if anyone has implemented the same and tips on how to proceed on using GA on desktop.
the SO link here says no , but I think it can be done.
Here is the link of google code on using GA in android , says it should bind to an application context. I was wondering if I could hack it to work in a desktop app.
There is no Google supported library for GA on desktop Java. The Google Analytics Android library has a lot of dependencies on Android infrastructure (for extracting basic user information, maintaining persistent state, and tracking application lifetime). But, since GA just boils down to HTTP image requests, it should be possible for a desktop Java app to mimic those. I have not used it, but this library looks like what you want: http://code.google.com/p/jgoogleanalytics/
For more details and other useful links see Manually sending data to Google Analytics
Have you thought about using Mixpanel? It gives you 25,000 to 175,000 free data points a month and has a Java integration library:
https://mixpanel.com/docs/integration-libraries/java
Lately I've been doing a lot of web development on my Droid via ssh using the ConnectBot app and a few other apps for reference. I've also been doing a lot of Android development back home in eclipse, and I wondered: would it be possible to develop and test my android projects right on my phone? All I can do at the moment is either write the code via ssh and then open it later with eclipse to finish it up, or remotely use eclipse via LogMeIn Ignition or VNC. Does anyone know a native way to do what I'm trying to do, preferably offline?
Try AIDE. I use it because it supports Eclipse projects. https://play.google.com/store/apps/details?id=com.aide.ui
Not sure if this hits the target you're looking for, but The Scripting Layer for Android (formerly known as the Android Scripting Environment) is available and has a lot of power available to it.
Scripting Layer for Android (SL4A,
formerly known as Android Scripting
Environment or ASE) brings scripting
languages to Android by allowing you
to edit and execute scripts and
interactive interpreters directly on
the Android device. These scripts have
access to many of the APIs available
to full-fledged Android applications,
but with a greatly simplified
interface that makes it easy to get
things done.
Scripts can be run interactively in a
terminal, in the background, or via
Locale. Python, Perl, JRuby, Lua,
BeanShell, JavaScript, Tcl, and shell
are currently supported, and we're
planning to add more. See the SL4A
Video Help playlist on YouTube for
various demonstrations of SL4A's
features.
I found DroidScript. It's a quite powerful JavaScript interpreter thats based on the Rhino-library. It can import every Java-package and even create activities for starting from the launcher. The URL is http://droidscript.se for the Live-Editor with which you can edit scripts online and send them to your phone, and the droidscript-app has an editor, too but it cant save at the moment, i think. DroidScript is Open-Source and embeddable in an own app, I think. More info on news of DroidScript are found on droidscript.blogspot.com.
check out JAVAIDEDROID on the market
You can if you have a remote linux machine that you normaly develop on.
ssh into the machine with some ssh app.
edit the code with some console text editor (vim for example).
build the application with ant
copy the generated apk into the android phone and install it
repeat from point 2.
Good luck!
I really don't know if it's possible, but to do it, you should:
"Install" java inside Android.
"Install" ant
run ant debug
Check this link for more instructions.
PS: Please let us know if you could do it :)
I may start porting an android application to blackberry in the next weeks.
I have my problems understanding the RIM documentation of blackberry development.
But I think I understand that I can develop an off line web application. An Application that runs in some kind of WebView but is written completely in JavaScript. Sadly I can't find anything to confirm this hunch.
Has anybody of you build a Blackberry app that loads a local website into a webview?
Is this possible? Are there any tutorials for this?
Every little pointer to further information is appreciated.
Yes, you can create a "widget" which is an HTML/Javascript application that runs as a native app on the device. See the BlackBerry Developer Center section on Web Development for more information (look for tutorials and videos for "Widgets").