рдЖрдЬ рдореИрдВ рдмрд╛рдд рдХрд░реВрдВрдЧрд╛ рдХрд┐ рдПрдВрдбреНрд░реЙрдЗрдб рдУрдПрд╕ рдореЗрдВ рдореЙрдбреЗрдо рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рдХреИрд╕реЗ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХреА рдЬрд╛рддреА рд╣реИред рдпрд╣ рдЖрд▓реЗрдЦ рдкреИрдХреЗрдЯ рдбреЗрдЯрд╛ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ - GPRS, EDGE, 3G, рдЖрджрд┐ рдкрд░ рдиреЗрдЯрд╡рд░реНрдХ рдЗрдВрдЯрд░реИрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рдПрдВрдбреНрд░реЙрдЗрдб рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдШрдЯрдХреЛрдВ рдХреА рд╕рдВрд░рдЪрдирд╛ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИред
рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд╕рд┐рджреНрдзрд╛рдВрдд рд╢рд╛рдорд┐рд▓ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЕрднреНрдпрд╛рд╕
рджреВрд╕рд░реЗ рд▓реЗрдЦ рдореЗрдВ рд╣реЛрдЧрд╛ред
рд░реЗрдбрд┐рдпреЛ рдЗрдВрдЯрд░рдлреЗрд╕ рдкрд░рдд рдХрд╛ рд╡рд┐рд╡рд░рдг
рд░реЗрдбрд┐рдпреЛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреА рддрдерд╛рдХрдерд┐рдд рдкрд░рдд рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ, рдЕрдВрдЧреНрд░реЗрдЬреА рд╕реЗ - рд░реЗрдбрд┐рдпреЛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдкрд░рддред рдПрдВрдбреНрд░реЙрдЗрдб рдУрдПрд╕ рдореЗрдВ, рдпрд╣ рдЯреЗрд▓реАрдлреЛрдиреА рд╕реЗрд╡рд╛ (android.telephony) рдФрд░ рдореЙрдбреЗрдо рдХреЗ рдмреАрдЪ рдПрдХ рд╕рд╛рд░ рдкрд░рдд рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИред

