ezet / evelib

Eve Online Library.NET is an open source C# wrapper for CCPs Eve Online API and other popular Eve Online APIs.
Apache License 2.0
71 stars 36 forks source link

Univeral App support #62

Open ezet opened 8 years ago

ezet commented 8 years ago

Trying to install this in a Universal app project in VS2015 and I'm getting an error message stating that all of the packages are "not compatible with UAP,Version=v10.0 (win10-x64-aot)".

Malketh commented 8 years ago

Expanding on my post on the Eve Forums, here's the full output from an attempted install. I preemptively apologize for the verbosity, but thought it might help.

eZet.EveLib 3.0.0 is not compatible with UAP,Version=v10.0. eZet.EveLib.Core 3.0.2 is not compatible with UAP,Version=v10.0. eZet.EveLib.Element43 3.0.0 is not compatible with UAP,Version=v10.0. eZet.EveLib.EveAuth 3.0.0 is not compatible with UAP,Version=v10.0. eZet.EveLib.EveCentral 3.0.0 is not compatible with UAP,Version=v10.0. eZet.EveLib.EveCrest 3.0.0 is not compatible with UAP,Version=v10.0. eZet.EveLib.EveMarketData 3.0.0 is not compatible with UAP,Version=v10.0. eZet.EveLib.StaticData 3.0.0 is not compatible with UAP,Version=v10.0. eZet.EveLib.EveWho 3.0.0 is not compatible with UAP,Version=v10.0. eZet.EveLib.EveXml 3.0.1.4 is not compatible with UAP,Version=v10.0. eZet.EveLib.ZKillboard 3.0.2 is not compatible with UAP,Version=v10.0. Some packages are not compatible with UAP,Version=v10.0.

eZet.EveLib 3.0.0 is not compatible with UAP,Version=v10.0 (win10-arm). eZet.EveLib.Core 3.0.2 is not compatible with UAP,Version=v10.0 (win10-arm). eZet.EveLib.Element43 3.0.0 is not compatible with UAP,Version=v10.0 (win10-arm). eZet.EveLib.EveAuth 3.0.0 is not compatible with UAP,Version=v10.0 (win10-arm). eZet.EveLib.EveCentral 3.0.0 is not compatible with UAP,Version=v10.0 (win10-arm). eZet.EveLib.EveCrest 3.0.0 is not compatible with UAP,Version=v10.0 (win10-arm). eZet.EveLib.EveMarketData 3.0.0 is not compatible with UAP,Version=v10.0 (win10-arm). eZet.EveLib.StaticData 3.0.0 is not compatible with UAP,Version=v10.0 (win10-arm). eZet.EveLib.EveWho 3.0.0 is not compatible with UAP,Version=v10.0 (win10-arm). eZet.EveLib.EveXml 3.0.1.4 is not compatible with UAP,Version=v10.0 (win10-arm). eZet.EveLib.ZKillboard 3.0.2 is not compatible with UAP,Version=v10.0 (win10-arm). Some packages are not compatible with UAP,Version=v10.0 (win10-arm).

eZet.EveLib 3.0.0 is not compatible with UAP,Version=v10.0 (win10-arm-aot). eZet.EveLib.Core 3.0.2 is not compatible with UAP,Version=v10.0 (win10-arm-aot). eZet.EveLib.Element43 3.0.0 is not compatible with UAP,Version=v10.0 (win10-arm-aot). eZet.EveLib.EveAuth 3.0.0 is not compatible with UAP,Version=v10.0 (win10-arm-aot). eZet.EveLib.EveCentral 3.0.0 is not compatible with UAP,Version=v10.0 (win10-arm-aot). eZet.EveLib.EveCrest 3.0.0 is not compatible with UAP,Version=v10.0 (win10-arm-aot). eZet.EveLib.EveMarketData 3.0.0 is not compatible with UAP,Version=v10.0 (win10-arm-aot). eZet.EveLib.StaticData 3.0.0 is not compatible with UAP,Version=v10.0 (win10-arm-aot). eZet.EveLib.EveWho 3.0.0 is not compatible with UAP,Version=v10.0 (win10-arm-aot). eZet.EveLib.EveXml 3.0.1.4 is not compatible with UAP,Version=v10.0 (win10-arm-aot). eZet.EveLib.ZKillboard 3.0.2 is not compatible with UAP,Version=v10.0 (win10-arm-aot). Some packages are not compatible with UAP,Version=v10.0 (win10-arm-aot).

