2013-09-23 3 views
1

Есть ли какие-либо изменения, которые позволят больше в CoreTelephony Framework в iOS 7 ?! Я нашел новые Headerfiles здесь:CoreTelephony Framework iOS 7

https://github.com/EthanArbuckle/IOS-7-Headers/tree/master/Frameworks/CoreTelephony.framework

Так, значит ли это, что теперь разрешено использовать эти методы ?! Или они все еще частные ?!

+0

[IOS, от 6,1 до 7,0 IOS, API Различия] (https://developer.apple.com/library/ios/releasenotes/General/iOS70APIDiffs/index.html#//apple_ref/doc/uid/TP40013203) – Desdenova

+0

Таким образом, эти Заголовки, которые перечислены в вашей ссылке, я могу использовать, не отвергнув Apple ?! – davidOhara

+2

Да, конечно.Непубличные api никогда не документируются. Поэтому, если вы когда-либо видели что-либо в официальных документах, они могут свободно использовать. – Desdenova

ответ

6

Последняя доступная документация на Apple, Дев составляет от 15 марта 2010 года, охватывает IOS 4.0, и включает в себя следующие классы:

  • CTCall
  • CTCallCenter
  • CTCarrier
  • CTTelephonyNetwork

Единственная доступная документация для iO Обновления S 7 включают в себя то, что Kogus отправил, а также одну строку, в которой говорится «для обновлений, посмотрите файлы заголовков». Когда вы откроете рамки в XCode, следующие классы доступны прошивкой 7:

  • CTCall
  • CTCallCenter
  • CTCarrier
  • CTSubscriber
  • CTSubscriberInfo
  • CTTelephonyNetwork

Основываясь на примечании iOS 7 о радиотехнологиях, похоже, что наиболее подходящее изменение относится к классу CTTelephonyNetwork с добавлением свойства currentRadioAccessTechnology.

Похоже, что на самом деле существует БОЛЬШЕ доступнее, только на основе ссылки github. Но я готов поспорить, что это в основном частные API. Я думаю, что самым безопасным подходом было бы использование публичных заголовков, доступных в Xcode. С этой целью, соответствующие битами, добавленные в прошивке 7 будут (с предварительно прошивкой 7 кода удалены):

/* 
* CTSubscriberTokenRefreshed 
* 
* Description: 
*  The name of the NSNotification sent when the carrier token is available. 
*/ 
CORETELEPHONY_EXTERN NSString * const CTSubscriberTokenRefreshed __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_7_0); 

CORETELEPHONY_CLASS_AVAILABLE(7_0) 
@interface CTSubscriber : NSObject 

/* 
* carrierToken 
* 
* Description: 
*  A data blob containing authorization information about the subscriber. 
* 
*  May return nil if no token is available. 
*/ 
@property (nonatomic, readonly, retain) NSData* carrierToken __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_7_0); 

И ...

/* 
* CTTelephonyNetworkInfo.h 
* CoreTelephony 
* 
* Copyright 2009 Apple, Inc. All rights reserved. 
* 
*/ 

#import <Foundation/Foundation.h> 
#import <CoreTelephony/CoreTelephonyDefines.h> 

/* 
* CTRadioAccessTechnologyDataTechnologyDidChangeNotification 
* 
* Description: 
*  A NSNotification broadcast when radio access technology changes 
*/ 
CORETELEPHONY_EXTERN NSString * const CTRadioAccessTechnologyDidChangeNotification __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_7_0); 

/* 
* Radio Access Technology values 
*/ 
CORETELEPHONY_EXTERN NSString * const CTRadioAccessTechnologyGPRS   __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_7_0); 
CORETELEPHONY_EXTERN NSString * const CTRadioAccessTechnologyEdge   __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_7_0); 
CORETELEPHONY_EXTERN NSString * const CTRadioAccessTechnologyWCDMA   __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_7_0); 
CORETELEPHONY_EXTERN NSString * const CTRadioAccessTechnologyHSDPA   __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_7_0); 
CORETELEPHONY_EXTERN NSString * const CTRadioAccessTechnologyHSUPA   __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_7_0); 
CORETELEPHONY_EXTERN NSString * const CTRadioAccessTechnologyCDMA1x  __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_7_0); 
CORETELEPHONY_EXTERN NSString * const CTRadioAccessTechnologyCDMAEVDORev0 __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_7_0); 
CORETELEPHONY_EXTERN NSString * const CTRadioAccessTechnologyCDMAEVDORevA __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_7_0); 
CORETELEPHONY_EXTERN NSString * const CTRadioAccessTechnologyCDMAEVDORevB __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_7_0); 
CORETELEPHONY_EXTERN NSString * const CTRadioAccessTechnologyeHRPD   __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_7_0); 
CORETELEPHONY_EXTERN NSString * const CTRadioAccessTechnologyLTE   __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_7_0); 

/* 
* currentRadioAccessTechnology 
* 
* Discussion: 
* The current radio access technology the device is registered with. May be NULL 
* if device is not registered on any network. 
*/ 
@property (nonatomic, readonly, retain) NSString* currentRadioAccessTechnology __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_7_0); 

@end 

Надежда, что помогает.

0

От What's New in iOS: iOS 7.0:

Структура ядра Telephony (CoreTelephony.framework) позволяет получить информации о типе радиотехники в использовании устройства. Приложения, разработанные совместно с перевозчиком, также могут аутентифицировать против конкретного абонента для этой несущей.

Смежные вопросы