How to simulate the status bar in Codename one? - notifications

I am currently trying to get a local notification to work on an example app. I was following the simple guide here and just copied its code to see it working:
https://github.com/codenameone/codenameone-demos/blob/master/LocalNotificationTest/src/com/codename1/tests/localnotifications/LocalNotificationTest.java
However, in the simulation, I cannot see any changes in the status bar. Is the status bar even simulated or just a static image? Do I have to build the app and send it to an actual device every time I want to test it? That would not only be tedious but also crunch on the available monthly builds.
Is there a setting in the simulator to activate this that I missed?
Thanks and best regards

Local notifications happen in the background which isn't supported by the simulator so this is something you will only see on the device. You can simulate the minimizing of the app (pause/resume) but the Codename One simulator is not a full mobile OS simulator.

Related

XCTest UI Record and Play - Simulator not updating UI

Apple released a new UI Testing framework 2 days ago during WWDC2015. I'm trying to write a test case and when I try to record the UI testing, to generate the scaffolding code, it looks the code is being generated, however the UI on the simulator is not actually updating.
i.e When I tap on a button, the code is generated to actually find the button and tap, but the button is not actually tapped simultaneously on the simulator.
So basically I'm not able to go to the next screen on the simulator, to actually proceed in the test case.
The WWDC session video showed an example of an iPhone app (Lister app). But I'm trying it on a iPad 2 app. Thats about the only difference.
Any clues about why this might be happening?
Wanted to check if there has been other instances of these before actually filing a Radar with Apple.
I was able to fix the issue.
The problem was, in the "deployment target" section in the main Application target, there are different columns for all the targets listed.
For the Application's UI test target, the target was set to iOS8.
Changed it to iOS9 and it started working.

Verifying toasts using Appium , and get server reaction to button clicks

i'm new to android automation testing and i recently started to work with Appium.
I use it for android native app automation.
I have 2 question -
is there a way to verify toasts?
the latest posts i saw which referred to this issue are from the mid of 2014
and i wanted to know if there's something new in this subject before i will find another tool to run my tests with (as i understand selendroid can verify toasts).
is there a way to catch the http request which my app sends to the server when i'm pressing a button, during the automatic test?
something like a listener which works in the backround and wait for clicks?
tnx
To verify toast messages you can use one of image recognition libraries. For ruby I use RTesseract together with image processor RMgick
Idea is simple:
make toast message to appear
take few screenshots
iterate over taken screenshots and look for text
You may play with image processing, to increase recognition quality.
Here you can find code snippet which I use in my framework: link

how to live view in Titanium?

My team have been developing Titanium in the past few months, and now we are facing a problem: when we make changes on the View code(change its font, its background or size) , it takes a long time ( about 1 minute ) until we see the result displayed on device. that is really a big waste of time.
I saw the TiShadow already, it's great, but it only support js code( like Alloy.createTableList... ), doesn't support the Alloy XML( I mean you can't see your changes displayed on the screen once change the .xml or .tss file )
I also checked 'forgedUI', but unfortunately it's just an UI design tool, and the bad news is its official website is shut down.
To reduce its compile time, I bought SSD disk for my team. The compile time indeed reduced from 60s to 40s. but it's still too long.
Is there any good tool that could make us debug the titanium faster? or how to reduce Titanium's compile time?
I am able to find following tools which are available for Titanium to reduce the time taken to test the application in device/simulator.
TiShadow : Most widely used and open source.
Rapiddev : Currently only for ios but under rapid development.
LiveView : Available with enterprise version of Titanium.
P.S : With TiShadow I was able to test changes made in tss/views along with controllers. Do monitor the terminal( from where tishadow command is triggered ) to see progress in re-compilation of code.
UPDATED at 2019-04-11: don't use titanium, use React Native or Flutter.
I was wrong.
tishadow allow you to "live view" your Alloy XML/style file when changes.
just use:
$ ti build --platform android --target device --shadow
nothing else to do, you will see your app will launch , and every code you change, your app will reload automatically.
no more "$ tishadow server", no more "$ tishadow apply" ....
really great !

Worklight persistent busy indicator

I'm working on a project using IBM Worklight and any time I build and deploy my project on any simulator or device, I have this busy indicator spinner in the middle of the screen. Its always there, on every page and its there in the ios, windows, web and android simulators as well as one android device we've tested on. Has anyone seen this before and if so how would I get rid of it.
Jquery-mobile was the problem, it was continuously displaying the indicator for seemingly no good reason. Deleting Jquery mobile fixed the problem
I already used the native worklight loading.It is very good and I tested it on different platforms, devices. But it is necessary to close it when you leave the function that opened it.
Example:
var busyInd = new WL.BusyIndicator ("content", {text: "Please wait..."});
function consult(){
busyInd.show();
//impl
busyInd.hide();
}

iOS 7 App Operations Running In Background; Saving a Video Recording In Background

I am currently trying to find the most efficient way to continue a method in the background of my app.
I am probably adding location/gps to my app soon, so I was considering using that flag to keep the app Active in the background. However, I do not want to add that flag yet because I want to post an App Update before I add the location functionality.
I know the exceptions;
Apps that play audible content to the user while in the background, such as a music player app
Apps that keep users informed of their location at all times, such as a navigation app
Apps that support Voice over Internet Protocol (VoIP)
Newsstand apps that need to download and process new content
Apps that receive regular updates from external accessories
Besides asking for a more generic idea then these ^, can someone explain the "external accessory" flag please? I am recording video from an outside device. However, I do not know what constitutes an "external accessory".
I also see that iOS7 has introduced new Multi-tasking functionality but I haven't seen any examples that I understand can someone also explain that? Maybe that is a viable solution?
Thanks in advance!