рдЪрд┐рддреНрд░ 1. рд░реЗрдбрд┐рдпреЛ рдЗрдВрдЯрд░рдлреЗрд╕ рдХреА рдкрд░рддред
рдЪрд┐рддреНрд░ 1 рдореЗрдВ, рд░реЗрдбрд┐рдпреЛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреА рд▓рд╛рд▓ рдкрд░рдд рдХреЛ рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ:
- рд░реЗрдбрд┐рдпреЛ рдЗрдВрдЯрд░рдлреЗрд╕ рдХреА рдЬрд╛рд╡рд╛ рдкрд░рдд;
- рдЖрд░рдЖрдИрдПрд▓ рдбреЗрдорди;
- рдЗрд╡реЗрдВрдЯ рдкреНрд▓рд╛рдирд░;
- рдЖрд░рдЖрдИрдПрд▓ рдирд┐рд░реНрдорд╛рддрд╛ред
рдПрдпрд░ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдкрд░рдд рдХреЗ рдШрдЯрдХ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд╛рд░реНрдп рдХрд░рддреЗ рд╣реИрдВ:
рдЬрд╛рд╡рд╛ рд░реЗрдбрд┐рдпреЛ рдЗрдВрдЯрд░рдлреЗрд╕ рд▓реЗрдпрд░ (рдЬрд╛рд╡рд╛ рдЖрд░рдЖрдИрдПрд▓) рд╕реНрдерд╛рдиреАрдп рд▓рд┐рдирдХреНрд╕ рд╕реЙрдХреЗрдЯ / рдбреЗрд╡ / рд╕реЙрдХреЗрдЯ рдпрд╛ рд░рд┐рд▓реНрдб рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдбреАрдЖрдИрдПрд▓рдПрди рдХреЛ рдЖрд░рдЖрдИрдПрд▓ рдЕрдиреБрд░реЛрдз рднреЗрдЬрддрд╛ рд╣реИред рдЬрд╛рд╡рд╛ рдЖрд░рдЖрдИрдПрд▓ рд╕реНрд░реЛрдд рдХреЛрдб /telephony/java/com/android/internal/telephony/gsm/RIL.java рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕реНрдерд┐рдд рд╣реИрдВред
рдЖрд░рдЖрдИрдПрд▓ рдбреЗрдорди рд▓реЛрдб рдХрд░рддрд╛ рд╣реИ рдФрд░ рдирд┐рд░реНрдорд╛рддрд╛ рдЖрд░рдЖрдИрдПрд▓ рдФрд░ рдЗрд╡реЗрдВрдЯ рд╢реЗрдбреНрдпреВрд▓рд░ рдХреЛ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝ рдХрд░рддрд╛ рд╣реИред RIL рдбреЗрдореЙрди рдХреЗ рд▓рд┐рдП рд╕реНрд░реЛрдд рдХреЛрдб / рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ / ril / rild / рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╕реНрдерд┐рдд рд╣реИред
рдИрд╡реЗрдВрдЯ рд╢реЗрдбреНрдпреВрд▓рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдПрдБ рдЕрдиреБрд░реЛрдзрд┐рдд рдФрд░ рдЕрдирдЪрд╛рд╣реА рдХрдорд╛рдВрдбред рдпрд╣ рдЖрд░рдЖрдИрдПрд▓ рдЬрд╛рд╡рд╛ рдФрд░ рдЖрд░рдЖрдИрдПрд▓ рдирд┐рд░реНрдорд╛рддрд╛ рдХреЗ рдмреАрдЪ рдПрдХ рдордзреНрдпрд╕реНрде рд╣реИред рдИрд╡реЗрдВрдЯ рд╢реЗрдбреНрдпреВрд▓рд░ рдХреЗ рд▓рд┐рдП рд╕реНрд░реЛрдд рдХреЛрдб / рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ / ril / libril / рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╕реНрдерд┐рдд рд╣реИред
рдирд┐рд░реНрдорд╛рддрд╛ рдХреА рдЖрд░рдЖрдИрдПрд▓ рдореЙрдбреЗрдо рдХреЛ рдкреНрд░рд╛рд░рдВрдн рдХрд░рддреА рд╣реИ, рдореЙрдбреЗрдо рдХреЗ рд╕рд╛рде рд╕реАрдзреЗ рд╕рдВрдкрд░реНрдХ рдХрд░рддреА рд╣реИред рдирд┐рд░реНрдорд╛рддрд╛ рдХрд╛ рдЖрд░рдЖрдИрдПрд▓ рдПрдХ рдЧрддрд┐рд╢реАрд▓ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╣реИ рдЬрд┐рд╕реЗ рдореЙрдбреЗрдо рдХреЗ рдирд┐рд░реНрдорд╛рддрд╛ рджреНрд╡рд╛рд░рд╛ рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╡рд┐рдХрд╛рд╕ рдЯреЗрдореНрдкрд▓реЗрдЯ / рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ / рдЖрд░рдЖрдИрдПрд▓ / рд╕рдВрджрд░реНрдн-рдЖрд░рдЖрдИрдПрд▓ / рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╕реНрдерд┐рдд рд╣реИред рдореЛрдмрд╛рдЗрд▓ рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдореЙрдбреЗрдо рдХреЗ рд╕рдмрд╕реЗ рд▓реЛрдХрдкреНрд░рд┐рдп рдирд┐рд░реНрдорд╛рддрд╛ рдЖрдЬ рдЗрдВрдЯреЗрд▓ рдФрд░ рдХреНрд╡рд╛рд▓рдХреЙрдо рд╣реИрдВ, рдФрд░ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╕реНрд░реЛрдд рдХреЛрдб рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реИрдВред
рдЖрд░рдЖрдИрдПрд▓ рдбреЗрдореЙрди рдХреА рдЖрдВрддрд░рд┐рдХ рд╕рдВрд░рдЪрдирд╛
рдЪрд┐рддреНрд░рд╛ 2 рдЖрд░рдЖрдИрдПрд▓ рдбреЗрдорди рдХреА рдЖрдВрддрд░рд┐рдХ рд╕рдВрд░рдЪрдирд╛ рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИред рдЖрд░рдЖрдИрдПрд▓ рдбреЗрдорди рдХрд╛ рдХрд╛рд░реНрдп рдУрдПрд╕ рд╢реБрд░реВ рд╣реЛрдиреЗ рдкрд░ рд░реЗрдбрд┐рдпреЛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреА рдкрд░рдд рдХреЛ рдЖрд░рдВрднреАрдХреГрдд рдХрд░рдирд╛ рд╣реИред рдЖрд░рдЖрдИрдПрд▓ рдбреЗрдорди рдХреЛрдб рдХреА рдЫреЛрдЯреА рдорд╛рддреНрд░рд╛ рдХрд╛ рдЕрдзреНрдпрдпрди рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдирд┐рдореНрди рдПрд▓реНрдЧреЛрд░рд┐рдердо рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдЕрдкрдирд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ:
1. рд╕рд┐рд╕реНрдЯрдо рд╕реЗ рд░реАрдбреНрд╕ рдирд┐рд░реНрдорд╛рддрд╛ RIL (rild.libpath) рдФрд░ рд╕рд┐рд╕реНрдЯрдо рдЧреБрдг рдЬреЛ рдирд┐рд░реНрдорд╛рддрд╛ RIL рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдХреЗ рд▓рд┐рдП рдкрде рдХреЛ рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИред
2. рдирд┐рд░реНрдорд╛рддрд╛ рдЖрд░рдЖрдИрдПрд▓ рдХреЛ рд▓реЛрдб рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЗрд╡реЗрдВрдЯ рд╢реЗрдбреНрдпреВрд▓рд░ рдореЗрдВ рдЗрд╡реЗрдВрдЯ рд▓реВрдк рд╢реБрд░реВ рдХрд░рддрд╛ рд╣реИред
3. рдирд┐рд░реНрдорд╛рддрд╛ рдХреЗ рдЖрд░рдЖрдИрдПрд▓ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд╢реБрд░реВ рдХрд░рдиреЗ рдФрд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП RIL_Init рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рддрд╛ рд╣реИред
4. рдирд┐рд░реНрдорд╛рддрд╛ рдХреЗ рдЖрд░рдЖрдИрдПрд▓ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд╕рдВрджрд░реНрднреЛрдВ рдХреЛ рджрд░реНрдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╡реЗрдВрдЯ рдкреНрд▓рд╛рдирд░ рдХреЗ рд▓рд┐рдП RIL_register рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рддрд╛ рд╣реИред

