Windows phone 8 init failure with IBM Worklight - windows-phone-8

I have a strange behaviour in my Windows phone 8 application based on Worklight.
it works locally but when I deploy it in the production environment sometimes it works and sometimes not. Obviously, the behaviour I have is that the app init success in the first launch, it doesn't work in the seconde launch, it works in the third launch, doesn't work in the forth launch ... one by one.
the difference between the development environment and the production environment is that the first one is running over HTTP and the seconde one is running ever HTTPS.
Notice that it works in the other environments (Android, iOS, BlackBerry)
Any help?

I figured out how to fix the problem.
So to explain, here, what I did:
Before calling WL.client.init, I added a procedure call first (It's like a fake call) and then I initialized the WL Client.
Obviously, It fixed my problem. I think calling a procedure does initialize the connection between the client and the server.
So when the client call WL.Client.init or WL.Client.connect, succeeds to reach the server cause the connection is already initialized.

Related

Remote Debugging won't connect

I sort of make shift followed this guide on how to setup remote debugging. Since I am using Adobe Animate to compile my app I assume it has done the majority of the build steps already as I get a similar screen described.
I don't understand though. Here I have port forwarding up on my router so that it goes to my PC. I have TCP port 7935 up and open. Windows firewall on or off doesn't seem to make difference. Windows firewall even prompted me to allow or deny fdb after I ran it. I can't get my phone to connect via remote debugging. I want to be able to send this to my client who is having issue with the app so I can see what's going on under the hood instead of relying on a giant sum of try/catch statements and screenshots. Any help?
I tried a dummy domain and it seems to know that it can't connect to it. When I try mine or my IPv4 it doesn't let me connect. It just freezes up the app.
I don't know whether it works or not in Animate CC, but it works via Flash Builder. I'm using Android real device and I have Android SDK tools installed on my PC
Yes, I have followed that tuts from official Adobe docs, but that doesn't work
First: Simply connect your device to your PC
Actually , you can debug your app remotely as long as your device has been connected with your PC. This step, doesn't necessarily requires FDB.
In my case , all I need was things like
adb connect 192.168.xx.xx:port
this will connect your Android device with your PC on your default network .
Second, set debug setting over network
You've done it in Animate CC, with addition you might want to check "install application on the connected device'
Third, just debug as usual
You can get all those debugging stuff including traces

Sikuli with jenkins setup for continuous integration

I have my test writtern in Sikuli. If I RDP into my Jenkins machine and have an active session then all sikuli test pass.
However, for overnight run, my Jenkins machine do get locked. I want to understand if anyone has encountered and solved this issue before. Thanks!
Note: I cannot leave my Jenkins slave unlocked due to security reasons.
It's a known limitation of RDP.
Two optional solutions:
install VNC Server (like UltraVNC), and run it as Windows service (make sure it is launched during Windows logon).
OR
Create a batch file that disconnects Remote Desktop, and use it instead of closing the RDP session with the regular X button. The batch command is:
%windir%\system32\tscon.exe %SESSIONNAME% /dest:console

Windows Store App Cert Kit Fails to Start

The Windows Store App Cert kit fails to start.
Normally the flow is:
Start App Cert Kit
Choose Windows Store Application
Choose App
Choose Certs to Run
Run Certs
Save results
Currently, it fails just before 'Choose App'.
I get this result:
I have tried uninstalling and reinstalling, installed all updates, running appcert.exe reset. All to no avail.
I think it may have to do with the same issue I get with the Windows Store app. I have 38 languages installed (our app supports all of them) and the Windows Store app doesn't like it. I've had to escalate with customer support repeatedly for this, and have not had it resolved properly. I wonder if the same issue applies here.
So I was unable to start the UI, but I was still able to run the appcert by manually calling it on the command line as described here. It worked fine. One thing to note is that between each attempt, make sure to run appcert.exe reset.

Application Error: Application Launch was not detected for application App

When I was validation my Windows Store App I got the following error:
Application Error: Application Launch was not detected for application
App. This could be because your application failed to launch
correctly. Please consider re-running the test and avoid interacting
with the application while tests are running.
What does this mean? The app will not validate.
I thought it was a bit weird and I couldn't find anything when I googled it but people who had almost the same problem as me, though rather than launching it was failing to sleep. This was just plain odd.
I tried to launch the app from Visual Studio 2012 just to prove to myself that it did start properly and for some crazy reason it didn't work. I usually test the game on my Local Machine rather than the Simulator but now, for some reason, it was set to the Simulator and I have been having problems getting it to start lately (the simulator).
I changed it back to the local machine and ran the tests again. This time it worked.
So, if you get this error it might be time to see if your simulator works and if not, have the Local Machine set as default to run with.

Detecting connection on Windows Phone 8 with Sencha+PhoneGap

I'm trying to detect whether a connection is available on my Sencha Touch+PhoneGap app that's running on Windows Phone 8. Problem is, any check I make (using both Ext.device.Connection.isOnline() from Sencha and navigator.network.connection from PhoneGap) results in the state of the connection when the app was launched. I do have ID_CAP_NETWORKING checked on WMAppManifest.xml, by the way.
So if I launched the app while there was no connection, Ext.device.Connection.isOnline() and navigator.network.connection will both always say that there is no connection, even if I get a connection while the app is running. If I launched the app while there was a connection, even if I lose the connection the calls will always say that there is a connection.
I have a hack for this (using simple ajax calls and seeing if they fail), but it's definitely not a great solution. Has anyone else encountered this problem? I have limited understanding of this part of mobile development and really don't even know where to start.