2017-08-04 15 views
2

機能を呼び出してブロックする1つのアプリケーションで作業しています。私は静的な値をaddBlockingEntryWithNextSequentialPhoneNumberに渡している場合、それはブロック番号ですが、私はaddBlockingEntryWithNextSequentialPhoneNumberに配列を渡しているときに番号をブロックしていません。私はAppdelegateに私のアレイを記録しており、それは正常に見えます。配列からCallKit呼び出しブロックの設定値が機能しない

Appdegateコード:

NSArray *sortedArr = [lockedArr sortedArrayUsingSelector:@selector(compare:)]; 

[DEFAULTS setObject:sortedArr forKey:@"SortedBlockedUsers"]; 

NSArray<NSNumber *> *blockedPhoneNumbers = [DEFAULTS objectForKey:@"SortedBlockedUsers"]; 

for (NSNumber *phoneNumber in blockedPhoneNumbers) { 
     NSLog(@"phoneNumber == %lld", (CXCallDirectoryPhoneNumber)[phoneNumber unsignedLongLongValue]); 
    } 

出力は次のとおりです。のPhoneNumber == 918849494978のPhoneNumber == 919142142124

handlerClassのコード:

NSArray<NSNumber *> *blockedPhoneNumbers = [[NSUserDefaults standardUserDefaults] objectForKey:@"SortedBlockedUsers"]; 

//NSArray<NSNumber *> *blockedPhoneNumbers = @[ @918823514521, @919586112211 ]; 

for (NSNumber *phoneNumber in blockedPhoneNumbers) 
{ 
    [context addBlockingEntryWithNextSequentialPhoneNumber:(CXCallDirectoryPhoneNumber)[phoneNumber unsignedLongLongValue]]; 
} 

答えて

0

は、最後に私の拡張クラスをデバッグした後、私はその問題が見つかりました配列に値を割り当てます(NSUserDefaults)。 Extensionクラスと対話するには、NSUserDefaults SuiteNameを使用して値を保存して取得する必要があります。

関連する問題