Any other ways to write app for Surface RT instead of Windows Store app? - windows-rt

Is it possible to write a console EXE app like "hello, world!" for Surface RT?
I thought it suffice to compile it for ARM, but it seems there's no such compile option.
I installed Office 2013 RT and I found the Excel.exe. So can I write such EXE, too?
If only Windows Store app is allowed for Surface RT, why provide a "desktop" ?

No it is not allowed. The reason desktop mode exists is most likely so you can use Office on the RT device. But otherwise, they are locking down the device so you cannot do all that crazy Win32 stuff that can kill performance and battery on an RT device.

You can also write sophisticated HTML websites that behave like apps like this: https://www.pulse.me/
Websites in IE10 can
Have a snapped mode
Have a large tile
have a badge number indicator
http://www.buildmypinnedsite.com/ for more details.

Related

Profiling a running iOS app without a computer attached

I would like to profile a running app without a computer attached. Pretty much what the sample command does on Mac OS X. Is it possible ?
I would like to do this without any computer attached because my app gets into an endless loop only at certain GPS locations. I tried reproducing the problem by faking GPS fixes but I couldn't. Yet the issue is 100% reproductible in the field…
You can try logging suspected method and loop entry/exits to a file, and recover the file later using iTunes Document sharing or Xcode.
No - I'm pretty sure it isn't, as Apple does not allow developers to use any iOS-development tools on the platform itself. You might be able to build analytical stuff into your own app (RAM monitor etc.), but not by using another app.
Anyway, your computer is much better suited to the task than a device - so sick with it.
Maybe some day Apple will let us test/write iPhone apps from iPads...

Developing iPhone with colocation Mac mini

