2015-04-16 13 views
6

Tôi có một ứng dụng được xuất bản trên cả Cửa hàng ứng dụng và Cửa hàng Play. Ứng dụng được xuất bản đang trỏ đến máy chủ sản xuất của tôi. Những gì tôi muốn làm là để các thiết bị của tôi cài đặt một ứng dụng "dàn dựng" trỏ đến máy chủ dàn dựng của tôi vì vậy tôi không gây rối với người dùng thực sự trong quá trình phát triển của tôi. Về cơ bản, thiết bị của tôi sẽ có hai ứng dụng của tôi - MyApp và MyApp_Staging. Ứng dụng dàn dựng phải có khả năng được phân phối cho người thử nghiệm của tôi.Cài đặt cả dàn dựng và sản xuất ứng dụng iOS/Android trên thiết bị của bạn

Tôi sử dụng tính năng Thông báo đẩy từ Phân tích cú pháp. Làm cách nào để ứng dụng dàn dựng có cùng tính năng? Tôi có cần một tài khoản Nhà phát triển khác cho ứng dụng dàn dựng không?

Tôi đã xem xét các tính năng Thử nghiệm beta của iOS. Có vẻ như ứng dụng dàn dựng của tôi phải được Apple xem xét trước khi tôi đẩy người thử nghiệm của mình. Làm cách nào để bỏ qua quá trình đánh giá? Đối với Android, bản giới thiệu theo giai đoạn có vẻ như là một ý tưởng hay, nhưng ứng dụng được dàn dựng sẽ thay thế ứng dụng sản xuất.

Có cách nào để cài đặt cả ứng dụng dàn dựng và sản xuất trên thiết bị không?

+0

Bạn có thể có người thử nghiệm beta nội bộ cho iOS, bỏ qua bước phê duyệt nhưng họ cần được cấp quyền quản trị hoặc vai trò kỹ thuật trong tài khoản của bạn, điều này ít lý tưởng hơn. – kindasimple

Trả lời

8

Đối với iOS:

Tôi có dàn dựng và ứng dụng sản xuất dành cho iOS được cài đặt trên cùng một thiết bị. Tôi không thể trả lời câu hỏi này cho Android, nhưng đây là thiết lập của tôi cho iOS với thông báo đẩy Parse.

A: Nhiều phiên bản của ứng dụng trên cùng một thiết bị:

Đối với cả các ứng dụng được cài đặt trên cùng một thiết bị mà họ cần để có định danh bó khác nhau. Để làm điều đó:

  1. Mở dự án của bạn và chuyển đến tab Thông tin cho Mục tiêu của bạn.
  2. Xác định vị trí các thiết lập cho Bundle định danh
  3. Thêm một hậu tố vào cuối nhận dạng như sau: com.MyApp$(BUNDLE_ID_SUFFIX)
  4. Bây giờ hãy mở tab Cài đặt xây dựng và bổ sung chế độ xem User-Defined thiết
  5. Đặt tên của cài đặt là BUNDLE_ID_SUFFIX
  6. Thêm hậu tố khác nhau cho từng cấu hình xây dựng mà bạn có. ví dụ. Gỡ lỗi có thể có giá trị .debug. Để lại hậu tố cho cấu hình Phát hành trống. Tôi có 3 cấu hình xây dựng với các hậu tố khác nhau.
    • Gỡ lỗi để thử nghiệm khi tôi đang phát triển
    • Adhoc để phát hành adhoc xây dựng cho người thử nghiệm.
    • Phát hành để phát hành cho App Store.
  7. Nếu bạn đi theo con đường này, bạn sẽ nhận thấy rằng tất cả các phiên bản ứng dụng được cài đặt trên thiết bị của bạn có cùng tên và sẽ khó phân biệt chúng.
  8. Để khắc phục điều đó, quay trở lại tab Info và chỉnh sửa các thiết lập cho Bundle hiển thị tên nói ${PRODUCT_NAME}${BUNDLE_DISPLAY_NAME_SUFFIX}
  9. Tương tự như những gì chúng tôi đã nêu trên tạo ra một cài đặt User-Defined mới với tên BUNDLE_DISPLAY_NAME_SUFFIX và thêm giá trị khác nhau cho mỗi cấu hình xây dựng. ví dụ. tôi nói α và β.

Ở trên sẽ cho phép bạn cài đặt nhiều phiên bản ứng dụng trên một thiết bị.

B: Thiết lập Thông báo đẩy sử dụng phân tích giữa các phiên bản.

Để thiết lập thông báo đẩy Parse để làm việc trên các phiên bản: Thực hiện theo các Parse tutorial để tạo chứng chỉ và hồ sơ dự phòng cho mỗi của định bó. ví dụ. Tôi có 3 chứng chỉ/provisioning profiles cho 3 bundle identifier của tôi:

  1. com.MyApp.debug là một hồ sơ phát triển cho DEBUG.
  2. com.MyApp.adhoc là hồ sơ sản xuất AdHoc để kiểm tra Ad Hoc.
  3. com.MyApp là một hồ sơ sản xuất AppStore để gửi lên App Store.

Đảm bảo đặt đúng cấu hình cung cấp trong Cài đặt xây dựng để ứng dụng được ký chính xác.

Tải tất cả chứng chỉ lên Parse.com. Phân tích cú pháp cho phép bạn có 6 chứng chỉ đẩy iOS khác nhau.

C: Sử dụng máy chủ sản xuất và dàn dựng khác nhau.

Thiết lập macro tiền xử lý trên tab Cài đặt xây dựng.Tìm kiếm Preprocessor và dưới của Apple LLVM 6.1 - tiền xử lý cho thiết Macros Preprocessor thiết lập macro khác nhau cho mỗi cấu hình xây dựng. ví dụ. tôi nói cho Adhoc ADHOC=1, cho gỡ lỗi DEBUG=1

Sau đó, ở đâu đó trong mã nguồn của bạn có một cái gì đó như sau:

#if defined(DEBUG) 

#define SERVER <development server> 

#else 

#if defined(ADHOC) 

#define SERVER <staging server> 

#else 

#define SERVER <production server> 

#endif 

D: Gửi xây dựng để thử nghiệm.

Chủ đề này có thể đã được đề cập nhiều lần. Tôi không thích quá trình thử nghiệm Beta của Apple. Có rất nhiều giải pháp khác. Người tôi thích là Beta bởi Crashlytics.

Bạn có thể đọc về nó ở đây: http://try.crashlytics.com/beta/

tôi triển khai xây dựng cấu hình adhoc để thử nghiệm vì nó được xây dựng với cấu hình Adhoc provisioning cho phép tôi để triển khai nó trên 100 thiết bị mà không cần của Apple phê duyệt.

2

Đối với Android

  • Để cài đặt cả hai trên cùng một thiết bị cùng một lúc, sử dụng tên gói khác nhau cho các ứng dụng

com.company.testapp - Đối với các ứng dụng trong dàn dựng

com.company.live - Đối với ứng dụng ở chế độ trực tiếp

  • Để tương tác với máy chủ, hãy sử dụng (các) URL khác nhau trong cả hai ứng dụng, ví dụ: lưu trữ url trong một số tệp và sử dụng giống như biến tĩnh.

  • Triển khai mã thông báo GCM/đẩy cho cả hai trên các máy chủ khác nhau.

+0

Xin cảm ơn @prateek. Nó hoạt động tốt cho tôi. Đối với người xem trong tương lai, đây là cách để thay đổi tên gói nhanh chóng và độc đáo trong Android Studio: http://stackoverflow.com/questions/16804093/android-studio-rename-package – nigong

Các vấn đề liên quan