Google Analytics libAdIdAccess.a không chứa mã bit


83

Xcode 7 beta 3 vừa cài đặt một số "thành phần bổ sung" (hiện tại là Phiên bản 7.0 beta 3 (7A152u)) và bây giờ tôi gặp lỗi trình biên dịch:

ld: '/<abbreviated>/Vendor/Analytics/GoogleAnalytics/libAdIdAccess.a(TAGActualAdIdAccess.o)' does not contain bitcode. You must rebuild it with bitcode enabled (Xcode setting ENABLE_BITCODE), obtain an updated library from the vendor, or disable bitcode for this target. for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Google Code này bài là chỉ đề cập đến tôi đã tìm thấy cho GA và bitcode.

Sẽ thật tuyệt nếu tôi có thể vô hiệu hóa nó chỉ cho thư viện này thay vì vô hiệu hóa bitcode hoàn toàn. Điều đó có thể không?

Câu trả lời này cung cấp một công việc xung quanh việc mã bit được bật theo mặc định và đây cuối cùng có thể là bản dupe của câu hỏi chung chung hơn đó.


3
Tôi nghi ngờ Google sẽ cập nhật nguồn công khai & Cocoapods của họ khi Xcode 7 ra mắt.
Michael Dautermann

2
Đó là hội chợ - trong khi chờ đợi, tôi vô hiệu hóa bitcode theo mặc định như tôi đã nêu trong câu hỏi của tôi
bdalziel

3
Với Xcode 7.0 GM seed, nó vẫn bị lỗi, nhưng tôi chưa thấy bản cập nhật GA.
DiscDev

Từ kinh nghiệm, GA có thể mất vài tuần ...
Vinzius

1
@MichaelDautermann XCode7 và iOS9 đều ở đây và không có gì mới từ Google
Kubba

Câu trả lời:


76

Cập nhật:

Tin vui cho mọi người!

Google Analytics hiện hỗ trợ Bitcode với bản phát hành 3.14 của họ. Bạn có thể lấy nó từ các nguồn tải xuống của họ, tuy nhiên nó vẫn chưa được liệt kê trên Cocoapods.

Tải xuống Google Analytics SDK

Thay đổi nhật ký

Nguyên:

Google cần biên dịch SDK phân tích của họ thành một thư viện mã bit. Tuy nhiên, từ kinh nghiệm trước đây với việc Google cập nhật thư viện của họ lên 64-bit, mất hơn nửa năm.

Lời khuyên của tôi là nếu bạn không hỗ trợ watchOS, chúng tôi có thể đợi nó ra, phải

  1. Cài đặt bản dựng

  2. Bật Bitcode

  3. Đặt thành Không

Nếu bạn đang hỗ trợ watchOS, hãy sử dụng một công cụ phân tích khác ngay bây giờ.

Thông tin thêm:

Có các nhà phát triển đang nói về nó trên diễn đàn google tại đây: https://groups.google.com/forum/#!topic/ga-mobile-app-analytics/d6ML4BKBBeY

Facebook và Fabric.io (Crashlytics, TwitterKit) đã cập nhật để sử dụng bitcode, vì vậy về mặt kỹ thuật sẽ không quá khó để Google làm theo. Tôi tin rằng kiểu kìm hãm này là chính trị. Những người mất nhiều nhất là người dùng của chúng tôi.


5
Tại sao họ làm vậy, hoặc không hỗ trợ iOS hoặc nâng cấp công cụ của bạn lên phiên bản mới. Chúng tôi đã có bản beta trong một thời gian dài và nó sẽ được phát hành sau một tuần hoặc lâu hơn
MKoosej 14/09/15

Yup, bực bội phải không? Tôi đã hỏi lại những câu hỏi tương tự khi có quá trình chuyển đổi 64-bit.
David Wong

Cảm ơn bạn đã cung cấp thêm thông tin cụ thể là @DavidWong và đặt lại câu trả lời phổ biến: stackoverflow.com/a/30856364/822164
bdalziel