eZet.EveLib 3.0.0 is not compatible with UAP,Version=v10.0 (win10-x86). eZet.EveLib.Core 3.0.2 is not compatible with UAP,Version=v10.0 (win10-x86). eZet.EveLib.Element43 3.0.0 is not compatible with UAP,Version=v10.0 (win10-x86). eZet.EveLib.EveAuth 3.0.0 is not compatible with UAP,Version=v10.0 (win10-x86). eZet.EveLib.EveCentral 3.0.0 is not compatible with UAP,Version=v10.0 (win10-x86). eZet.EveLib.EveCrest 3.0.0 is not compatible with UAP,Version=v10.0 (win10-x86). eZet.EveLib.EveMarketData 3.0.0 is not compatible with UAP,Version=v10.0 (win10-x86). eZet.EveLib.StaticData 3.0.0 is not compatible with UAP,Version=v10.0 (win10-x86). eZet.EveLib.EveWho 3.0.0 is not compatible with UAP,Version=v10.0 (win10-x86). eZet.EveLib.EveXml 3.0.1.4 is not compatible with UAP,Version=v10.0 (win10-x86). eZet.EveLib.ZKillboard 3.0.2 is not compatible with UAP,Version=v10.0 (win10-x86). Some packages are not compatible with UAP,Version=v10.0 (win10-x86).

eZet.EveLib 3.0.0 is not compatible with UAP,Version=v10.0 (win10-x86-aot). eZet.EveLib.Core 3.0.2 is not compatible with UAP,Version=v10.0 (win10-x86-aot). eZet.EveLib.Element43 3.0.0 is not compatible with UAP,Version=v10.0 (win10-x86-aot). eZet.EveLib.EveAuth 3.0.0 is not compatible with UAP,Version=v10.0 (win10-x86-aot). eZet.EveLib.EveCentral 3.0.0 is not compatible with UAP,Version=v10.0 (win10-x86-aot). eZet.EveLib.EveCrest 3.0.0 is not compatible with UAP,Version=v10.0 (win10-x86-aot). eZet.EveLib.EveMarketData 3.0.0 is not compatible with UAP,Version=v10.0 (win10-x86-aot). eZet.EveLib.StaticData 3.0.0 is not compatible with UAP,Version=v10.0 (win10-x86-aot). eZet.EveLib.EveWho 3.0.0 is not compatible with UAP,Version=v10.0 (win10-x86-aot). eZet.EveLib.EveXml 3.0.1.4 is not compatible with UAP,Version=v10.0 (win10-x86-aot). eZet.EveLib.ZKillboard 3.0.2 is not compatible with UAP,Version=v10.0 (win10-x86-aot). Some packages are not compatible with UAP,Version=v10.0 (win10-x86-aot).

eZet.EveLib 3.0.0 is not compatible with UAP,Version=v10.0 (win10-x64). eZet.EveLib.Core 3.0.2 is not compatible with UAP,Version=v10.0 (win10-x64). eZet.EveLib.Element43 3.0.0 is not compatible with UAP,Version=v10.0 (win10-x64). eZet.EveLib.EveAuth 3.0.0 is not compatible with UAP,Version=v10.0 (win10-x64). eZet.EveLib.EveCentral 3.0.0 is not compatible with UAP,Version=v10.0 (win10-x64). eZet.EveLib.EveCrest 3.0.0 is not compatible with UAP,Version=v10.0 (win10-x64). eZet.EveLib.EveMarketData 3.0.0 is not compatible with UAP,Version=v10.0 (win10-x64). eZet.EveLib.StaticData 3.0.0 is not compatible with UAP,Version=v10.0 (win10-x64). eZet.EveLib.EveWho 3.0.0 is not compatible with UAP,Version=v10.0 (win10-x64). eZet.EveLib.EveXml 3.0.1.4 is not compatible with UAP,Version=v10.0 (win10-x64). eZet.EveLib.ZKillboard 3.0.2 is not compatible with UAP,Version=v10.0 (win10-x64). Some packages are not compatible with UAP,Version=v10.0 (win10-x64).