рдЪрд┐рддреНрд░рд╛ 2. рдЖрд░рдЖрдИрдПрд▓ рдбреЗрдореЙрди рдХреА рдЖрдВрддрд░рд┐рдХ рд╕рдВрд░рдЪрдирд╛ред
рд░реЗрдбрд┐рдпреЛ рдЗрдВрдЯрд░рдлреЗрд╕ рдкрд░рдд рдХреЗ рдШрдЯрдХреЛрдВ рдХреЗ рдмреАрдЪ рджреЛ рдкреНрд░рдХрд╛рд░ рдХреЗ рдЗрдВрдЯрд░реИрдХреНрд╢рди рд╣реИрдВ: рд╕реЙрд▓рд┐рдЯреЗрдб рдФрд░
рдЕрдирдЪрд╛рд╣реА рдХрдорд╛рдВрдбред рдЕрдиреБрд░реЛрдзрд┐рдд рдЖрджреЗрд╢ рдЯреЗрд▓реАрдлреЛрдиреА рд╕реЗрд╡рд╛ рджреНрд╡рд╛рд░рд╛ рд╢реБрд░реВ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЗрдВрдЯрд░рдиреЗрдЯ рдХрдиреЗрдХреНрд╢рди рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЖрдЙрдЯрдЧреЛрдЗрдВрдЧ рдХреЙрд▓ред рдЕрдирдореЙрд▓рд┐рдбреЗрдЯреЗрдб рдХрдорд╛рдВрдбреНрд╕ рдореЙрдбреЗрдо рджреНрд╡рд╛рд░рд╛ рд╢реБрд░реВ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдЗрдирдХрдорд┐рдВрдЧ рдПрд╕рдПрдордПрд╕ рд╕рдВрджреЗрд╢, рдПрдХ рдЗрдирдХрдорд┐рдВрдЧ рдХреЙрд▓ред
рдПрдХ рдЯреЗрд▓реАрдлреЛрдиреА рд╕реЗрд╡рд╛ рдФрд░ рдПрдХ рдШрдЯрдирд╛ рдпреЛрдЬрдирд╛рдХрд╛рд░ рдХреЗ рдмреАрдЪ рд╕рдВрдмрдВрдз
рдЬрд╛рд╡рд╛ рдЖрд░рдЖрдИрдПрд▓ рдФрд░ рдИрд╡реЗрдВрдЯ рд╢реЗрдбреНрдпреВрд▓рд░ рдХреЗ рдмреАрдЪ рдмрд╛рддрдЪреАрдд рд╕реНрдерд╛рдиреАрдп рд▓рд┐рдирдХреНрд╕ рд╕реЙрдХреЗрдЯ
/ рджреЗрд╡ / рд╕реЙрдХреЗрдЯ / рд░рд┐рд▓реНрдб рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╣реЛрддреА рд╣реИред рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╕реНрддрд░ рдХрд╛ рдкреНрд░рддреНрдпреЗрдХ рдЕрдиреБрд░реЛрдз
com.android.internal.telephony.RILRequest рд╡рд░реНрдЧ рдХреЗ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рджрд░реНрдЬ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЕрдиреБрд░реЛрдз рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрдм рддрдХ рдХрд┐ рд░реЗрдбрд┐рдпреЛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреА рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдкрд░рддреЛрдВ рд╕реЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдирд╣реАрдВ рдорд┐рд▓рддреА рд╣реИред
рдЕрдиреБрд░реЛрдз рдкреИрд░рд╛рдореАрдЯрд░ рдкрд╛рд░реНрд╕рд▓ рд╕рдВрд░рдЪрдирд╛ рдХреЛ рд▓рд┐рдЦреЗ рдЧрдП рд╣реИрдВ, рдФрд░ рдЕрдиреБрд░реЛрдз рд╕реНрд╡рдпрдВ
com.android.internal.telephony.RIL.RILSender рд╡рд░реНрдЧ рдХреЛ рднреЗрдЬрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЕрдиреБрд░реЛрдз рдХрд╛ рдкреНрд░рд╛рд░реВрдк рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдЪрд┐рддреНрд░ рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ:
Com.android.internal.telephony.RIL.RILReceiver рд╡рд░реНрдЧ рд╕реНрдерд╛рдиреАрдп рд▓рд┐рдирдХреНрд╕ рд╕реЙрдХреЗрдЯ рдкрд░ рд╕реБрдирддрд╛ рд╣реИ, рдЬреЛ рдИрд╡реЗрдВрдЯ рд╢реЗрдбреНрдпреВрд▓рд░ рд╕реЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рддрд╛ рд╣реИред RILReceiver рдХреЛ рджреЛ рдкреНрд░рдХрд╛рд░ рдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдПрдБ рдкреНрд░рд╛рдкреНрдд рд╣реЛрддреА рд╣реИрдВ: рдЕрдиреБрд░реЛрдзрд┐рдд рдФрд░ рдЕрд╡рд╛рдВрдЫрд┐рддред рдЙрдирдХрд╛ рдкреНрд░рд╛рд░реВрдк рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдЖрдВрдХрдбрд╝реЛрдВ рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред

