Доступ к Blackberry "Отправить" - PullRequest
       2

Доступ к Blackberry "Отправить"

0 голосов
/ 11 августа 2011

Я хотел бы получить доступ к меню «Отправить», в котором представлены все, очевидно, зарегистрированные получатели этого действия.
На моем телефоне это меню содержит * Электронная почта * PIN * SMS * MMS * BBM Контакт

Как я могу сделать это с Java?

РЕДАКТИРОВАТЬ: Для платформ BB OS 4.0+.

Вот что я использовал до сих пор, переопределяя метод getMenu.
В getAppName () в симуляторе я получаю такие значения, как: * net_rim_bb_sendusingbluetoothapp * net_rim_bb_sendasemailapp * net_rim_bb_sendtomessengercontactapp

Так что я ожидаю использовать с этим некоторые String.replace (), но когда я буду использовать1011 *

reg.invoke(inv); 

позвоните ниже, хотя почтовое приложение запускается, никакие аргументы, такие как тема или содержимое сообщения, не отображаются.Как мне установить это?

Кроме того, для setData () я просто передаю случайную строку.(Я почти уверен, что именно здесь я должен установить более значимые вещи, но я не знаю что).

public Menu getMenu(int instance) {
        Menu menu =  super.getMenu(instance);

        final Registry reg = Registry.getRegistry(CLASSNAME);
        ContentHandler[] handles = reg.forAction(ContentHandler.ACTION_SEND);


        for (int i=0;i<handles.length;i++)
        {
            String name = handles[i].getAppName();
            final Invocation inv = new Invocation();
            inv.setURL(sendToUrl);
            inv.setResponseRequired(false);
            inv.setType(handles[i].getType(0));
            inv.setID(handles[i].getID());
            inv.setData(sendToUrl.getBytes());
            inv.setAction(handles[i].getAction(0));
            inv.setArgs(new String[]{sendToUrl});



            MenuItem mit = new MenuItem(new StringProvider(name), i, i)
            {
                public void run() {
                    try {
                        reg.invoke(inv);
                        //inv.open(false);
                    } catch (SecurityException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    } catch (IOException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    }   
                }
            };

            //ContentHandlerMenu contentHandlerMenu 
            //= new ContentHandlerMenu(inv, reg, "Send to "+ name, i,i);

            //menu.add(contentHandlerMenu);
            menu.add(mit);
        }
        return menu;

    }

1 Ответ

4 голосов
/ 11 августа 2011

Это то, что вам нужно? Отправить Меню API . Я нашел это в поиске в Google ... Это было не слишком сложно.

...