2012-10-03 31 views
5

Tôi đang phát triển một ứng dụng iPhone sử dụng SDK Facebook để kết nối với Facebook. SDK yêu cầu mã của tôi đặt ID ứng dụng khi gọi mã trong SDK (ID ứng dụng được đăng ký với Facebook). Tôi muốn mở nguồn dự án này, nhưng rõ ràng là tôi không muốn người khác sử dụng ID ứng dụng của mình. Làm thế nào tôi có thể thiết lập dự án để tôi có thể xây dựng nó bằng cách sử dụng ID ứng dụng của tôi, nhưng những người khác cũng có thể xây dựng dự án bằng cách sử dụng riêng của họ?Làm cách nào để loại trừ khóa bí mật khỏi dự án Xcode nguồn mở?

Trả lời

4

Giả sử bạn đang thêm AppID và bí mật của bạn trong plist của ứng dụng, bạn có thể sửa đổi chương trình xây dựng của bạn cho phát hành xây dựng và thêm một "Đăng Build Command" có thể chạy một kịch bản để làm như sau:

echo -n ${TARGET_BUILD_DIR}/${INFOPLIST_PATH} | xargs -0 /usr/libexec/PlistBuddy -c "Set :<Your Facebook App ID Key> YOUR_APP_ID_HERE" 
echo -n ${TARGET_BUILD_DIR}/${INFOPLIST_PATH} | xargs -0 /usr/libexec/PlistBuddy -c "Set :<Your Facebook Secret Key> YOUR_APP_SECRET_HERE" 

Điều đó sẽ thay đổi giá trị của các mục nhập plist đó thành một số giá trị chung.

Here's a reference to what I'm talking about. Vui lòng điều chỉnh cho phù hợp.

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