eZet.EveLib 3.0.0 is not compatible with UAP,Version=v10.0 (win10-x64-aot). eZet.EveLib.Core 3.0.2 is not compatible with UAP,Version=v10.0 (win10-x64-aot). eZet.EveLib.Element43 3.0.0 is not compatible with UAP,Version=v10.0 (win10-x64-aot). eZet.EveLib.EveAuth 3.0.0 is not compatible with UAP,Version=v10.0 (win10-x64-aot). eZet.EveLib.EveCentral 3.0.0 is not compatible with UAP,Version=v10.0 (win10-x64-aot). eZet.EveLib.EveCrest 3.0.0 is not compatible with UAP,Version=v10.0 (win10-x64-aot). eZet.EveLib.EveMarketData 3.0.0 is not compatible with UAP,Version=v10.0 (win10-x64-aot). eZet.EveLib.StaticData 3.0.0 is not compatible with UAP,Version=v10.0 (win10-x64-aot). eZet.EveLib.EveWho 3.0.0 is not compatible with UAP,Version=v10.0 (win10-x64-aot). eZet.EveLib.EveXml 3.0.1.4 is not compatible with UAP,Version=v10.0 (win10-x64-aot). eZet.EveLib.ZKillboard 3.0.2 is not compatible with UAP,Version=v10.0 (win10-x64-aot). Some packages are not compatible with UAP,Version=v10.0 (win10-x64-aot).

chosenonehacks commented 8 years ago

Well, eZet.EveLib wasn't build for Win RT and/or currently UWP, so eaven easy fix with nuget package version change won't help. Author or contributors must rewrite most of the code to be able use it in UWP projects.

ezet commented 8 years ago

I won't be able to make it a WinRT library regardless, but I might be able to convert it to a regular UWP static library. If I'm not mistaken, I should be able to just create new projects using the existing source, and it should work, more or less? Do you know if these libraries will be usable by non UWP projects ?

chosenonehacks commented 8 years ago

I saw your code, and there is quite few things that's need to be changed, for example in class ImageRequestHandler, you use often WebClient class which is not available on UWP platform. Regarding your question I never try any conversion tools. But if you can use it on UWP platform then you should probably could use it easily on full latest .Net Framework in desktop/web projects.

ezet commented 8 years ago

Ah, okay. Thanks for your insight. I could remove the use of WebClient, but I also use eg. Json.NET, which Im not sure supports UWP. And Also The XmlSerializer, DataContractSerializer and some other things. I will probably have to put this off for some time then, as I'm focusing on other things now such as CREST write support. Thanks for the input :) If anyone wants to try and do a conversion, feel free to do so.

On Fri, Oct 30, 2015 at 11:52 AM, hal9k2 notifications@github.com wrote:

I saw your code, and there is quite few things that's need to be changed, for example in class ImageRequestHandler, you use often WebClient class which is not available on UWP platform. Regarding your question I never try any conversion tools. But if you can use it on UWP platform then you should probably could use it easily on full latest .Net Framework in destkop/web projects.

— Reply to this email directly or view it on GitHub https://github.com/ezet/evelib/issues/62#issuecomment-152494403.

Malketh commented 8 years ago

Json.NET does work, I was using it briefly in my app until I realized I didn't really need all of that for what little json I was doing.

ajmcateer commented 8 years ago

I am working on removing the webclient from the Core API. Quick Question webclient has a method DownloadFileTaskAsync I can download it using an HttpClient and use a streamwriter to write to a file but it looks like the RequestImageAsync returns a task. Not sure what to return with the new method.

Also for RequestImageDataAsync I am not sure what to return is the response does not equal a success(not all code paths return a value so something has to be done). I apologize if these are simple questions I have been teaching myself to program and need an eve api that works with UWA. I thought I would do what I can to help.

    public async Task<byte[]> RequestImageDataAsync(Uri uri)
    {
        using (var client = new HttpClient())
        {
            var response = await client.GetAsync(uri);

            if (response.IsSuccessStatusCode)
            {
                var responseContent = response.Content;

                return await responseContent.ReadAsByteArrayAsync();
            }
        }
    }
ezet commented 8 years ago

ajmcateer: Did you get anywhere on this conversion? I think you should return a new Task with an empty byte array. Task.FromResult(default(byte[]));