Xcode에서 실제 iPhone 장치로 iPhone 애플리케이션을 배포하려면 어떻게 해야 합니까?

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

문제

US$99 Apple 인증서 없이 Xcode에서 실제 iPhone 장치로 iPhone 애플리케이션을 배포하려면 어떻게 해야 합니까?

도움이 되었습니까?

해결책

응용 프로그램이 서명되지 않은 것 같습니다. Cydia에서 LDID를 다운로드 한 다음 그렇게 사용하십시오. ldid -S /Applications/AccelerometerGraph.app/AccelerometerGraph

또한 이진이 실행 파일로 표시되어 있는지 확인하십시오. chmod +x /Applications/AccelerometerGraph.app/AccelerometerGraph

다른 팁

나는 두 가지 하우투를 혼합하여 사용했습니다. 제이슨의 그리고 알렉스.두 번째로는 디버깅이 가능하다는 장점이 있습니다.나는 대부분 아래 두 가지를 모두 복사할 것입니다(그리고 알렉스는 단순화합니다).

2012년 1월 업데이트: 이것은 SDK 4.2.1 및 iOS 5.0.1에서 여전히 작동합니다. 방금 새 컴퓨터와 장치에서 모든 것을 테스트했습니다!


1.자체 서명된 인증서 만들기

이 인증서를 사용할 수 있도록 iPhone SDK를 패치하세요.

  1. Keychain Access.app을 실행하세요.항목을 선택하지 않은 상태에서 키체인 메뉴에서 인증서 지원, 인증서 만들기를 차례로 선택합니다.

    • 이름: 아이폰 개발자
    • 인증서 유형: 코드 서명
    • 기본값을 재정의하겠습니다.
  2. 계속을 클릭하세요

    • 타당성: 3650일
  3. 계속을 클릭하세요

  4. 지우다 그만큼 이메일 주소 필드.

  5. 딸깍 하는 소리 완료될 때까지 계속.

    넌 봐야 해 "이 루트 인증서는 신뢰할 수 없습니다".이것은 예상됩니다.

  6. 자체 서명된 인증서를 사용할 수 있도록 iPhone SDK를 설정합니다.

    sudo /usr/bin/sed -i .bak 's/XCiPhoneOSCodeSignContext/XCCodeSignContext/' /Developer/Platforms/iPhoneOS.platform/Info.plist
    

    Xcode가 열려 있는 경우 이 변경 사항을 적용하려면 Xcode를 다시 시작하세요.

iOS 5를 사용하고 계시다면 그게 전부입니다!지금 사용해 보세요!디버깅이 허용되지 않을 수도 있지만 앱은 있을 것입니다!

나는 이것에 매우 놀랐습니다. 왜냐하면 당신은 알고 있어야, 나는 그 모든 해킹이 무엇에 관한 것인지 전혀 모릅니다!내가 한 일은 내가 지적했듯이 다른 곳에서 찾은 것을 약간 개선하는 것뿐이었습니다.

그럼 그렇지, 전체 방법 더 이상 같은 방식으로 작동하지 않으며 새 것을 찾을 수 없었습니다 ...제외 이것은 Theos라는 도구를 사용합니다. 하지만 나는 그 모든 과정을 거치지 못했다.

마지막으로 꼭 필요한 경우 제거하다 어떤 이유에서든 이 게시물의 끝부분을 확인하세요.내 경우에는 이 모든 방법이 왜 작동하지 않는지 알 수 없었기 때문에 그렇게 해야 했고, 오랫동안 기다려온 라이센스를 이미 얻었기 때문에 더 이상 신경 쓸 수 없었습니다.(괴상한 DUNS 번호는 너무 오래 걸립니다...)

.

.


.

.

.

