BlackBerry ButtonField not found - blackberry

I have a Blackberry application. This application downloads then plays a video file.
I am trying to switch to a model where the video is bundled in with the application inside the res/media/ folder.
The only chane in the application was making the input stream that gets displayed on the Player come from the file in res/media/ rather than the file stored in the media storage of the device. I did not change anything else related to any View components.
But now when I try to start the application I get an error dialog that says:
"Error starting [myAppName]: Class 'net.rim.device.api.ui.component.ButtonField' not found."
Since I did not change anything related to a ButtonField why would I be getting this error now that the video is bundled in?
By adding the video file it made it so that my project had many additional files that needed to be signed. They all get signed correctly. But when the application is launching I get messages in the console that say something like
CMM: [MyAppName] no sig from 0x33
which I did not get when the video wasn't bundled with the resources. Is this somehow related to my problems?
My application does not even get a chance to begin. I have log statements at the beginning that I never see. It fails before it even begins.

The error you are receiving indicates that your app is too large. In my experience there is a practical limit of around 5MB for an application, any more than this and you will run into these strange 'class not found' errors.
Try adding a smaller video file to see whether the problem goes away.

CMM: [MyAppName] no sig from 0x33 means that [MyAppName] has not been signed with a code signing key identified by 0x33. This key is only available to applications produced by RIM, and can be ignored by your application. Dont worry about it.we see it all the time.
I suspect you are trying to test your app in the emulator. try your app in device and see what happens.
Also i dont think its a good idea bundling a video in your app as it will increase the size of the app significantly. You can download the app on startup and save it in filesystem. There is a limit of about 15 MB for a blackberry app. check this http://supportforums.blackberry.com/t5/Testing-and-Deployment/The-maximum-size-of-a-BlackBerry-smartphone-application/ta-p/1300209

Have you changed the JDE you use in this project? Newer JDEs are not compatible with previous OS. I have encountered same problem before, some UI components are not available after I changed JDE to 4.7.

Related

All third-party Audio Units are missing

In my iOS AU host application, I am using AVAudioUnitComponentManager.components method to retrieve the list of available Audio Units. It works as expected most of the time. However sometimes it returns only Audio Units created by Apple, and none of the third-party Audio Units that are installed on the device. The interesting thing is that, if after I encounter this issue in my app I go to GarageBand and open the Audio Unit list there then when I return to my app, all the third-party AUs are present. So I am wondering maybe some other initialization should be done before calling AVAudioUnitComponentManager.components method which GarageBand is doing and I also should do in my app.
Any suggestions?
As is turned out, the problem was happening because my app did not have an entitlements file with the “Inter-App Audio” capability key. After adding this capability to my project target in xcode the problem was fixed.

video calling in iPhone application