рдЪрд┐рддреНрд░ 4. рдЕрдиреБрд░реЛрдзрд┐рдд рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХрд╛ рдкреНрд░рд╛рд░реВрдкред

рдЪрд┐рддреНрд░рд╛ 5. рдПрдХ рдЕрд╡рд╛рдВрдЫрд┐рдд рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХрд╛ рдкреНрд░рд╛рд░реВрдкред
рдЖрд░рдЖрдИрдПрд▓ рдирд┐рд░реНрдорд╛рддрд╛ рдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди
рдирд┐рд░реНрдорд╛рддрд╛ рдХреА RIL рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореЙрдбреЗрдо рдХрд╛ рдирд┐рд░реНрдорд╛рддрд╛ рдПрдХ рдЧрддрд┐рд╢реАрд▓ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╡рд┐рдХрд╕рд┐рдд рдХрд░ рд░рд╣рд╛ рд╣реИ, рдЬреЛ рдореЙрдбреЗрдо рдХреЛ рд╕рдВрдмреЛрдзрд┐рдд рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдВрдбреНрд░реЙрдЗрдб рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рджреНрд╡рд╛рд░рд╛ рдЖрд╡рд╢реНрдпрдХ рдХрдИ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдирд╛рдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рдореНрдореЗрд▓рди рджреНрд╡рд╛рд░рд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ: рд▓рд╛рдЗрдмреНрд░рд┐рд▓- <рдХрдВрдкрдиреА рдХрд╛ рдирд╛рдо> - <RIL рдХрд╛ рд╕рдВрд╕реНрдХрд░рдг> .so
рд╢реАрд░реНрд╖рдХ рдлрд╝рд╛рдЗрд▓ /include/telephony/ril.h рдореЗрдВ рд╣реИ:
- рдХрдИ рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХрд╛ рд╡рд┐рд╡рд░рдг, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП: RIL_RadioState, RIL_Data_Call_Response;
- рдлрд╝рдВрдХреНрд╢рди рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП: RIL_Init, RIL_onRequestComplete;
- рдЕрдиреБрд░реЛрдзрд┐рдд рдФрд░ рдЕрдирдЪрд╛рд╣реА рдЖрдЬреНрдЮрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдкрд░рд┐рднрд╛рд╖рд╛рдПрдБ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП: #define RIL_REQUEST_SETUP_DATA_CALL 27ред
рдПрдпрд░ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдкрд░рдд рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рд╕реНрд╡рддрдВрддреНрд░ рд╣реИ рдФрд░ рдирд┐рд░реНрдорд╛рддрд╛ рдХреА RIL рдореЙрдбреЗрдо рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рднреА рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреА рд╣реИред рдПрдХ рдирд┐рдпрдо рдХреЗ рд░реВрдк рдореЗрдВ, рдХрдИ рдорд╛рдирдХреАрдХреГрдд рд╣реЗрд╕ рдПрдЯреА рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдХреБрдЫ рдореЙрдбреЗрдо рдирд┐рд░реНрдорд╛рддрд╛ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЗ рд╕рд╛рде рдПрдЯреА рдХрдорд╛рдВрдб рдХреЗ рдорд╛рдирдХ рд╕реЗрдЯ рдХреЛ рдкреВрд░рдХ рдХрд░рддреЗ рд╣реИрдВред
рдЕрдиреБрд░реЛрдзрд┐рдд рдЖрджреЗрд╢реЛрдВ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореЙрдбреЗрдо рдирд┐рд░реНрдорд╛рддрд╛ рдХреЛ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдПрдХ рд╕реЗрдЯ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЬрд┐рд╕рдХреЗ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдиреАрдЪреЗ рд╡рд░реНрдгрд┐рдд рд╣реИрдВред рдЕрдиреБрд░реЛрдзрд┐рдд рдЖрджреЗрд╢реЛрдВ рдХреЗ рдЕрдиреБрд░реЛрдз рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЛ RIL.h рд╣реЗрдбрд░ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЙрдкрд╕рд░реНрдЧ RIL_REQUEST_ рдХреЗ рд╕рд╛рде рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
void (*RIL_RequestFunc)(int request,void *data, size_t datalen,RIL_Token t)
рдпрд╣ рдЕрдиреБрд░реЛрдзрд┐рдд рдЖрджреЗрд╢реЛрдВ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдлрд╝рдВрдХреНрд╢рди рд╣реИред рдпрд╣ рд╡рд╣ рд╣реИ рдЬреЛ рдЕрдиреБрд░реЛрдзрд┐рдд рдЖрджреЗрд╢реЛрдВ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рд╣реЗрдбрд░ рдлрд╝рд╛рдЗрд▓ ril.h рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдП рдЧрдП рд╣реИрдВ рдФрд░ рдЙрдкрд╕рд░реНрдЧ RIL_REQUIN_ рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рд╣реЛрддреЗ рд╣реИрдВред RIL_RadioState (*RIL_RadioStateRequest)()
рдпрд╣ рдлрд╝рдВрдХреНрд╢рди рдореЙрдбреЗрдо рдХреА рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рддрд┐ рдХреЛ рд▓реМрдЯрд╛рддрд╛ рд╣реИред int (*RIL_Supports)(int requestCode)
рдлрд╝рдВрдХреНрд╢рди 1 рд░рд┐рдЯрд░реНрди рджреЗрддрд╛ рд╣реИ рдпрджрд┐ рджрд┐рдП рдЧрдП рдЕрдиреБрд░реЛрдз рдХреЛрдб рдХрд╛ рд╕рдорд░реНрдерди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ 0 рдЕрдиреНрдпрдерд╛ред void (*RIL_Cancel)(RIL_Token t)
рдпрд╣ рдлрд╝рдВрдХреНрд╢рди рдпрд╣ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рд▓рдВрдмрд┐рдд рдЕрдиреБрд░реЛрдз рд░рджреНрдж рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред RIL_RequestFunc рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╕реЗ рдПрдХ рдЕрд▓рдЧ рдзрд╛рдЧреЗ рдореЗрдВ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред const char * (*RIL_GetVersion) (void)
рдирд┐рд░реНрдорд╛рддрд╛ рдХрд╛ рдЖрд░рдЖрдИрдПрд▓ рд╕рдВрд╕реНрдХрд░рдг рд▓реМрдЯрд╛рддрд╛ рд╣реИред
рдирд┐рд░реНрдорд╛рддрд╛ рдЖрд░рдЖрдИрдПрд▓ рдЖрд░рдЖрдИрдПрд▓ рдбреЗрдорди рдХреЗ рд╕рд╛рде рд╕рдВрд╡рд╛рдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЙрд▓рдмреИрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ:
void RIL_onRequestComplete(RIL_Token t, RIL_Errno e, void *response, size_t responselen)
рдЕрдиреБрд░реЛрдзрд┐рдд рдЖрджреЗрд╢ рдкрд░ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХреА рдЧрдИ рд╣реИред void RIL_requestTimedCallback (RIL_TimedCallback callback, void *param, const struct timeval *relativeTime)
рд╕рдордп рдХреА рд▓рдВрдмрд╛рдИ рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рдлрд╝рдВрдХреНрд╢рди рдЬрд┐рд╕реЗ рдЖрдкрдХреЛ рдмрд╛рдж рдореЗрдВ рд╡рд╛рдкрд╕ рдХреЙрд▓ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдЖрд░рдЖрдИрдПрд▓ рдирд┐рд░реНрдорд╛рддрд╛ рджреНрд╡рд╛рд░рд╛ рдЕрдирдЪрд╛рд╣реА рдХрдорд╛рдВрдб рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдХреЙрд▓рдмреИрдХ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрдирд╛ рдЪрд╛рд╣рд┐рдП:
void RIL_onUnsolicitedResponse(int unsolResponse, const void *data, size_t datalen);
рдЖрд╡рд╢реНрдпрдХ рдЖрдЬреНрдЮрд╛рдПрдБ
рдЕрдиреБрд░реЛрдз рдХреА рдЧрдИ 61 рдЯреАрдореЗрдВ рд╣реИрдВред рдЙрдиреНрд╣реЗрдВ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╕рдореВрд╣реАрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
- рдПрдХ рд╕рд┐рдо рдХрд╛рд░реНрдб, рдЗрдирдкреБрдЯ / рдЖрдЙрдЯрдкреБрдЯ рдФрд░ рдбрд┐рд╡рд╛рдЗрд╕ рдХреА рдПрдХ рдЕрджреНрд╡рд┐рддреАрдп рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ (11) рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛;
- рдХреЙрд▓ рдХреА рд╕реНрдерд┐рддрд┐ рдФрд░ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг (16);
- рдиреЗрдЯрд╡рд░реНрдХ рдХреА рд╕реНрдерд┐рддрд┐ (4);
- рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ (12);
- рдПрд╕рдПрдордПрд╕ рд╕рдВрджреЗрд╢ (3);
- рдкреИрдХреЗрдЯ рдбреЗрдЯрд╛ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ (4) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрдиреЗрдХреНрд╢рди;
- рд╢рдХреНрддрд┐ рдФрд░ рдкреБрдирдГ рдЖрд░рдВрдн (2);
- рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реЗрд╡рд╛рдПрдВ (5);
- рдирд┐рд░реНрдорд╛рддрд╛ рдкрд░рд┐рднрд╛рд╖рд╛рдПрдБ рдФрд░ рд╕рдорд░реНрдерди (4)ред
рдЪрд┐рддреНрд░ 6 рдЕрдиреБрд░реЛрдзрд┐рдд рдЖрджреЗрд╢ "рдЗрдВрдЯрд░рдиреЗрдЯ рдХрдиреЗрдХреНрд╢рди рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ" рдкреНрд░рд╛рдкреНрдд рд╣реЛрдиреЗ рдкрд░ рд░реЗрдбрд┐рдпреЛ рдЗрдВрдЯрд░рдлреЗрд╕ рдкрд░рдд рдХреЗ рд╡рд┐рднрд┐рдиреНрди рд╕реНрддрд░реЛрдВ рдкрд░ рдХреЙрд▓ рдХреЗ рдЕрдиреБрдХреНрд░рдо рдХреЛ рджрд┐рдЦрд╛рддрд╛ рд╣реИ:
1. рдЖрд░рдЖрдИрдПрд▓ рдЬрд╛рд╡рд╛ RILSender.handleMessage () рдХреЛ рдХреЙрд▓ рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╕рдореВрд╣рдмрджреНрдз рддрд░реНрдХреЛрдВ рдХреЗ рд╕рд╛рде рд╕реНрдерд╛рдиреАрдп рд▓рд┐рдирдХреНрд╕ рд╕реЙрдХреЗрдЯ / рдбреЗрд╡ / рд╕реЙрдХреЗрдЯ / рд░рд┐рд▓реНрдб рдЕрдиреБрд░реЛрдз рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХ рдШрдЯрдирд╛ рдЕрдиреБрд╕реВрдЪрдХ рднреЗрдЬрддрд╛ рд╣реИред
2. рдШрдЯрдирд╛ рдирд┐рдпреЛрдЬрдХ рдХреНрд░рдорд┐рдХ рд░реВрдк рд╕реЗ рдХреЙрд▓рд╕реИрдХрдмреИрдХ (), рдкреНрд░реЛрд╕реЗрд╕рдХреЛрдорд╛рдВрдбрдХреЙрд▓рдмреИрдХ (), рдкреНрд░рд╕реАрдХрдХрдордВрдбрдмрдлрд░ (), рдбреЗрдЯрд╛ рдкреНрд░реАрдкреНрд░реЛрд╕реЗрд╕ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдХреЙрд▓ рдкреНрд░реЗрд╖рдг (рдЕрдиреБрд░реЛрдз рдХреЛрдб)
3. рдирд┐рд░реНрдорд╛рддрд╛ рдХреА RIL рдореЗрдВ, OnRequest () рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХреЛрдб (SETUP_DATA_CALL) рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдХреНрдпрд╛ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХреА рдЬрд╛рдиреА рдЪрд╛рд╣рд┐рдПред рдирд┐рд░реНрдорд╛рддрд╛ рдХреА рдЖрд░рдЖрдИрдПрд▓ рдЕрдиреБрд░реЛрдз рдХреЗ рдЕрдиреБрд░реВрдк рдореЙрдбреЗрдо рдкрд░ рдПрдЯреА рдХрдорд╛рдВрдб рдХрд╛ рдПрдХ рдХреНрд░рдо рднреЗрдЬрддреА рд╣реИ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдПрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░рддреА рд╣реИред OnRequestComplete () рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рдХреЗ рдЕрдиреБрд░реЛрдз рдХреЛрдб рдХреЗ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ, рддреЛ рдШрдЯрдирд╛ рдпреЛрдЬрдирд╛рдХрд╛рд░ рдХреЛ рдПрдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рднреЗрдЬрддрд╛ рд╣реИред
4. рдШрдЯрдирд╛ рдЕрдиреБрд╕реВрдЪрдХ рдирд┐рд░реНрдорд╛рддрд╛ RIL рд╕реЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ (рдЕрдиреБрд░реЛрдз рдХреЛрдб) рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЬрд╛рд╡рд╛ RIL рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рднреЗрдЬрддрд╛ рд╣реИред
5. RIL рдЬрд╛рд╡рд╛ RILReceiver.run () рдкрджреНрдзрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИред

