Nếu SDK iOS không có chức năng này, thì nếu tôi có trang web cơ bản (tĩnh) và một nơi nào đó trên trang web đó, tôi sẽ đặt một đoạn dữ liệu chỉ định phiên bản ứng dụng mới nhất của tôi theo cách thủ công trong cửa hàng ứng dụng mỗi khi tôi phát hành bản cập nhật? Tôi làm cách nào để ứng dụng truy vấn trang web cho dữ liệu phiên bản đó và kiểm tra nó trên phiên bản đang chạy trên thiết bị iOS?Cách đơn giản nhất để kiểm tra phiên bản ứng dụng hiện tại của bạn so với phiên bản mới nhất trong cửa hàng ứng dụng là gì?
Trả lời
Bạn đang đi đúng hướng. Bạn cần phải thực hiện một yêu cầu HTTP đến trang web phiên bản tĩnh của bạn. Để thực hiện điều này, bạn có thể sử dụng đối tượng NSURLConnection. Vì vậy, một cái gì đó như:
NSURL * url = [NSURL URLWithString:@"http://yourweb.com/version.txt"];
NSURLRequest * request = [NSURLRequest requestWithURL:url cachePolicy:NSURLRequestReturnCacheDataElseLoad timeoutInterval:60];
_connection = [[NSURLConnection alloc] initWithRequest:request delegate:self];
Sau đó, trong việc thực hiện uỷ quyền của bạn:
(void)connection:(NSURLConnection*)connection didReceiveResponse:(NSHTTPURLResponse*)response
{
if(response.statusCode != 200)
// you got an error
}
- (void)connection:(NSURLConnection*)connection didFailWithError:(NSError*)error
{
// again with the errors ...
}
// you got some data ... append it to your chunk
// in your case all the data should come back in one callback
- (void)connection:(NSURLConnection*)connection didReceiveData:(NSData*)data
{
[mData appendData:data];
}
- (void)connectionDidFinishLoading:(NSURLConnection *)connection
{
// your request finished ... check the version here
}
Vì vậy, trong bạn connectionDidFinishLoading bạn có một cái nhìn tại mData mà bạn đã thu thập được. Phân tích cú pháp số phiên bản và so sánh số phiên bản với số phiên bản gói của bạn:
[self infoValueForKey:@"CFBundleVersion"];
rất đơn giản, sẽ hoạt động tốt, cảm ơn bạn! – BeachRunnerFred
@BeachRunnerJoe Không có vấn đề gì. :) – RedBlueThing
Vấn đề là CFBundleVersion là sai lầm dân cư với số lượng xây dựng, không phải là phiên bản. Dùng thử trong Xcode: Đặt số bản dựng khác với phiên bản ứng dụng của bạn. Cuộc gọi ở trên sẽ trả về số bản dựng, vì Xcode điền vào số không chính xác. Nó đặt số bản dựng vào phiên bản gói. Thay vào đó, sử dụng – Oscar
Tôi đã sử dụng cùng một giải pháp @RedBlueThing được đề xuất trong nhiều ứng dụng của tôi. Tôi đã chia tỷ lệ cho dịch vụ mà các nhà phát triển ứng dụng khác có thể sử dụng tại CleverStork - một Người quản lý cập nhật cho Ứng dụng. Hy vọng các bạn thích nó :)
Bạn có thể thực hiện truy vấn như http://itunes.apple.com/en/lookup?bundleId=com.easi6.doorsndots đến AppStore.
Trả về JSON có thông tin phiên bản (hiện tại trên AppStore) có thể được so sánh với thông tin khác trong gói.
- 1. Tải xuống ứng dụng cửa hàng ứng dụng phiên bản trước đó của ứng dụng thay vì mới nhất
- 2. Phiên bản mới của một ứng dụng
- 3. Mã để kiểm tra các bản cập nhật, cài đặt phiên bản mới của ứng dụng
- 4. Cách tốt nhất để phiên bản ứng dụng đường ray là gì?
- 5. cách kiểm tra phiên bản jre bằng ứng dụng java
- 6. Tôi cần làm gì để nâng cấp ứng dụng lên phiên bản Rails mới nhất?
- 7. AppEngine: Tải phiên bản ứng dụng phân phối hiện tại
- 8. Kiểm tra phiên bản ứng dụng của tôi theo lập trình trong thị trường Android
- 9. Xóa phiên bản ứng dụng mới trong iTunes kết nối
- 10. Phiên bản WebSphere MQ Client mới nhất là gì?
- 11. Ứng dụng iPhone - cho thấy rằng người dùng cập nhật lên phiên bản mới nhất
- 12. Làm cách nào để tải phiên bản đã xuất bản hiện tại trong ứng dụng .NET?
- 13. Kiểm tra phiên bản .Net từ ứng dụng WinForms
- 14. Ứng dụng iPhone Cập nhật phiên bản mới
- 15. Cách nhanh nhất để kiểm tra lại việc di chuyển dữ liệu lõi iPhone sang phiên bản mới là gì?
- 16. Kiểm tra phiên bản Node hiện tại
- 17. Hành vi ứng dụng iOS sau khi cài đặt phiên bản mới từ cửa hàng ứng dụng
- 18. Phiên bản mới nhất của gcc để sử dụng libstdC++. So.5
- 19. Android cách xuất bản phiên bản beta của ứng dụng
- 20. Tại sao ứng dụng của tôi luôn sử dụng phiên bản GAC mới nhất thay vì phiên bản được tham chiếu?
- 21. Sử dụng Tortoise SVN, làm cách nào để tải xuống phiên bản mã nguồn mới nhất của ứng dụng CodePlex?
- 22. Phiên bản ứng dụng iOS
- 23. Sử dụng Maven, Git: Làm cách nào để gắn thẻ phiên bản mới nhất của mã?
- 24. Không thể xuất bản phiên bản ứng dụng đã cập nhật trong Cửa hàng Google Play
- 25. TFS nhận phiên bản mới nhất với các tệp mới
- 26. Bản địa hóa cho ứng dụng iPhone - cách tiếp cận của bạn là gì?
- 27. Phân phối phiên bản phát triển của ứng dụng iPhone
- 28. Cài đặt mọi phiên bản hoặc phiên bản mới nhất là đủ?
- 29. Cách phân phối nhiều phiên bản ứng dụng của tôi?
- 30. Cách tốt để xử lý số phiên bản trong một ứng dụng Java là gì?
Tôi tự hỏi tại sao Apple không cung cấp cơ chế để kiểm tra thông tin đó thông qua khung công tác iTunes hay gì đó. –