2012-11-10 19 views
6

Chúng tôi đã có một ứng dụng được phát triển gần đây bị Apple từ chối. Đây là lời giải thích của họ:Apple từ chối ứng dụng vì nó đang truyền địa chỉ MAC mà không có sự cho phép của người dùng

Chúng tôi thấy ứng dụng của bạn không được sự đồng ý của người dùng trước khi thu thập dữ liệu cá nhân của người dùng theo yêu cầu của Hướng dẫn đánh giá cửa hàng ứng dụng.

Cụ thể, các ứng dụng của bạn sẽ gửi địa chỉ MAC của thiết bị mà không cần sự cho phép của người dùng . Ứng dụng của bạn cũng sẽ gửi thông tin liên hệ của thiết bị mà không có sự cho phép của người dùng.

Để thu thập dữ liệu cá nhân với ứng dụng của bạn, bạn phải rõ ràng với người dùng rằng dữ liệu cá nhân của họ sẽ được tải lên máy chủ của bạn và bạn phải có được sự đồng ý của người dùng trước khi dữ liệu được tải lên.

iOS 6 bao gồm các khóa mới để chỉ định lý do ứng dụng sẽ truy cập dữ liệu được bảo vệ của người dùng. Khi lời nhắc truy cập được hiển thị, mục đích được chỉ định trong các phím này được hiển thị trong hộp thoại đó. Nếu ứng dụng của bạn sẽ truyền dữ liệu người dùng được bảo vệ, chuỗi sử dụng trong yêu cầu truy cập của bạn phải thông báo rõ ràng cho người dùng rằng dữ liệu của họ sẽ được tải lên máy chủ của bạn nếu họ đồng ý.

Để biết thêm thông tin về các khóa này, vui lòng xem Thông tin Tham chiếu khóa danh sách thuộc tính.

Chúng tôi đang sử dụng chuỗi công cụ RubyMotion và không truy cập địa chỉ MAC ở bất kỳ đâu trong ứng dụng của chúng tôi. Chúng tôi nghĩ rằng nó có thể là một trong những SDK hoặc đá quý mà chúng tôi đang sử dụng.

Gemfile:

source :rubygems 

gem 'bubble-wrap', :git => 'https://github.com/rubymotion/BubbleWrap.git' 
gem 'teacup' 
gem 'rake' 
gem "cocoapods", "0.13.0" 
gem 'motion-cocoapods', "1.1.0" 
gem 'motion-testflight' 
gem 'motion-table' 
gem "Parsistence" 
gem 'formotion' 
gem "ProMotion" 
gem "motion-addressbook" 

duy nhất các cuộc gọi api bên ngoài là để Parse.com và testflight, như chúng ta đang sử dụng cả hai SDK.

Phân tích cú pháp cho biết rằng họ không thu thập địa chỉ MAC và Testflight không trừ khi bạn làm như vậy.

Chúng tôi cũng đang sử dụng những vỏ ca cao:

'NSData + MD5Digest'

'MBProgressHUD'

'ASIHTTPRequest'

'PHFRefreshControl'

'JSONKit '

Câu hỏi: Có bất kỳ đá quý hoặc Cocoapod nào nào gọi địa chỉ MAC không?

+0

hi Silasj, một trong những trò chơi của tôi bị từ chối cho cùng lý do, bạn có giải pháp? – Guru

+2

@Guru Chúng tôi đã phải loại bỏ testflight khỏi quá trình xây dựng sản xuất và Apple đã chấp nhận nó sau đó. – silasjmatson

+0

ở đây chúng tôi không sử dụng testFlight, bất kỳ ý tưởng về sdk facebook sdk/RevMobAds/Nextpeer/Chartboost/TouchJSON – Guru

Trả lời

0

Tôi muốn tưởng tượng chuyến bay thử nghiệm hoặc Parse có khả năng truy xuất địa chỉ MAC và thậm chí nếu họ không gửi, Apple có thể chỉ thấy rằng họ đang truy cập và gửi một thứ gì đó.Tôi giả định điều này bởi vì nó sẽ thực sự tồi tệ nếu bất kỳ thư viện nào trong số này gửi một phiên bản địa chỉ MAC không mã hóa qua mạng, vì vậy có lẽ Apple chỉ có thể thấy sự truy cập của nó. Bạn có cơ hội sử dụng mạng quảng cáo trong ứng dụng của mình không?

+0

Không, không có bất kỳ quảng cáo nào trong ứng dụng. – silasjmatson

+2

Một số thư viện khác mà bạn liệt kê chỉ là mã và không phải là thư viện được biên dịch trước. Tôi muốn tìm kiếm bao gồm như: #include #include #include #include để xem nếu có được truy cập vào địa chỉ MAC – rooster117

+0

Tôi cũng sẽ không tính toán phân tích cú pháp hoặc chuyến bay thử nghiệm. Sau khi UDID không được chấp nhận, địa chỉ MAC là mã nhận dạng thiết bị duy nhất được đảm bảo duy nhất và tôi có thể tưởng tượng rằng họ đang sử dụng nó cho một số xác minh thiết bị ở cuối của họ. – rooster117

0

Nếu bạn muốn đánh hơi lưu lượng truy cập từ thiết bị của mình để xem nội dung nào đang được gửi, hãy thử sử dụng Charles.

4

Nâng cấp TestFlight lên SDK mới nhất để khắc phục sự cố này. Từ Release Notes của họ:

1.2.5 - 01 tháng 5 năm 2013

Removed bất kỳ quyền truy cập vào địa chỉ mac

Added AdSupport.framework yêu cầu

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