2.탈옥된 장치에서 Xcode를 빌드하도록 활성화

  1. 탈옥한 iPhone에 앱을 설치하세요. AppSync 소스를 추가하여 ** http://repo.hackyouriphone.org**

  2. 코드 서명 및 권한에 대한 SDK 요구 사항을 제거합니다. sed!):

    sudo /usr/bin/sed -i .bak '/_REQUIRED/N;s/YES/NO/' /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk/SDKSettings.plist
    
  3. 주의하세요 ~로 iPhoneOS5.0.sdk 부분.예를 들어 iOS 4.2 SDK를 사용하는 경우 적절하게 교체하세요.

    sudo /usr/bin/sed -i .bak '/_REQUIRED/N;s/YES/NO/' /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/SDKSettings.plist
    
  4. Xcode 패치를 통해 요구사항 제거를 완료합니다.이는 바이너리 편집을 의미합니다.

    cd /Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Plug-ins/iPhoneOS\ Build\ System\ Support.xcplugin/Contents/MacOS/
    dd if=iPhoneOS\ Build\ System\ Support of=working bs=500 count=255
    printf "\xc3\x26\x00\x00" >> working
    /bin/mv -n iPhoneOS\ Build\ System\ Support iPhoneOS\ Build\ System\ Support.original
    /bin/mv working iPhoneOS\ Build\ System\ Support
    chmod a+x iPhoneOS\ Build\ System\ Support
    

    Xcode가 열려 있는 경우 이 변경 사항(및 마지막 변경 사항)을 적용하려면 다시 시작하세요.

  5. 열려 있는 "프로젝트>프로젝트 설정 편집" (메뉴에서).다음을 클릭하세요. "짓다" 탭.찾다 "코드 서명 신원" 그리고 그 아이 "모든 iPhoneOS 장치" 목록에서 둘 다 항목으로 설정하십시오. "코드 서명하지 마세요":

    alt text

    그런 다음 3단계를 자유롭게 실행 취소하세요.적어도 내 경우에는 괜찮게 진행됐다.

  6. Xcode를 맞춤 제작한 코드 서명으로 설정 자체 서명된 인증서 (첫 번째 방법).디버깅을 원하지 않는 경우 이 단계를 건너뛸 수 있습니다.

    mkdir /Developer/iphoneentitlements401
    cd /Developer/iphoneentitlements401
    curl -O http://www.alexwhittemore.com/iphone/gen_entitlements.txt
    mv gen_entitlements.txt gen_entitlements.py
    chmod 777 gen_entitlements.py
    

    iPhone을 연결하고 Xcode를 엽니다.창>주최자를 엽니다.왼쪽에있는 목록에서 장치를 선택하고 "개발에 사용"을 클릭하십시오. 프로비저닝 웹 사이트 로그인이 표시되며 취소를 클릭하십시오.합법적인 프로비저닝을 더 쉽게 만들기 위해 존재하지만 불법적으로 프로비저닝하지 않는 것을 더 어렵게 만들지는 않습니다.

    지금 새로운 프로젝트를 만들 때마다 이 마지막 부분을 수행해야 합니다..프로젝트 > 새 빌드 단계 > 새 실행 스크립트 빌드 단계 메뉴로 이동합니다.창에서 다음을 복사하여 붙여넣으세요.

    export CODESIGN_ALLOCATE=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/codesign_allocate
    if [ "${PLATFORM_NAME}" == "iphoneos" ]; then
    /Developer/iphoneentitlements401/gen_entitlements.py "my.company.${PROJECT_NAME}" "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/${PROJECT_NAME}.xcent";
    codesign -f -s "iPhone Developer" --entitlements "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/${PROJECT_NAME}.xcent" "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/"
    fi
    

.

.


.

.

제거 중

첫 번째 부분의 경우:

sudo mv -f /Developer/Platforms/iPhoneOS.platform/Info.plist.bak /Developer/Platforms/iPhoneOS.platform/Info.plist

두 번째 부분의 경우:

sudo mv -f /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk/SDKSettings.plist.bak /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk/SDKSettings.plist
sudo mv -f iPhoneOS\ Build\ System\ Support.original iPhoneOS\ Build\ System\ Support

2단계 대신 3단계를 수행한 경우 적절하게 수정하면 됩니다.

sudo mv -f /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/SDKSettings.plist.bak /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/SDKSettings.plist

나머지는 XCode에서 수행한 작업을 되돌리고 삭제하는 것입니다. /Developer/iphoneentitlements401/gen_entitlements.py 네가 원한다면:

sudo rm -f /Developer/iphoneentitlements401/gen_entitlements.py

Xcode 7 이후의 무료 프로비저닝

Apple 개발자 수수료 (또는 기기 탈옥)를 지불하지 않고 실제 장치에서 앱을 테스트하려면 Xcode 7 및 iOS 9가 지원하는 새로운 무료 프로비저닝을 사용할 수 있습니다.

다음은 다소 취한 단계입니다 문서 (꽤 좋으므로 읽으십시오) :

1. Xcode에 Apple ID를 추가하십시오

Xcode> 환경 설정> 계정 탭> 추가 버튼 (+)> Apple ID를 추가하십시오. 보다 문서 더 많은 도움을 받으려면.

enter image description here

2. 프로젝트 네비게이터의 일반 탭을 클릭하십시오

enter image description here

3. 팀 팝업 메뉴에서 Apple ID를 선택하십시오.

enter image description here

4. 장치를 연결하고 체계 메뉴에서 선택하십시오.

enter image description here

