Forums | developer.brewmp.com Forums | developer.brewmp.com

Developer

Forums

Forums:

I'm trying to start mobile shop from within an application (I already read the "Invoking MobileShop® From Third Party Applications"), but it doesn't work. Here's my test code:

clsID = ISHELL_GetHandler(pme->a.m_pIShell, HTYPE_BROWSE, "mshop");
if(clsID != 0)
{
DBGPRINTF("clsID=%d\0", clsID);
ISHELL_BrowseURL(pme->a.m_pIShell, "mshop:Search=foo");

else
{
clsID = ISHELL_GetHandler(pme->a.m_pIShell, HTYPE_BROWSE, "cmshop");
DBGPRINTF("clsID=%d\0", clsID);
if(clsID != 0)
ISHELL_BrowseURL(pme->a.m_pIShell, "cmshop:Catalog");

And here is the debug output:

04/28/05 10:51:48.143166 clsID=16846503 *dbgprintf* 225 4 1 1268 22413088
04/28/05 10:51:48.144083 ISHELL_AppStart 0 *dbgprintf* 229 4 1 1268 22413088
04/28/05 10:51:48.146333 OEM will not allow start... *dbgprintf* 169 4 1 1268

What am I missing? Am I trying to invoke correctly?
Thanks

In which handset you are trying this? In LG7000/8000 mobile shop search functionality does not work, however you can invoke mobile shop for a given item.

In which handset you are trying this? In LG7000/8000 mobile shop search functionality does not work, however you can invoke mobile shop for a given item.

Yeah, I should have posted the handset models.
This happens on both curitel 8900 and lg vx6000.
How do I find item download ID's? Only brew 3.x has an API for getting your app's ID. Also, where do i find the version of mobileshop on the handset? Is it the same as the brew version?

Yeah, I should have posted the handset models.
This happens on both curitel 8900 and lg vx6000.
How do I find item download ID's? Only brew 3.x has an API for getting your app's ID. Also, where do i find the version of mobileshop on the handset? Is it the same as the brew version?

mshop MIME type is for 1.1 devices, you probably want cmshop
To find the App ID, you can use ISHELL_GetClassItemID() in BREW 2.1+.

mshop MIME type is for 1.1 devices, you probably want cmshop
To find the App ID, you can use ISHELL_GetClassItemID() in BREW 2.1+.

I am also trying to implement this on the 7000/8000 and am getting an error in the brew logger that spits out:
OEM will not allow start...
my browse string is:
cmshot:ItemID=100
I also have tried search and catalog. am I doing something completely wrong here?
Any help would be appreciated. Thank you very much!
Ben

I am also trying to implement this on the 7000/8000 and am getting an error in the brew logger that spits out:
OEM will not allow start...
my browse string is:
cmshot:ItemID=100
I also have tried search and catalog. am I doing something completely wrong here?
Any help would be appreciated. Thank you very much!
Ben

I have now tried the 6100, 3200, 7000/8000, v710 and I get "OEM will not allow start..." every single time.. so any suggestions would be greatly appreciated. Thank you.
Ben

I have now tried the 6100, 3200, 7000/8000, v710 and I get "OEM will not allow start..." every single time.. so any suggestions would be greatly appreciated. Thank you.
Ben

If that's what your actual URL is, you misspelled cmshop.

If that's what your actual URL is, you misspelled cmshop.

what about my code snippet above? any comments?
The way it's written it will use mshop or cmshop as part of the URL depending on what GetHandler returns. Does this API only work on 2.1?

what about my code snippet above? any comments?
The way it's written it will use mshop or cmshop as part of the URL depending on what GetHandler returns. Does this API only work on 2.1?

HA! no no the actual URL has cmshop, but you certainly scared the crap out of me!

HA! no no the actual URL has cmshop, but you certainly scared the crap out of me!

RadikalEd wrote:what about my code snippet above? any comments?
The way it's written it will use mshop or cmshop as part of the URL depending on what GetHandler returns. Does this API only work on 2.1?
No, this definitely works prior to 2.1. I'd imagine that the mshop MIME type is still registered in 2.1, but MobileShop can't be started this way. Try just using a cmshop invocation.

RadikalEd wrote:what about my code snippet above? any comments?
The way it's written it will use mshop or cmshop as part of the URL depending on what GetHandler returns. Does this API only work on 2.1?
No, this definitely works prior to 2.1. I'd imagine that the mshop MIME type is still registered in 2.1, but MobileShop can't be started this way. Try just using a cmshop invocation.

So did you get this resolved at the end? I have been trying and trying and none of the 2.1 phones worked with any combination of the "cmshop" strings so far...any ideas?

So did you get this resolved at the end? I have been trying and trying and none of the 2.1 phones worked with any combination of the "cmshop" strings so far...any ideas?

I'm suspecting you have an implementation problem, because we haven't seen any problems on any 2.1 devices (other than the problems with search not being supported). Post your code and we can take a look.

I'm suspecting you have an implementation problem, because we haven't seen any problems on any 2.1 devices (other than the problems with search not being supported). Post your code and we can take a look.

The sample code provided at the beginning of the thread by RadiKid was what I used during test, i.e.,
int clsID = ISHELL_GetHandler(mApp.getIShell(), HTYPE_BROWSE, "cmshop");
if(clsID != 0)
ISHELL_BrowseURL(mApp.getIShell(), "cmshop:Catalog");
The above generates "ISHELL_AppStart 0" message.
I am running the above snippet on KX1 which is a 2.1 device.
Any ideas?

The sample code provided at the beginning of the thread by RadiKid was what I used during test, i.e.,
int clsID = ISHELL_GetHandler(mApp.getIShell(), HTYPE_BROWSE, "cmshop");
if(clsID != 0)
ISHELL_BrowseURL(mApp.getIShell(), "cmshop:Catalog");
The above generates "ISHELL_AppStart 0" message.
I am running the above snippet on KX1 which is a 2.1 device.
Any ideas?

I still can't get anything to run using any of the codes above on a 2.1 Device. I am using an Altel KX1 though. Does carrier matter? Should I use a Verizon handset?
Any information you can provide appreciated. Thank you.

I still can't get anything to run using any of the codes above on a 2.1 Device. I am using an Altel KX1 though. Does carrier matter? Should I use a Verizon handset?
Any information you can provide appreciated. Thank you.

Make sure you are not returning TRUE to EVT_BUSY. This will prevent the mobile shop from starting.

Make sure you are not returning TRUE to EVT_BUSY. This will prevent the mobile shop from starting.

HUZZAH!
That was it! I wasn't returning FALSE to EVT_BUSY.
Maybe that should be in the documentation for ISHELL_BrowseURL(), it seems to be a common oversight, since there is no mention of the fact that the function call will send the EVT_BUSY event to the calling app. Just a thought :D

HUZZAH!
That was it! I wasn't returning FALSE to EVT_BUSY.
Maybe that should be in the documentation for ISHELL_BrowseURL(), it seems to be a common oversight, since there is no mention of the fact that the function call will send the EVT_BUSY event to the calling app. Just a thought :D

EVT_BUSY will prevent your application from being suspended. There is a document in preparation that will better explain the procedure for invoking MobileShop.

EVT_BUSY will prevent your application from being suspended. There is a document in preparation that will better explain the procedure for invoking MobileShop.

Can we test this mobile shop invocation sample without going through BREW Distribution System? In other words would this work on a cable-loaded app? The answer is probably no since the cmshop doesn't yet have the correct item ID for the cable-loaded app when it attempts to query ISHELL_GetClassItemID()....
Anyone?

Can we test this mobile shop invocation sample without going through BREW Distribution System? In other words would this work on a cable-loaded app? The answer is probably no since the cmshop doesn't yet have the correct item ID for the cable-loaded app when it attempts to query ISHELL_GetClassItemID()....
Anyone?

you can test the invocation by using "cmshop:Catalog" it will just take you to the main page of the mobile shop. But at least you can make sure that your app handles the invocation correctly.

you can test the invocation by using "cmshop:Catalog" it will just take you to the main page of the mobile shop. But at least you can make sure that your app handles the invocation correctly.

Thanks RadikalEd. We've already tested cmshop:Catalog and confirmed that it works on the handset....I guess the only other way to confirm that cmshop:itemID=... works is to take a trip down to SD and perform the OTA testing....that sucks.

Thanks RadikalEd. We've already tested cmshop:Catalog and confirmed that it works on the handset....I guess the only other way to confirm that cmshop:itemID=... works is to take a trip down to SD and perform the OTA testing....that sucks.

hi isu800,
I am also trying to open the mobileshop using
ISHELL_BrowseURL(m_pIShell,"cmshop:catalog");
I am getting the message
ISHELL_AppletStart() 0
OEM will not allow start
I have tessted this on LG5235,LG6335 & Kyocera KX414 devices.
Please tell me how you invoke the mobileshop, have you use any other method other than this api?
Regards,
Vishal

hi isu800,
I am also trying to open the mobileshop using
ISHELL_BrowseURL(m_pIShell,"cmshop:catalog");
I am getting the message
ISHELL_AppletStart() 0
OEM will not allow start
I have tessted this on LG5235,LG6335 & Kyocera KX414 devices.
Please tell me how you invoke the mobileshop, have you use any other method other than this api?
Regards,
Vishal

please scroll up to see Max's post. That was the fix. Hope this helps.

please scroll up to see Max's post. That was the fix. Hope this helps.

hi isu800,
I have not use the EVT_BUSY event in the application. Still i get the same message. After that i use EVT_BUSY(even though there is no need) event and return false. still problem is as it is.
Is there any other setting for opening mobile shop?
Regards,
Vishal

hi isu800,
I have not use the EVT_BUSY event in the application. Still i get the same message. After that i use EVT_BUSY(even though there is no need) event and return false. still problem is as it is.
Is there any other setting for opening mobile shop?
Regards,
Vishal

hi,
Please help me. My problem is as it is........ :(
Regards,
Vishal

hi,
Please help me. My problem is as it is........ :(
Regards,
Vishal

Try reading this article:
https://brewx.qualcomm.com/bws/content/gi/common/appseng/en/knowledgebas...
The topic is slightly different, but the same principles apply.

Try reading this article:
https://brewx.qualcomm.com/bws/content/gi/common/appseng/en/knowledgebas...
The topic is slightly different, but the same principles apply.

Hi Jonathan,
I have already go through this document. Still I am getting the same messages,
ISHELL_AppStart() 0
OEM will not allow start
I have check the other(not from our's) appliations on the phone LG5235 which allow to start the mobileshop when the credit is over. This means that LG5235 supports the invocation of mobileshop.
Then why its giving me the message OEM will not allow start.
When I use the function ISHELL_BrowseURL(), my application not suspended.
The control remains at the same place.
Regards,
Vishal

Hi Jonathan,
I have already go through this document. Still I am getting the same messages,
ISHELL_AppStart() 0
OEM will not allow start
I have check the other(not from our's) appliations on the phone LG5235 which allow to start the mobileshop when the credit is over. This means that LG5235 supports the invocation of mobileshop.
Then why its giving me the message OEM will not allow start.
When I use the function ISHELL_BrowseURL(), my application not suspended.
The control remains at the same place.
Regards,
Vishal

Are you sure that you aren't returning TRUE to EVT_BUSY? Do you have a default case in your event handler switch statement where you return TRUE?

Are you sure that you aren't returning TRUE to EVT_BUSY? Do you have a default case in your event handler switch statement where you return TRUE?

hi mohlendo,
Thats great!!!!!!!!!!!!!!!!!
My problem is solved. I have not handle default case in the onevent.
when I handle it and return false then its working now.
Thanks for reply.
Regards,
Vishal

hi mohlendo,
Thats great!!!!!!!!!!!!!!!!!
My problem is solved. I have not handle default case in the onevent.
when I handle it and return false then its working now.
Thanks for reply.
Regards,
Vishal