рдЪрд┐рддреНрд░ 6. рдЕрдиреБрд░реЛрдзрд┐рдд рдЖрджреЗрд╢ред
рдЕрдирдЪрд╛рд╣реА рдХрдорд╛рдиреЛрдВ
11 рдЕрдирдЪрд╛рд╣реА рдЯреАрдореЗрдВ рд╣реИрдВ, рдЬрд┐рдиреНрд╣реЗрдВ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд░рдЦрд╛ рдЧрдпрд╛ рд╣реИ:
- рдиреЗрдЯрд╡рд░реНрдХ рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди (4);
- рдЖрдиреЗ рд╡рд╛рд▓реЗ рдПрд╕рдПрдордПрд╕ рд╕рдВрджреЗрд╢ (3);
- рдЖрдиреЗ рд╡рд╛рд▓реА рдпреВрдПрд╕рдПрд╕рдбреА рдЕрдзрд┐рд╕реВрдЪрдирд╛ (2);
- рд╕рдВрдХреЗрдд рд╢рдХреНрддрд┐ рдпрд╛ рд╕рдордп рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди (2)ред

рдЪрд┐рддреНрд░ 7. рдЕрдирдЪрд╛рд╣реА рдХрдорд╛рдВрдбред
рдЪрд┐рддреНрд░ 7 рдЕрдирдЪрд╛рд╣реА "рдЖрдиреЗ рд╡рд╛рд▓реЗ рдПрд╕рдПрдордПрд╕ рд╕рдВрджреЗрд╢" рдЖрджреЗрд╢ рдХреЗ рдкреНрд░рд╛рдкреНрдд рд╣реЛрдиреЗ рдкрд░ рд░реЗрдбрд┐рдпреЛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдкрд░рдд рдХреЗ рд╡рд┐рднрд┐рдиреНрди рд╕реНрддрд░реЛрдВ рдкрд░ рдХреЙрд▓ рдХреЗ рдЕрдиреБрдХреНрд░рдо рдХреЛ рджрд┐рдЦрд╛рддрд╛ рд╣реИ:
1. рдПрдЯреА-рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореЙрдбреЗрдо рд╕реЗ рдЖрддреА рд╣реИ, рдирд┐рд░реНрдорд╛рддрд╛ рдЖрд░рдЖрдИрдПрд▓ рдЗрд╕реЗ рдкрдврд╝рддрд╛ рд╣реИ рдФрд░ рд╕рдВрдмрдВрдзрд┐рдд рдлрд╝рдВрдХреНрд╢рди рд╣реИрдВрдбрд▓рд░ рдХреЛ рдХреЙрд▓ рдХрд░рддрд╛ рд╣реИред рдирд┐рд░реНрдорд╛рддрд╛ рдХреА рдЖрд░рдЖрдИрдПрд▓ рдЗрд╡реЗрдВрдЯ рдкреНрд▓рд╛рдирд░ рдХреЛ рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛ рддреИрдпрд╛рд░ рдХрд░рддреА рд╣реИред OnUnsolicitedResponse () рдХреЙрд▓ рдХрд░рдХреЗ рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рд╕рдорд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИред
2. рдШрдЯрдирд╛ рдЕрдиреБрд╕реВрдЪрдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд╕рд╛рде рдЖрдП рдбреЗрдЯрд╛ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЬрд╛рд╡рд╛ рдЖрд░рдЖрдИрдПрд▓ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЛ рд╕реНрдерд╛рдиреАрдп рд▓рд┐рдирдХреНрд╕ рд╕реЙрдХреЗрдЯ / рджреЗрд╡ / рд╕реЙрдХреЗрдЯ / рд░рд┐рд▓реНрдб рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рднреЗрдЬрддрд╛ рд╣реИред
3. RIL рдЬрд╛рд╡рд╛ RILReceiver.run () рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИред
рдЕрдЧрд▓реЗ рд▓реЗрдЦ рдореЗрдВ рдореИрдВ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рд╕реАрдзреЗ рдореЙрдбреЗрдо рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдирд╛ рдЦреБрдж рдХрд╛ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреИрд╕реЗ рд▓рд┐рдЦрдирд╛ рд╣реИ рдФрд░ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдХреНрдпрд╛ рд╣рд╛рд╕рд┐рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдПрдХ рд▓реЗрдЦ рд▓рд┐рдЦрддреЗ рд╕рдордп, рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛:
1. Android OS рд╕реНрд░реЛрдд рдХреЛрдб
android.googlesource.com2.
dpsm.wordpress.com/2010/09/01/smart-phones-are-still-phones3.
www.netmite.com/android/mydroid/development/pdk/docs/telephony.html4.
www.slideshare.net/ssusere3af56/android-radio-layer-interface