I'm trying to write a program that change default SIM card on my dual-sim android, what functions do I need for this?
The Android SDK has no support for manipulating multiple SIM cards. You will need to contact the manufacturer of your device and ask them if they have an SDK add-on or something that enables you to work with multiple SIM cards.
If your phone is based on Mediatek, there is a way to do what you want to. Have no doubt about that.
Dual SIM Switch Widget (I've developed it) is able to control SIM states on most dual SIM devices with Mediatek's boards.
Take a look at this page:
http://labs.mediatek.com/site/global/developer_tools/mediatek_android/api_references/mediatek-sdk3/reference/com/mediatek/telephony/TelephonyManagerEx.gsp
Related
Thank you for review my question.
Now i have problem to send sms from my mobile. i could not access to send sms from both sim card but only primary sim card to use send sms.
Question: How can i use secondary sim card to send sms?
Question: How to get dual sim card information using TelephonyManager in all android version?
I got only one sim card information.
Thank you.
Multiple SIM API is supported only from Lollipop. The phones, which have more than 1 sim, and run on older Android versions have custom ROMs(firmware), edited by their manufacturers to support multi-sim. All they have different API, which is possibly not accessible for third-party apps like yours (only system apps can use it). So if you want something like that to work on all devices, you will have to get the ROMs of all devices, decompile it, and see how the manufacturers modified it. Than you will have to implement different ways to do that for every phone model.
So in other words - it's impossible.
I am developing application which calculates data and voice usage from user's android phone.
Issue I am facing is differentiating this data according to numbers in dual sim phones.
(e.g. If I make call from SIM 1 then voice usage should be mapped against corresponding number)
I have searched in SO for this kind of code snippet but had no luck.
Is this possible in Android programmatically by any means ?
If yes, then what could be best possible solution for this.
There is no support for dual slim as for today. Thats mean - there is no any official public API available.
Issue 14799: Dual SIM cards supporting
I carry two phones around with me all the time.
Is there a way I can virtualize my second SIM card to my Android phone?
When I virtualize, my first SIM card is still plugged into my Android phone but my second SIM card is no longer plugged into any phones, but it is virtualized on my Android phone.
When I get call or messages from my second SIM, my Android phone will receive it cause my second SIM card is virtual.
So is there any solution available out there like that?
In, short no. Even if you can clone the card, related functionality is the baseband software (AKA radio firmware, etc.) and proprietary Android drivers, so you can't modify them to use your virtual card. You might be able to find a phone that has two SIM slots, but I haven't heard of one with Android.
The virtualization might require to copy the SIM card which is very hard to do.
And right now this technique is kind of tricky, you can look into this scholar article Virtualisation of a SIM-Card using Trusted Computing
I have a android phone and want to have two sim cards active at a time. But my phone does not support dual sims.
I was wondering whether it is possible to create a program that will copy the sim card on phone memory and simulate to phone as if there is real sim card. In this way we can have virtually any number of sim cards plugged into any phone.
I have following queries before I start programming any of such thing
Is this possible ?
I googled about inner working on SIM card I found out that the communication between antenna and mobile happens using some serial number generated by SIM and this serial is matched with the signal from antenna. Anyone has good links to understand the working on SIM cards?
Where do I start with? I have little understanding of GSM protocol. Do I need to know about GSM?
SIM card cloning is technically possible, yet even if you manage to have your SIM card copied you will not be able to write a program to simulate SIM card, as SIM card is handled in hardware and your app will not have access to that hardware. Also it is not just a matter of having 2nd SIM. Dual phones require different hardware approach, different logic in the system logic and firmware etc, etc. So unfortunately "Look for real dual phone" is the much cheaper approach here.
The SIM card reading and managing is not part of android software stack. This is part of Protocol stack which is run on a separate processor.
So this will not be possible. So even if you root a device to give android the SIM values, the Communication Processor that does protocol handling will not have updated values
I do not have a real android device. I completely depend on emulator. So, for the sim contacts, changing sim cards and other purposes regarding sim, i want a simulator for SIM. I didn't find any thing regarding this in our default emulator. Can anyone please help me with any idea on this and any links to third party SIM simulators for android emulator. Thank you in advance..
May this help you:
Buddy in Document it is said that Emulators are supported with simulated SimCard..
"A GSM modem, including a simulated SIM Card" More Information
And There are some patches available which allows sim card support in emulator using standard USB PCSC reader...
Here are some links which may guide you through..
http://simhacks.github.io/android-emulator/
http://blog.codepainters.com/2010/11/20/android-emulator-patch-for-configurable-imei-imsi-and-sim-card-serial-number/
I had a similar problem in which I needed to obtain contacts from my SIM to test with my application. Furthermore to my understanding the only solution I resulted in was buying an android mobile and performed tests using that as I could not find such a SIM emulator.