-
Notifications
You must be signed in to change notification settings - Fork 714
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open Database fails on Windows 10 Release Build [Store -> Create app packages] #563
Comments
In general use with Ionic is not covered by free support. I recommend that you start with https://github.com/litehelpers/Ionic-sqlite-database-example and try one thing at a time until you find out what does and does not work. In case you do find an isolated, reproducible issue with the plugin please report it for the benefit of others. |
OK, so I started out with a plain cordova App in VisualStudio Community 2015. The app is working debug/release up to the point where I want to create the store upload packages. Then I get a compilation error: Error MSB3030 Datei "C:\work\VisualStudio\SQLiteTest2\SQLiteTest2\plugins\cordova-sqlite-storage\src\windows\SQLite3-Win-RT\SQLite3\SQLite3.UWP\Debug\SQLite3.UWP\SQLite3.winmd" konnte nicht kopiert werden, da die Datei nicht gefunden wurde. [C:\work\VisualStudio\SQLiteTest2\SQLiteTest2\platforms\windows\CordovaApp.Windows10.jsproj] Which basically says the file "...plugins\cordova-sqlite-storage\src\windows\SQLite3-Win-RT\SQLite3\SQLite3.UWP\Debug\SQLite3.UWP\SQLite3.winmd" is not present. There is a SQLite3.winmd file in the "arm" subfolder though, so I simply tried to copy it to the demanded location just to try it out. Its compiling, but I get the same error as described before with the ionic version. The database could not be opened. Any suggestions? |
There was a problem building the native SQLite3 library. Please show the entire output from the build log. |
This is what I get in the output console:
|
For some reason your tool tries to copy SQLite3.winmd from a Debug directory even though you requested a release build. Unfortunately I cannot think of a decent explanation for this. |
When selecting Store->Create App packages then some settings are put into the ".../platform/windows/CordovaApp.Windows10.jsproj" File. If the following entry is present, the build fails:
If removed, at least building the app works. But I just can't produce a working store upload package. |
Hmm, I haven't seen this before. I think some others were able to publish to Windows store. You may want to try updating your copy of Visual Studio. If it still does not work you may want to try Stack Overflow or perhaps even the PhoneGap forum? |
Visual Studio tools for Apache Cordova (TACO) should be able to support a Windows Store release build. TACO support for this plugin was announced in: http://taco.visualstudio.com/en-us/docs/release-update-10/ |
Is there a solution to this issue already? I am facing the very same problem (using latest version of Visual Studio 2015 and version 1.4.8 of this plugin): I am trying a release build for creating a app package for upload to the store and it fails with error message that the SQLite3.winmd could not be copied (by the way: Visual Studio also tries to copy it from the Debug directory although it is a release build: plugins\cordova-sqlite-storage\src\windows\SQLite3-Win-RT\SQLite3\SQLite3.UWP\Debug\SQLite3.UWP\SQLite3.winmd) However, I also searched the plugin directory for a "SQLite3.winmd" file and it does not exist anywhere inside of it. |
An update because I was curious that the SQLite3.winmd did not exist at all: I had removed and added the plugin before this build. So what happens ist that: Once that happened, this plugin is not build any more during the build process (therefore the "SQLite3.winmd" was missing completly). Once I remove the lines from the CordovaApp.Windows10.jsproj, the projects build correctly again. However, this bug prevents me from building an app store package. So, I hope anybody can fix this issue. |
I didn't find any solutions and ended up removing this plugin alltogether. I'm now storing the data on the file system and use a caching mechanism to maintain access speed. |
I have the same issue. I have no idea how all this plugin goes internally, but: Log says it cant find \plugins\cordova-sqlite-storage\src\windows\SQLite3-Win-RT\SQLite3\SQLite3.UWP\Debug\SQLite3.UWP\SQLite3.winmd I checked this project code and there is no src\windows\SQLite3-Win-RT\SQLite3\SQLite3.UWP I dont know if it has something to do with this. EDIT: |
When you install this plugin on the I wonder if this relative path reference may cause a problem with building app packages inside Visual Studio? If so, it may be possible to add another hook script to copy the SQLite3 project and Windows source files. I will probably need a couple months due to current backlog. I would like to get better support from the Cordova tooling in the future as well. Also can you guys try this with Visual Studio tools for Apache Cordova (TACO)? TACO support for this plugin was announced in http://taco.visualstudio.com/en-us/docs/release-update-10/ and the TACO team may be able to support this case faster than I can. |
I already have TACO Update 10. I checked and paths are ok. What is that winmd file for? is it just Sqllite compiled ? why not dll? |
I still think its something about source control and paths. Got it working on My Documents. |
@andreujuanc can you confirm: Did you try building for the app store? Do you see this issue with local builds for testing, only when building for the app store, or something else? Are you able to build for the app store when you work within "My Documents"? You reported results with TACO (Update 10). Did you try this outside TACO and if so, did you get the same results or not? This issue is specifically about building for the app store. If you have trouble with something else then please open a new issue with a clear description. Also if "Team Foundation Server" causes problems then you may simply have to work within "My Documents" or perhaps some other local directory tree. |
In addition I found an excellent description about WinMD files: http://www.codeproject.com/Articles/476957/WINMDplusFilesplusUnderplustheplusHood |
@brodybits Do you see this issue with local builds for testing, only when building for the app store, or something else? Are you able to build for the app store when you work within "My Documents"? Now i will do the following:
If fails, i will do the exact same without git or tfs. EDIT: PS: thanks for link.! |
@andreujuanc your plan definitely looks good for me. Yes in general I think the Windows platform can be a big pain in case of native C++ libraries such as SQLite3. I start to wonder if it may be worth building SQLite3 separately and just using the binary libraries with the Windows JavaScript? |
@brodybits That's probably going to help, since we are missing something in all the building projects inside projects. I think it got too complex to debug without getting your hands "dirty". Right now i have this: Will continue process and update my list from above. |
@vladimir-kotikov is this still an issue with the VS TAC/TACO tools? If so, will this be fixed in VS 2015 or should we wait for this to be fixed in VS 2017? |
I'm not quite sure. I'll try to check if this has been resolved in latest VS TAC/VS 2017 RC tomorrow and let you know. |
Thanks @vladimir-kotikov. Can you confirm the following:
|
To clarify, Tools for Apache Cordova (VS TAC) is available for both VS 2015 and VS 2017 RC. The thing is that VS 2015 and VS 2017 RC ships with different versions of VS TAC (you can check the version of the extension under 'Help' -> 'About' in VS)
In this particular case I mostly meant "VS TAC that comes with VS 2017" :) I've just checked, and the bug still exist in latest 2017 RC, but hopefully it will have been fixed in final release. Unfortunately I don't have any information about whether the new version of VS TAC will be available for VS 2015, sorry :( |
Thanks for the clarification. I will just document this as an issue until you confirm that this is fixed. |
I have a solution but it's not the most elegant but I've successfully uploaded a working version of my app to the windows store using this plugin. The issue appears to be that everything is compiling right but visual studio is not correctly referencing the location of the sqlite compiled files. These instructions relate to the platforms (ARM, x86 and x64) For x86 and x64 open the sqlite project file ARM is mostly the same but copy the ARM folder from If you still get can't find file issues when building the project then it just means you haven't copied the compiled files into the correct directory in your project. This is working with Cordova 6.3.1 installed globally, VS 2015 Version 12.0.25425.01 Update 3 and VS TAC Update 10, Windows 10 Build 14986. No reason why it shouldn't work with all windows configurations though as this appears to be an issue with the referenced project configurations and build process for this particular plugin. |
I got the same issue. Do you have any idea how to resolve that?
Severity Code Description Project File Line Suppression State |
@phuongwd try opening the CordovaApp.vs2013.sln solution file and running the UWP project from there |
@davidstoneham thank you. Im tried. But we need to wait for a new update code. |
@vladimir-kotikov is this fixed in the latest VS 2017 RC? |
@brodybits, sorry, didn't have a chance to take a look today. Will try tomorrow and let you know |
Just checked and unfortunately it isn't fixed yet. All VS updates since my last check (Dec 22th) don't contain any updates for Cordova tools (see https://www.visualstudio.com/en-us/news/releasenotes/vs2017-relnotes) |
Guys, any idea? |
I'm not sure if it is the same problem but when I opened my ionic app with SQlite plugin in visual studio 2015 CE it through an error |
@davidstoneham I followed what you suggested and the project built finally..... however it failed the and Supported APIs with a bunch of errors. Did yours pass or is there something else you needed to do? Everything works fine on the device at least... |
@DigitalMystery if you followed the copying folders method then you'll run into the SafeSEHCheck and other errors when you check the pacakge. If you open the solution file CordovaApp.vs2013.sln in the windows folder then you shouldn't need to do the copying of folders for the sqlite plugin and it willl pass the tests as well. the 2013 project file has all the references setup correctly but the 2015 project file isn't setup correctly so stick with CordovaApp.vs2013.sln and you shouldn't run into any issues |
@davidstoneham thanks..... yea I ended up opening it with 2017, but then had to add the Linker option to the solutions properties found here if anybody else goes this route.... |
I had the same problem. Here is what I do to pass the certification. Package for each platform must be created one at a time. For each platform :
|
@jclementdev solution works for me!! Great!! |
Any update on this? I am seeing this issue in VS 2017... |
After all something to do in VS 2017? |
Hello,
I am using this plugin in an Ionic 2 app.
The iOS and Android versions of the app have no issues whatsoever. The Windows 10 version gives me headaches:
When deploying to a device with a debug build, everything works fine. When switching to release mode, I get an error when trying to open the database ("Could not open database").
Any ideas what could be the cause of this?
The text was updated successfully, but these errors were encountered: