2012-11-27 41 views
6

Tôi hiểu bằng cách sử dụng chỉ thị NETFX_CORE, như thế này:Nếu NETFX_CORE dành cho Windows 8, điều gì là dành cho Windows Phone 8?

#if NETFX_CORE 
    // Windows 8 
#else 
    // Windows Phone 8 
#endif 

Thông tin thêm: http://msdn.microsoft.com/en-us/library/windowsphone/develop/jj714084(v=vs.105).aspx

Nhưng có một chỉ thị cụ thể cho Windows Phone 8?

+1

Liên kết là cho phát triển NET, nhưng câu hỏi wasn không được gắn thẻ theo cách nào. Tôi có phải là chủ yếu về .NET? Phát triển bản địa sẽ có các định nghĩa khác nhau. –

+0

Um, NETFX_CORE loại ngụ ý công nghệ, xin lỗi nếu bạn bỏ lỡ điều đó. –

Trả lời

9

Vâng, chỉ thị Windows Phone là:

#if WINDOWS_PHONE 

Đây là tài liệu here, nhưng tôi ngạc nhiên rằng nó không được đề cập here. Tôi cũng đã thử nghiệm điều này trong một số mã, và nó hoạt động.

+0

Và đối với các dự án nhắm mục tiêu ** Windows 8.1 ** và ** Windows Phone 8.1 **, chúng sẽ là 'WINDOWS_APP' và' WINDOWS_PHONE_APP'. – Sevenate

1

Theo tôi biết, không có chỉ thị như vậy. Nhưng bạn có thể sử dụng nếu không muốn nói:

#if !NETFX_CORE 
    // Windows Phone 8 
#endif 
+1

Haha! Không chính xác những gì tôi muốn nói, nhưng điều đó thật buồn cười. –

0

Nhưng có chỉ thị cụ thể cho Windows Phone 8 không?

Bạn có thể xác định chỉ thị tiền xử lý của riêng mình mà bạn biết. WINDOWS_PHONE chỉ xảy ra được xác định bởi các mẫu dự án Visual Studio cho các dự án Windows Phone.

Cùng đi cho DEBUG, TRACE và bất cứ những tùy chỉnh bạn có thể có như EXTENSIVE_LOGGING hoặc LOOKING_FOR_A_CATBUS

4

WP8 nên sử dụng lá cờ biên soạn tùy chỉnh có điều kiện giới thiệu bởi các nhà phát triển. Đọc thêm về chủ đề chính xác này here. Nokia có toàn bộ bài viết dành riêng cho coding for both WP7 and WP8 và tôi thực sự khuyên bạn nên xem xét kỹ tất cả các kỹ thuật để xem những gì tốt nhất để bạn sử dụng.

Xác định biểu tượng biên soạn có điều kiện:

  1. Nhấp chuột phải vào dự án WP 8 và chọn Properties. Mở trang
  2. Tạo trang của Trình thiết kế dự án và chèn WP8 vào các ký hiệu biên dịch có điều kiện . Sau đó, họ nên chứa một cái gì đó giống như này: Silverlight; WINDOWS_PHONE; WP8

Và đây là các mẫu mã nội tuyến

// Separate implementations for different OS versions 
#if WP8 
    // code using enhancements introduced in Windows Phone 8 
#else 
    // code using Windows Phone OS 7.1 features 
#endif 


// A new Windows Phone 8 feature 
#if WP8 
    // code using new Windows Phone 8 feature 
#endif 
+0

bạn có thể vui lòng giúp tôi tôi có cùng một vấn đề http://stackoverflow.com/questions/22094143/macros-in-prefix-pch-file-equivalent-in-wp8 – user2056563

+0

Bạn có nghĩa là # UNITY_WP8 hoặc là WP8 khác nhau? Nếu bạn có nghĩa là UNITY_WP8 thì điều này không chính xác vì nó phải là WINDOWS_PHONE: http://forum.unity3d.com/threads/whats-the-difference-between-if-unity_wp8-and-if-windows_phone.221061/ – ickydime

+0

Ngoài ra, các liên kết đó không còn hoạt động nữa. : / – ickydime

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