2013-04-26 13 views
7

Tôi đang cố gắng kết hợp mã mô phỏng mua hàng cho ứng dụng Windows 8 (Store).Mô phỏng ứng dụng Windows 8 Store mua

Mã này là khá đơn giản và sử dụng Windows API:

var result = await CurrentAppSimulator.RequestProductPurchaseAsync("product", true); 

// this is still false... 
var active = CurrentAppSimulator.LicenseInformation.ProductLicenses["product"].IsActive; 

Cuộc gọi đầu tiên mở ra hộp thoại cho phép tôi để mô phỏng mã trở về từ việc mua.

Ngay cả khi tôi chọn S_OK, dòng tiếp theo vẫn kiểm tra xem giấy phép có đang hoạt động không và trả về false.

Có gì sai ở đây?

+0

Xem câu trả lời tại đây: http://stackoverflow.com/questions/15999604/windows-8-store-app-how-do-i-test-in-app-purchase – mydogisbox

Trả lời

11

Bạn đang cập nhật tệp WindowsStoreProxy.xml? Bạn phải làm điều đó nếu không giao dịch mua sẽ không bao giờ được đặt thành hoạt động. Bạn không cần phải gọi RequestAppPurchaseAsync... chỉ requestProductPurchaseAsync. Làm điều này ...

Chạy ứng dụng của bạn trong chế độ gỡ lỗi vi phạm bất cứ nơi nào mở QuickWatch (Shift + F9) và nhập Windows.Storage.ApplicationData.current.roamingFolder.path và sao chép các giá trị (tôi đã C:\Users\jerfost\AppData\Local\Packages\{package name}\LocalState Duyệt đến vị trí đó và mở thư mục Microsoft \ Windows Store \ ApiData mở WindowsStoreProxy.xml tập tin trong một trình soạn thảo văn bản Thay đổi CurrentApp/LicenseInformation/App/IsTrial false Thay đổi CurrentApp/ListingInformation/Product/MarketData/Name tên sản phẩm độc đáo của bạn Điều đó sẽ làm điều đó. Hy vọng điều đó sẽ giúp ích.

+0

IsTrial là thứ đã giết tôi. Cảm ơn! hoạt động ngay bây giờ. –

+0

Vui mừng được giúp bạn –

+0

còn ProductId thì sao? Bạn cũng phải thay đổi ProductId thành tên sản phẩm duy nhất, phải không? –

3

Bạn không phải tự chỉnh sửa XML mọi lúc, CurrentAppSimulator thực hiện tự động.

Chỉ cần kiểm tra thiết lập của bạn trong WindowsStoreProxy.xml và đảm bảo rằng 'IsTrial' được thiết lập 'false'-

<LicenseInformation> 
    <App> 
     <IsActive>true</IsActive> 
     <IsTrial>false</IsTrial> 
    </App> 
    <Product ProductId="1"> 
     <IsActive>false</IsActive> 
    </Product> 
</LicenseInformation> 

Ghi - In-app mua không hoạt động trong thử nghiệm phiên bản của ứng dụng.