I'm new to iPhone.I'm developing an application which contains video calling facility, For reference I have downloaded sample from
https://github.com/opentok/OpenTok-iOS-Basic-Tutorial
I have added OpenTok framework. I'm running it im simulator but the application crashes with error
Program received signal:SIGABRT.
It is not being able to establish connection
can any one suggest me how can i do this using other framework?
Thanks
Without any logs, I can only guess what the problem might be. It would be more helpful if you posted some logs.
Like 0x7ff... said, OpenTok needs a device to work properly because it needs the camera to be able to publish
invalid credentials should not be causing crashes, but you should still make sure your sessionId and token are valid. Keep in mind that tokens expire after 24 hours unless specified otherwise
Make sure you are deploying to a device that is supported
If you are cloning from the basic tutorial, simply downloading the zip file will not work because the sdk is not downloaded with it. You would have to download the OpenTok SDK and place it in the appropriate folder.
Alternatively, you can run `git clone --recursive https://github.com/opentok/OpenTok-iOS-Basic-Tutorial' in your terminal.
These are all the reasons I can think of

Cache manifest on ipad

I have a ipad. I make a website with html5 application storage. With a manifest file. The manifest is working on the new ipad 2 and all the web browsers. But it is not working on the ipad 2 with a lower ios version.
The problem is. When i loaded the page. The manifest file is caching the website. I turn airplane mode on. Now i can used the website without a internet connection.
But the problem is. When i now reloading the page. I get a error, that i need a internet connection to view the page. How can i fix this. This problem is in safari.
I have been working through similar issue.
I have an iPad 1 so not exactly the same platform, and I know this sounds a bit "did you turn it off and on again" but you need to make completely sure there are absolutely NO errors in your cache manifest. If you are using a file in your app that is not listed in the cache manifest file, your app will try and function without the missing file. This is particularly relevant when using multiple js files. Anything missing (an easy thing to do when you are in rapid development) will crash your app offline.

BlackBerry - JavaLoader error when using the "screencapture" option [duplicate]

I am looking for a screen shot tool that I can use to capture screens from my BlackBerry Tourch 9850. I have tried using the included JavaLoader utility with my SDK but I receive "Retrieving screen <active> data ... Error: buffer too small" errors. I have also tried using the BBScreenShooter v1.67 (I think this is the latest version) but it fails to capture the screen, then crashes.
I need the tool to create a user manual for some software we're developing for BlackBerrys and, as they say, "a picture is worth a thousand words."
If nothing else, perhaps someone knows how to address the small buffer problem with JavaLoader?
With the help of Mark Sohm (thanks Mark ... your help is very much appreicated) the solution was discovered: You have to use the JavaLoader from the v7.0 SDK on devices that have the higher screen resolutions ... the Tourch 9850 is 800 x 480. Versions 6 and lower do not have an implementation that will support the larger buffer required to grab the addition bytes - makes sense.
Although I have not tested it yet it's certainly possible that the BBScreenShooter would work also knowing this .... BBScreenShooter uses JavaLoader to handle the "heavy lifting" with the handset.
Try this way:
Create an application that runs on device startup and listens for GlobalEvents (via GlobalEventListener implementation)
Run this application in JDE or Eclipse and monitor what global events are fired when you press convenience keys on your blackberry device. Write event guids down and find out a guid that corresponds to a convenience key, when it is pressed.
Modify the application created at step 1 to use Display class and invoke screenshot() method of this class when a convenience key is pressed.
As screenshot has been created save it to the device filesystem via BlackBerry FileConnections API. After that you can copy these pictures to your desktop computer when device is connected via usb-cable.
That's it. This application will allow you to solve your task. And may become an additional product for your company, if you add some settings to setup convenience key(s) and path to save created screenshots on device memory/media card.
I'm not sure how to actually fix your problem but alternatively you could just run the application in the device simulator and get the screenshots from there. Run the simulator and go to "Edit" > "Save LCD Snapshot".

iOS: Did Apple disable HTML5 offline capability for web apps saved to the home screen?

I've been doing lots of work in getting a few web apps to work offline on iOS using the HTML5 manifest. I've ran across the typical problems everyone else has and fixed them and everything seems to be working fine—except in the case where I save the web app to the desktop on my iPhone 4.
If I do this and then enable airplane mode, I get the following alert when trying to access the app via the home screen: "your-app-name could not be opened because its not connected to the internet." Accessing the app via Safari browser works fine while offline.
If anyone knows if this is an error on my part, or even the slim possibility of a work around, do tell.
Even downloading the new Financial Times web app (very well done with extensive localStorage support) results in an error when accessing it offline from the home screen.
Technical specs: Running iPhone 4 with iOS 4.3.3 (but also saw the issue in 4.3.2)
After reading the comments (especially Rowan's) I ran more tests and found the answer:
No, Apple did not disable HTML5 offline capability for web apps saved to the home screen, it works - for the most part. There is a bug that will make it not work. It doesn't seem to have anything to do with your manifest setup (unless perhaps it downloaded a bad manifest or incomplete manifest at one point.) We don't know how widespread it is but the fix is to clear your Mobile Safari Cache.
Here's the steps:
Close the web app (make sure its not sticking around in the background).
Cleared Mobile Safari cache: Settings > Safari > Clear Cache
Reopened the app (for caching).
Close the web app again (make sure its not sticking around in the background).
Enabled "Airplane Mode": Settings > Airplane Mode
Reopened the app.
It should now work offline. If it doesn't then its probably a separate manifest issue in your app. Looks like a weird bug with the browser cache - or perhaps the cache was completely full? Who knows, but that's the answer. Thanks guys.
iOS seems to be very sensitive to load issues when offline.
I was getting your "could not be opened" error when offline on a page I was working on. The problem turned out to be that the page created an iframe pointing to a site that didn't have an AppCache. Removing those iframes fixed the issue.
In my case, I handled it using window.navigator.standalone which tells you whether you're running in an iOS homescreen app. The code looked like this:
if (!navigator.standalone) insertFrames();
add this to your html:
https://web.archive.org/web/20170201180939/https://jonathanstark.com/blog/debugging-html-5-offline-application-cache?filename=2009/09/27/debugging-html-5-offline-application-cache/
I found it massively useful - even though I've created my manifest file and compared it to other people's manifests this JavaScript debugging script gave me the clue I would have never found otherwise. I apparently had syntax error in my manifest ... long story short I had to remove everything and add the paths to each file/image one by one. The end result was the same however it worked... how weird!!! does whitespace / comments affect the syntax of the file?

Resources