Developing a BlackBerry10 App with Cordova 3.0.0

------------------------------------------------


So, I started by downloading all the appropriate developer SDKs from BlackBerry. Though in retrospect I suppose I only needed the webworks one.

After downloading and installing those. I followed the instructions ensuring that I had nodejs installed, and performed an installation of cordova. I performed the create app which went fine. I decided first to test run iOS given that I live in an OSX world. I added iOS, made a couple tweaks and ran it in the simulator flawlessly. Awesome experience.


On to BlackBerry. I first attempted to add the blackberry platform. It responded with no platform. Since I knew a handful of stuff that Gord had been working on for BlackBerry builds I attempted, qnx, playbook, bb10, and then blackberry10 that seemed to be the golden key. After getting the platform set, I decided to experiment a bit.


I ran the build, and understood how it pulled over the www folder data to the platforms. I had a couple issues with this though. It seemed that any custom writing I had done in the platform itself (blackberry10) was overwritten, including the config.xml which meant if I did an upgrade to the www directory even changed the file config.xml with new name etc it overwrites the custom stuff I set in the blackberry10 platform, with default values of 'WebWorks Application' etc.


So I set some details such as name and author and then added some text to the index.html page of the www directory for the blackberry10 platform directory. Then I decided to test run it on a blackberry device.


Since I had previous experience doing this, I got my debug tokens and got all that set by following the instructions on BlackBerry's website. This hit a snag in that it appeared I had used a short password. BlackBerry's website says that the csjpin must be between 6-10 alphanumeric characters. But it then turns out that WebWorks needs at least 8 alphanumeric characters. That was a pain, and lots of wasted time but I got through that.


I didn't even bother installing the blackberry emulator since my previous experience with it sucked, I decided to try it on a real device. I had all the tokens in place and attempted to do a build with the instructions on the blackberry website. That failed with no signing password provided statement. I did some digging very confusingly since I had set all those details with my signing keys etc according to the blackberry website. I messaged the mailing list in the end, where Fil helped me out by suggesting I run the cordova run command.


cordova -d run blackberry10


I had no idea there was such a command since I had been following the CLI instructions on Phonegap's website, and didn't see that anywhere. I attempted that and it failed same statement of the no signing password provided. I was all the more confused, read everything scoured stackoverflow, and finally posted again to the mailing list, and got a response from Jeffrey Heifetz talking about the %home%/.cordova/blackberry10.json.


Just before I got Jeff's response I had decided to try upgrading my version of Cordova. According to:


cordova -v


I had cordova 3.0.0rc1 which was not giving me any information about the blackberry10.json file I had to modify. After performing:


sudo npm update -g cordova


It stated I now had 3.0.0


I attempted the cordova -d run blackberry10 again and this time I saw the %home%/.cordova/blackberry10.json statement. I went to the file immediately and added the "keystorepass" that I had used in my debug token. Called the run command and bam the app uploaded to the device. I was elated.


I can honestly say I am stupefied as to how awesome the CLI is for Cordova everyone! I was amazed at how fast I could get something put together. However, documentation is still lacking, in particular with blackberry10. It was quite confusing for a relative outsider. I'm happy to fork the documentation and work on any inconsistencies/ issues I can help with.


On 20 July, 2013 at 9:17:46 PM, Filip Maj (f...@adobe.com) wrote:

Yeh Matt if you would be so kind as to summarize your experience then
certainly we can formalize as issues and make sure to fix in the coming
weeks so it's not as difficult. Appreciate you working through it!

On 7/20/13 9:31 AM, "M. Lantz" <mattla...@gmail.com> wrote:

>Thanks Jeff, I finally caught on to that after upgrading my Cordova. I
>was on 3.0.0rc not 3.0.0 and noticed the the comments that indicated
>that. Thanks though.
>
>M. Lantz
>
>On 2013-07-20, at 2:17 AM, Jeffrey Heifetz <jheif...@blackberry.com>
>wrote:
>
>> You haw no signing key provided so it's skipping debug token
>>generation. You need to either add a key store pass value to your
>>%home%/.cordova/blackberry10.json or use the platform level cordova/run
>>script with -k and your key store pass.
>>
>> Sent from my BlackBerry 10 smartphone on the Rogers network.
>> From: Matt Lantz
>> Sent: Friday, July 19, 2013 9:02 PM
>> To: dev@cordova.apache.org
>> Reply To: dev@cordova.apache.org
>> Subject: Re: blackberry10 build
>>
>>
>>
>> Still having issues with this one Fil. Not sure what I'm missing.
>>
>> Thanks to everyone who can offer some advice. I feel like such a n00b
>>with this situation.
>>
>> I'm following the cordova cli instructions but I get this error:
>>
>>
>> jarvis-3:cordova mlantz$ cordova -d run blackberry10
>>
>> cordova library for "blackberry10" already exists. No need to download.
>>Continuing.
>>
>> Wrote out BlackBerry application name to "Yo"
>>
>> Wrote out BlackBerry package name to "com.example.hello"
>>
>> Wrote out BlackBerry version to "0.0.1"
>>
>> Calling plugman.prepare for platform "blackberry10"
>>
>> Preparing blackberry10 project...
>>
>> Processing configuration changes for plugins.
>>
>> Iterating over installed plugins: []
>>
>> Writing out cordova_plugins.js...
>>
>> Running app on platform "blackberry10" with command
>>""/Users/mlantz/Programming/PhoneGap/yo/platforms/blackberry10/cordova/ru
>>n" --device" (output to follow)...
>>
>> [WARN] No signing password provided, will omit debug token generation
>>
>> [BUILD] Populating application source
>>
>> [BUILD] Parsing config.xml
>>
>> [BUILD] Generating output files
>>
>> [WARN] Failed to find debug token
>>
>> [INFO] Info: Package created:
>>/Users/mlantz/Programming/PhoneGap/yo/platforms/blackberry10/build/simula
>>tor/DEFAULT_BAR_NAME.bar
>>
>> [WARN] Failed to find debug token
>>
>> [INFO] Info: Package created:
>>/Users/mlantz/Programming/PhoneGap/yo/platforms/blackberry10/build/device
>>/DEFAULT_BAR_NAME.bar
>>
>> [BUILD] BAR packaging complete
>>
>> [INFO] Info: Sending request: Install and Launch
>>
>> [INFO] Info: Action: Install and Launch
>>
>> [INFO] Info: File size: 8096383
>>
>> [INFO] Info: Installing default.app.id.testDev_ault_app_id417e7455...
>>
>> [INFO] Info: Processing 8096383 bytes
>>
>> [INFO] actual_dname::
>>
>> [INFO] actual_id::actual_version::result::failure 881 application
>>author does not match debug token author
>>
>>
>> Error: An error occurred while running the blackberry10 project. [WARN]
>> No signing password provided, will omit debug token generation
>>
>> [BUILD] Populating application source
>>
>> [BUILD] Parsing config.xml
>>
>> [BUILD] Generating output files
>>
>> [WARN] Failed to find debug token
>>
>> [INFO] Info: Package created:
>>/Users/mlantz/Programming/PhoneGap/yo/platforms/blackberry10/build/simula
>>tor/DEFAULT_BAR_NAME.bar
>>
>> [WARN] Failed to find debug token
>>
>> [INFO] Info: Package created:
>>/Users/mlantz/Programming/PhoneGap/yo/platforms/blackberry10/build/device
>>/DEFAULT_BAR_NAME.bar
>>
>> [BUILD] BAR packaging complete
>>
>> [INFO] Info: Sending request: Install and Launch
>>
>> [INFO] Info: Action: Install and Launch
>>
>> [INFO] Info: File size: 8096383
>>
>> [INFO] Info: Installing default.app.id.testDev_ault_app_id417e7455...
>>
>> [INFO] Info: Processing 8096383 bytes
>>
>> [INFO] actual_dname::
>>
>> [INFO] actual_id::actual_version::result::failure 881 application
>>author does not match debug token author
>>
>>
>> at /usr/local/lib/node_modules/cordova/src/run.js:49:23
>>
>> at
>>/usr/local/lib/node_modules/cordova/node_modules/shelljs/shell.js:1707:7
>>
>> at ChildProcess.exithandler (child_process.js:641:7)
>>
>> at ChildProcess.EventEmitter.emit (events.js:98:17)
>>
>> at maybeClose (child_process.js:735:16)
>>
>> at Socket.<anonymous> (child_process.js:948:11)
>>
>> at Socket.EventEmitter.emit (events.js:95:17)
>>
>> at Pipe.close (net.js:466:12)
>>
>> jarvis-3:cordova mlantz$
>>
>> On 19 July, 2013 at 5:17:55 PM, Filip Maj (f...@adobe.com) wrote:
>>
>> Instead of using the ./blackberry-deploy script yourself, why not use
>> `cordova -d run blackberry10` from within the project if its generated
>>by
>> cordova-cli?
>>
>> The cordova-blackberry scripts (which cordova-cli consumes) will deploy
>>a
>> new debug token to your device every time. You can do the same by
>>running
>> `./cordova/run --device` from within the corova-blackberry10 app project
>> dir
>>
>> On 7/19/13 2:10 PM, "Matt Lantz" <mattla...@gmail.com> wrote:
>>
>>> Thanks a bunch Filip.
>>> Anyone else know what's up with this error I get when trying to deploy
>>>an
>>> app to my Q10?
>>>
>>> jarvis-3:bin mlantz$ ./blackberry-deploy -installApp -password ######
>>> -device ###.###.##.### -package
>>>
>>>~/Programming/PhoneGap/yo/platforms/blackberry10/build/device/DEFAULT_BA
>>>R_
>>> NAME.bar
>>> Info: Sending request: Install
>>> Info: Action: Install
>>> Info: File size: 8096802
>>> Info: Installing ...
>>> Info: Processing 8096802 bytes
>>> actual_dname::
>>> actual_id::
>>> actual_version::
>>> result::failure 881 application author does not match debug token
>>>author
>>>
>>>
>>> I don't know what I'm missing. :(
>>
>>
>> ---------------------------------------------------------------------
>> This transmission (including any attachments) may contain confidential
>>information, privileged material (including material protected by the
>>solicitor-client or other applicable privileges), or constitute
>>non-public information. Any use of this information by anyone other than
>>the intended recipient is prohibited. If you have received this
>>transmission in error, please immediately reply to the sender and delete
>>this information from your system. Use, dissemination, distribution, or
>>reproduction of this transmission by unintended recipients is not
>>authorized and may be unlawful.

Reply via email to