2012-10-06 18 views
5
Bir Sim Uygulama Kiti Applet geliştirmeye çalışacağım

cant ekran metni (aslında hiçbir şey) .. Birçok basit internet ortamında bulunan örnekler, ancak hiçbir başarı ..Sim Uygulama Toolkit - seçimi

sorundur; Menü girdim STK menüsünde geliyor, ancak onu seçersem hiçbir şey olmuyor .. EVENT_MENU_SELECTION etkinliğinde metni görüntülemeye çalışıyorum.

  • (Aslında .. alt öğeler de çalışmıyor, aynı zamanda metin, sms, USSD gösteren sadece) Ben geliştirmek ve yetkilendirme anahtarı ile bazı uygulamaları test etmek üreticisinden gerçek sim kartları var.
  • Android 2.3 NFC akıllı telefonlarda test ediyorum.
  • Uygulamayı SIM'e yüklemek için, okuyucu olarak ACR1281U ve Giesecke & Devrient JLoad 2.3.0 yükleyici olarak kullanıyorum.
  • Sim Toolkit'te varsayılan olarak bir menü girişi, iyi çalışıyor. İşte

benim örnek kod .. Umut herkes için, bir fikir .. (Belki bazı özel yükleme uygulamasının parametreyi yüklemek?) Önceden

sayesinde Kutschka

package proactive_cmd; 

import javacard.framework.*; 
import sim.access.*; 
import sim.toolkit.*; 

public class display_text extends Applet 
    implements ToolkitConstants, ToolkitInterface 
{ 
    private static final byte CMD_QUALIFIER = (byte)0x80; 

    private byte[] menuEntry = {'M','y','M','e','n','u'}; 
    private byte[] textBuf = {'H','e','l','l','o'}; 

    private ToolkitRegistry reg; 
    private SIMView gsmFile; 

    public display_text() { 
    //Get the GSM application reference 
    gsmFile = SIMSystem.getTheSIMView(); 

    reg = ToolkitRegistry.getEntry(); 

    reg.initMenuEntry(menuEntry, 
         (short) 0, 
         (short) menuEntry.length, 
         PRO_CMD_DISPLAY_TEXT, 
         false, 
         (byte) 0, 
         (short) 0); 
    } 

    public static void install(byte[] bArray, short bOffset, byte bLength) 
    throws ISOException 
    { 

    display_text dt = new display_text(); 
    dt.register(); 
    } 

    public void processToolkit(byte event) 
    throws ToolkitException 
    { 
    ProactiveHandler ph = ProactiveHandler.getTheHandler(); 

    if (event == EVENT_MENU_SELECTION) { 


     ph.init((byte) PRO_CMD_DISPLAY_TEXT, (byte) CMD_QUALIFIER, DEV_ID_DISPLAY); 
     ph.appendTLV((byte)(TAG_TEXT_STRING | TAG_SET_CR), 
        textBuf, 
        (short) 0, 
        (short) textBuf.length); 
     ph.send(); 
    } 
    } 


    public void process(APDU apdu) { 
    if (selectingApplet()) { 
     return; 
    } 
    } 

} 
+0

STK geliştirme setini nereden aldınız? Oracle'ın sayfasında bulabileceğiniz jcdk gibi açık mı? – jlanza

cevap

1

sahiptir STK komutlarını kullanmak için uygulamanızı doğru bir şekilde yüklemeniz gerekir. SIM Toolkit için INSTALL MAKE SELECTABLE komutunda CA etiketi olması gerekir. UICC araç setini kullanacak olursanız, EA etiketini kullanmanız gerekir. Tüm ayrıntılar için lütfen ETSI 102 226 standard'a bakın.

+0

Merhaba, tamam, seçilebilir hale getirdikten sonra, işe yarar .. Metni görüntüleyebilirim .. Sim.toolkit'i kullanıyorum ve Global Platform belirtimini okudum. Seçilebilir/kurulabilir, vb. Parametreler iyi, ancak kurulum tokenlerini (kurulum parametresinin son kısmı) anlayamadım. Bana bakar mısınız lütfen? Ve ikinci sorum, sim.toolkit'i kullanıyorum, uicc araç setini nasıl kullanabilirim, nereden indirebilirim? Teşekkür ederiz. – Kutschka

İlgili konular