2
Sử dụng một số SDK của bên thứ 3 dành cho iOS. Google là người duy nhất vẫn chưa cập nhật thông tin của họ. Tôi đang bỏ Google SDK và có thể sẽ không thêm lại. Quá nhiều rắc rối.
Ville Laurikari

3
Cần lưu ý rằng nếu bạn đang sử dụng pod cấp cao nhất, chẳng hạn như Google/Analytics, thì bitcode sẽ không hoạt động, ngay cả với 3.14. Bạn cần sử dụng GoogleAnalyticspod để thay thế.
Cristik

4

Chào mừng bạn quay trở lại năm 2013, như @ david-wong đã đề cập, phải mất một năm Google mới hỗ trợ arm64. Bất cứ khi nào Apple thông báo thay đổi hoặc yêu cầu đối với chuỗi công cụ, nhóm Google ios SDK phải mất nhiều năm để cập nhật lib tĩnh của họ. Chỉ để đặt kỳ vọng của bạn, gần đây họ chỉ thừa nhận rằng hỗ trợ bitcode là vấn đề "ưu tiên cao", mặc dù ứng dụng cắt / bitcode đã được công bố vào ngày 8 tháng 6 năm 2015. Nếu bạn đang sử dụng GA trong mục tiêu chính của mình, GA sẽ ngăn bạn từ việc sử dụng lợi ích vô cùng quý giá của việc cắt lát kiến ​​trúc.

Vô hiệu hóa bitcode không phải là một giải pháp thay thế mà chỉ là vô hiệu hóa hỗ trợ bitcode. Hy vọng rằng ai đó quản lý GA thấy điều này và quyết định biến ios trở thành công dân hạng nhất.


2

Google vừa cập nhật SDK Google Analytics và Trình quản lý thẻ của Google (phiên bản 3.14) để hỗ trợ Bitcode, vì vậy bạn có thể cập nhật thư viện và biên dịch ứng dụng của mình bằng cách sử dụng cờ "Bật Bitcode - Có".

Tải xuống trang

Đương dân trực tiêp


1
Cần lưu ý rằng nếu bạn đang sử dụng một nhóm cấp cao nhất, chẳng hạn như Google/Analytics, thì bitcode sẽ không hoạt động, ngay cả với 3.14. Bạn cần sử dụng GoogleAnalyticspod để thay thế.
Cristik

2

Nâng cấp sdk GoogleAnalytics của bạn bằng pod.

  1. Mở thiết bị đầu cuối
  2. Đi tới thư mục dự án của bạn
  3. pod init
  4. Mở tệp nhóm được tạo trong thư mục dự án của bạn
  5. Viết những dòng sau

    platform :ios, '10.0'
    
    target “GoogleAnalyticsTestApp” do
       pod 'GoogleAnalytics'
       pod 'GoogleIDFASupport'
    end
    

Điều này sẽ giải quyết lỗi. Từ các liên kết sau, bạn có thể thêm Api của Google:

1. http://cocoapods.org/pods/GoogleAnalytics

2. http://developers.google.com/ios/guides/cocoapods


[ Cocoapods.org/pods/GoogleAnalytics] [ developers.google.com/ios/guides/cocoapods] Từ link này bạn có thể thêm bất kỳ API của Google dành cho iOS
Rubaiyat Jahan Mumu

1

Nếu bạn đang sử dụng cocoapod, bạn có thể thêm cái này vào cuối Podfile:

post_install do |installer|
    installer.pods_project.targets.each do |target|
        target.build_configurations.each do |config|
            config.build_settings['ENABLE_BITCODE'] = 'NO'
        end
    end
end

Điều này sẽ lặp lại qua tất cả các nhóm và đánh dấu ENABLE_BITCODE đã tắt. Đương nhiên, bạn sẽ không thể biên dịch cho đồng hồ / apple tv (vì họ yêu cầu nó trên một số phiên bản).

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.