5. 문제 수정 버튼을 클릭하십시오

enter image description here

번들 이름이 유효하지 않은 것에 대한 오류가 발생하면 고유 한 것으로 변경하십시오.

6. 앱을 실행하십시오

Xcode에서 빌드 및 실행 버튼을 클릭하십시오.

enter image description here

7. 장치 설정에서 앱 개발자를 신뢰하십시오

앱을 실행하면 실행하려는 앱이 App Store에서 나오지 않기 때문에 보안 오류가 발생합니다.

enter image description here

너의 장치, 설정> 일반> 프로필>로 이동하십시오 당신의 애플리드-이름 > 신뢰 당신의 애플리드-이름 > 신뢰.

8. 장치에서 앱을 다시 실행하십시오.

그게 다야. 이제 $ 99 달러를 요리하지 않고도 자신의 (또는 소스 코드가있는 다른 앱)를 실행할 수 있습니다. 마침내이를 허용해 주셔서 감사합니다.

공식 SDK로 구축 된 응용 프로그램에 대해 이야기하고 Xcode에서 직접 배포하는 경우에는 할 수 없습니다.

장치를 탈옥해야합니다.

Apple에 지불하지 않고 iPhone 앱을 배포하는 방법이 있습니다. 장치를 탈옥하고 지침을 따라야합니다. http://www.alexwhittemore.com/?p=398

내가 보지 못한 것은 당신이 (지불) 인증서없이 실제 iPhone에 애드에서 배포 할 수 있음을 나타내는 것을 나타내는 것을 나타내는 것은 없습니다.

어제 밤에 Apple 개발자를 겪고 있었고 프로비저닝 인증서에서 "팀원 서명"과 같은 것을 발견했습니다. 팀 멤버를 유료 프로필에 추가 할 수있는 방법이 있다고 생각합니다. 앱 ID 소유자 (유료 1)에게 팀원으로 추가하도록 요청할 수 있습니다. 확실하지 않습니다. 여전히 검색하고 있습니다.

아니요,이 작업을 수행하기 쉽습니다. Xcode에서 활성 구성을 릴리스하도록 설정하십시오. 시뮬레이터에서 장치로 장치를 변경합니다. iPhone으로 직접 내보내려면 컴퓨터에 연결하십시오. 빌드를 누르십시오. iPhone이 컴퓨터에 연결되어 있지 않으면 iPhone이 연결되어 있지 않다는 메시지가 나타납니다.

이것이 당신에게 적용되는 경우 : (iPhone이 연결되어 있지 않음)

프로젝트 폴더로 이동 한 다음 내부 빌드 폴더로 이동하십시오. 릴리스 -iphoneos 폴더로 이동하여 앱을 안으로 가져 가서 iTunes 아이콘을 드래그 앤 드롭합니다. iTouch 장치를 동기화하면 장치에 복사됩니다. 또한 iPhone의 응용 프로그램으로 iTunes에 나타납니다.

도움이 되었기를 바랍니다!

추신 : 인증서가 유효하지 않은 것에 대해 말하면 Xcode의 프로젝트를 클릭하면 파일 스택의 작은 프로젝트 아이콘을 왼쪽으로 스택하고 Apple+I를 누르거나 메뉴 표시 줄에서 정보를 얻습니다. 상단에서 빌드를 클릭하십시오. 코드 서명에 따라 코드 서명 ID를 변경합니다. -IPhone OS 장치는 서명하지 않습니다.

이것은 실제로 다른 버전으로 사용하는 Xcode 버전에 따라 다른 버전을 사용하여 프로비저닝 프로파일없이 iPhone에 배포합니다.

Xcode 3.2.1은 좋은 버전이며 정렬하기 쉽지만 사용중인 버전을 알아야합니다.

Cawas가 게시 한 솔루션은 Xcode4와 완벽하게 작동합니다. 그러나 IDE의 UI에 약간의 변경 사항이 있으므로 실행 스크립트를 찾기 위해 연구를해야합니다. :)

프로젝트 네비게이터보기에서 프로젝트의 루트 항목을 클릭 한 다음 중간 창에서 대상을 선택한 다음 구축 단계 탭을 클릭하고 하단에서 빌드 단계 버튼 추가 버튼을 클릭하고 클릭 한 다음 스크립트 추가를 선택한 다음 "CodesIGN"을 붙여 넣습니다. "Cawas에 의해 게시 된 스크립트.

해결 방법이 없습니다. 앱이 장치에 등록되어있는 경우에만 APPOLIVE APPS를 사용할 수 있습니다. 이것은 당신이 당신의 자신의 앱 스토어를 만들지 못하게합니다 ..

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