I want to develop iPhone apps but i don't have a mac and money for that. I have an idea for that but i don't know if it will work?
I will rent a colocated mac mini from web and start developing from that. From a company like http://www.macminicolo.net/ I am a new bee so if there will be a problem, please warn me.
Experts, what will be the problems for me in that situation?
Thanks.
The biggest problem will be that you won't be able to debug on a device. And your workflow will be a bit cumbersome: after compiling, you will need to copy the compiled app to your local PC and get it onto your device (e.g. via the iPhone Configuration Utility for Windows). Then you can test and repeat, but you will only be able to do "printf debugging".
Those are the obvious problems I can see, there surely are more.
I suggest you get a used Mac Mini from eBay or something. They're really not expensive and will make your life a lot easier.
http://www.macincloud.com does not provide a dedicated or virtual instance. A username is provided without administrative rights. Especially, when it comes to CI , you can not even SSH to machine to trigger a build script.
To cut a long story short, macincloud is not a colocation like solution.
There are a few solutions ordered by price:
Hakintosh.com, you will have to partition your hd, but this is the cheapest method by far. (Legal grey area though). Price: FREE
Rent a mac remotely. Couple of issues there:
a. Testing on a physical device. Use this workaround TestFlightApp.com
b. Remote build access for tools like gamemaker. Macincloud.com has a cheap add on that let's you do this. they also have these installed already: http://www.macincloud.com/features/tools/tools. Price: ~$20/month
c. If you need Root access all the time, you'll wan to go with a dedicated plan. This will only make sense if you only plan to use for a couple months. macminicolo and macincloud have different pricing metrics based on what you need. Price: ~$50/month and up.
(macminicolo says $35, but couldn't find anything cheaper than $55). No evidence of pre-installed apps for the dedicated accounts either. But that doesn't matter if you have Root access.
Buy a refurbished Macmini! http://store.apple.com/us/browse/home/specialdeals/mac/mac_mini
Their stock changes daily, but this is a great option. You can pick one up for around $400 and they work great!
For any Mac Cloud service, be sure to choose a server location that is close to you geographically. This will eliminate latency issues.
you also cannot install applications without going through the admins. because you are logging in to an actual mac the install cannot affect other uses. i don't think this is a solution for developers.
DarkDust is right. You will be able to compile it remotely and run the app on the iPhone simulator. However, to have an actual mac is the best.
Regarding colo, a better alternative is to use macincloud at http://www.macincloud.com

Comparison mobile devices as dev. platforms iPhone, Blackberry Windows Mobile

I was trying to compare the three above mentioned platforms and what considerations one needs to think about when programming in order to create some kind of code base that could run on all three.
This is what I have collected for the iPhone - it would be great if somebody else could write something similar for the other two.
Only one application can run at any
given time. i.e. that is why the
SQLLite database is loaded as a file
into the app instead of as
traditionally having some kind of
server to connect to.
Only one fixed size window 480x320
pixels
Runs in a sandbox, when the app is
deployed a sandbox is created
"around" the app, the app can only
read/write files from within that
area. Also low-level access to the
phone is restricted.
Since a program can be stopped at
any time (see point 1) this needs to
be considered when designing the
app, at any time must the app be
able to write its current state to
disk so that it can resume later. If
this takes longer than five seconds
the app will be aborted.
128MB RAM, about half of that 64MB
is available to the app. There is
typicall 4GB storage (depends on
model), no virtual memory, if memory
is running out the app may be
aborted.
Edit: just to be clear, I am not after which platform/os is best for the developer, I am just interested in spec. comparison to know what can be expected if one has three target platforms and using native language for each (not web apps), what the memory and other considerations are.
Edit: removed language as its assumed that native language for the platform will be used.
There is an excellent article on Codeproject which would be of benefit to your question. Head on over here to read it.
Hope this helps,
Best regards,
Tom.
For Windows Mobile I want to add:
Windows Mobile in comparison to iPhone allows multiple applications to run at same time.
It comes with variable screen sizes and has different sdks (
Windows Mobile Professional for 'Windows Phones' (smartphones) with touchscreens and
Windows Mobile Standard for 'Windows Phones' with regular screens)
The framework which is generally used is .Net Compact Framework besides some people also prefer open-net which is a open source framework.
Unlike in iPhone, Windows Mobile has no private api's which means it gives more power to developers.
The memory size allowed for a program is 32 mb
You do not need a developer license for developing and shipping applications on windows mobile although windows mobile itself prompts you to avoid installing apllications which are from unknown publishers.( which is more interesting unlike in iPhone you need to have a license while you only want to debug your applcation on your device(not for the jailbroken devices.))
And for some bad things about windows mobile, see this link.
Thanks,
Madhup
I feel like the final list will be of little use, as all data points collected will differ substantially in content apart from your last one. Some corrections to your iPhone list:
1) Local databases such as SQLLite are"not traditionally" implemented as a server on other mobile platforms either (they also use various file-oriented DB's).
2) Very soon that single fixed size assumption may well be inaccurate.
3) The App is in a sandbox but can write to some areas outside of the sandbox via API calls (for instance, photo library or address book).
5) That number varies between 3Gs and 3G/2G/Touch (the older models have half the memory)
6) Monotouch is available, but I'm not sure there's anything that far along for Java based iPhone development. There's also a Flash compiler from Adobe.
Basically if you are thinking cross platform, memory/screen size/system access/common databases will all differ - so the whole thing boils down to language AND LIBRARIES. And that is where you really have an issue with a cross-platform approach, because the libraries are very different per system... in the end you MIGHT be able to share data structures and some pure data processing code across the platform binaries, with very different GUI code for each system. But is it really worth it to constrain the development of each client?
On a side-note Blackberry is Java-based, so it presents yet another hurdle for such an attempt.
If you really want to see what cross platform ends up looking like, take a look at the codebase for Waze - a cross-platform open source navigation app:
http://www.waze.com/wiki/index.php/Source_code
Client source for iPhone and Windows Mobile lives there.

Recommend good lightweight Task Managment applications for PC

