응용 프로그램이 실행중인 동안 프로그래밍 방식으로 정보를 플립 할 수 있습니까?

StackOverflow https://stackoverflow.com/questions/1429886

  •  07-07-2019
  •  | 
  •  

문제

나는 사용에 관심이있다 SBUsesNetwork 그리고 UIRequiresPersistentWiFi 내 응용 프로그램의 키; 그러나 특정 뷰 컨트롤러 세트를 사용할 때만 활성화하고 싶습니다. 응용 프로그램이 실행중인 동안 이러한 키 값을 프로그래밍 방식으로 뒤집는 방법이 있습니까?

도움이 되었습니까?

해결책

실행 중에 번들 내용을 수정할 수 없으며 해당 디렉토리에 대한 쓰기 액세스가 없습니다. 당신이 원하는 것을 정확히 할 수있는 방법이 있는지 잘 모르겠습니다.

다른 팁

나는 당신이 당신의 정보를 얻을 수 있다는 것을 알고 있습니다. nsbundle 다음과 함께 :

NSDictionary* infoDictionary = [[NSBundle mainBundle] infoDictionary];

거기에서 당신은 a를 만들 수 있습니다 mutableCopyNSDictionary 그 안에 값을 설정합니다. 키를 쿼리 할 때는 쿼리해야합니다. NSDictionary 그리고 당신의 info.plist 파일은 아니지만,이 모든 것을 두 가지 문제를 모두 처리하는 클래스로 캡슐화하는 것은 어렵지 않아야합니다.

앱의 info.plist 파일을 직접 수정하는 데 직접 문제가있을 수 있습니다 (예 : 파일을 수정하면 코드 서명이 실패하고 앱이 손상된 것으로 간주됩니다).

info.plist를 수정할 수 없습니다. 애플의 승인 된 방법은 당신이 추구하는 일을하는 것 같습니다.

나는 이것이 효과가 있다고 생각하지 않습니다. [NSBUNDLE MAINBUNDLE]은 특정 외도에 대한 포인터를 가지고 있습니다. 비록 당신이 돌연변이 가능한 사본을 가져가더라도, NSBundle은 우리의 새로운 plist에 대해 아무것도 알지 못할 것입니다. 아직 시도한 사람이 있습니까?

info.plist는 사전 일뿐입니다. 따라서 편집 할 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top