FR27734:Support export EXT1 to SIM card up to 40 digit.
EF_ADN alone has the capacity to store SIM contacts only upto 20 digits. If more than 20 digit SIM contact has to be stored, then EF_EXT1 has to be used. The last byte of EF_ADN points to EF_EXT1 record identifier. So the additional/remainder digits of a SIM contact has to be stored in EF_EXT1 file. Fix: Inorder to find the free record in EFEXT1 file to store the additional data, maintain a Ext record list of flag in AdnRecordLoader to indicate free/used EFEXT1 records. While loading all adn records, the Ext record list is updated based on whether particular ADN has the EXT1 record identifier. In AdnRecordCache while updating any ADN record, pass and update the free EXT1 record if contact is greater than 20 digits. If the update of free EXT1 record is successful, then store the EXT1 record identifier in the last byte of EF_ADN. In AdnRecord, added code to build the additonal data once the contact length is greater than 20. Change-Id: I582142ab5f36b753d67160020d429ca2cbc230d7
Loading
Please register or sign in to comment