Can anyone recommend a good task management application for PC? I used to use Palm Desktop and loved it but now I use a Black Berry and Outlook at work, however I find Outlook's task functionality fairly painful to use. Going back to Palm Desktop could work but I really just need something that does tasks management very well and is not too heavyweight.
On my Mac at home I've been looking at OmniFocus which seems fairly decent but it is a Mac only application and I really need something for the PC I use at work.
Google Calendar supports tasks (new feature, very bare bones), or you can use the RememberTheMilk site/gmail add-on. It's has all the basic features you could ever want and it's simple to use. If you use an iPhone or the gPhone you can access the website in a 1st class experience from both your desktop and your pocket.
Here is a very simple and intuitive tree based task list.
http://www.codeproject.com/KB/applications/todolist2.aspx Comes free with source code and many plug-ins
I quite like Life Balance from Llamagraphics. I used to use it on my palm and then treo.
But it also works on Mac and PC (and IPhone). I don't think there is a blackberry version.
It can be used as a basic todo list, but it also has some nice outlining features and a nice way of setting priorities. The IPhone version is still a bit clunky compared to the Palm version, but it's usable. All the versions can synch with each other and on the Mac it has some synch capability with iCal.
I've actually started using Evernote and a Moleskin Journal for tracking what I work on from day to day. Although Evernote is a note taking application it is general enough and has tags which seems enough for general task management.

Debugging j2me on a Device

Has anybody had any success ever attaching a debugger to a tethered device? I am able to debug my j2me application in the emulator, but have a lot of trouble sorting out phone-specific problems when they come up. The phone I'm using is a Nokia N95, but ideally the debug process would work on any phone.
Is this possible? If so does anyone have steps they've used to set it up?
Sony Ericsson supports debugging on ebery phone at least since K700, this is done by using KDWP. UIQ 3 communicators also can be debugged the same way.
By the way, it the latest phones by SE it is even possible to monitor memory consumption and CPU profiling. So if you wanna debug your apps on real phones, I would suggest also using SE phones, they are really good at it. I use Netbeans, and it works without any problems with any SE phone.
Motorola phones support a debugging interface called KDWP(Motodev registration required).Their MIDway tool can also be useful for getting debug trace information from a midlet running on a device.
As other stated, on device debug is something that strictly depends on manufacturer's will and often it's nearly impossible. However, i can address you to Gear Java Mobile Framework that gives you the opportunity to use an on-device debug console to print your messages and thus read phone specific issues. If you need some explanation on how to use it, take a look to this tutorial
Unfortunately this is not generally possible. Some makers (like Sony-Erricson) support this on some of their phones but not all. I am not sure if there is on-device-debugging tool for N95 but you can use Nokia's emulator which should be pretty close to the device. The new Java ME SDK comes with promise of real ODD in near future. But it still very much depends on OEM cooperation.
I find a good debugging method is to control a string value which gets painted on top of everything else when it is not null. This will work anywhere, though obviously isn't ideal, but can be used to catch Exceptions, print values etc. Of course you're limited to the small screen, but in theory you could even code some scrolling functionality.
Some people use RMS logging but personally I could never be bothered.
As others have said here, Motorola have Midway which I think is great.
Others are correct here in that on-device debugging is very much device specific. I haven't done anything with Series 60, but at least on Series 40 phones, I had to open up a CommConnection and write out to it in order to see much of anything going on. The device emulators are again a mixed bag, but you usually can get 90% of the way to your application working on them and can usually get your debugger connected to them. If you aren't making use of any of the hardware on the phone, that should get you most of the way there.
I've used the Blackberry tools on occasion to debug J2ME applications (without using RIM APIs) but it is very slow and still is only emulation, not the actual device (but it sometimes does help to shake the odd thing out). I agree it is frustrating when you have something running on an emulator only to find that it doesn't run on the hardware.
You can not debug step by step like android or other SDK.
In J2ME you can trace the error by adding the log statement in the code and add another midlet and display that log screen in that midlet.
Example: add Log.p("Log statement.....");
LogMidlet.java
// Add the following line in the startup method of this midlet.
Log.getInstance().showLog();
This way you can somehow track the error in j2me.
I think it is possible to add additional debugging information on preprocess step. Like this:
public void myMethod() {
Debug.traceMethod("myMethod");
int var = 1;
Debug.newLine();
var++;
Debug.newLine();
...
}