{"action":"created","issue":{"url":"https://api.github.com/repos/mvysny/aedict/issues/599","labels_url":"https://api.github.com/repos/mvysny/aedict/issues/599/labels{/name}","comments_url":"https://api.github.com/repos/mvysny/aedict/issues/599/comments","events_url":"https://api.github.com/repos/mvysny/aedict/issues/599/events","html_url":"https://github.com/mvysny/aedict/issues/599","id":121271085,"number":599,"title":"Aedict3 new update not adjusted for new AnkiDroid API Enable/Disable feature","user":{"login":"schilki","id":16226131,"avatar_url":"https://avatars.githubusercontent.com/u/16226131?v=3","gravatar_id":"","url":"https://api.github.com/users/schilki","html_url":"https://github.com/schilki","followers_url":"https://api.github.com/users/schilki/followers","following_url":"https://api.github.com/users/schilki/following{/other_user}","gists_url":"https://api.github.com/users/schilki/gists{/gist_id}","starred_url":"https://api.github.com/users/schilki/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/schilki/subscriptions","organizations_url":"https://api.github.com/users/schilki/orgs","repos_url":"https://api.github.com/users/schilki/repos","events_url":"https://api.github.com/users/schilki/events{/privacy}","received_events_url":"https://api.github.com/users/schilki/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/mvysny/aedict/labels/user%20feedback%20needed","name":"user feedback needed","color":"fbca04"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":4,"created_at":"2015-12-09T15:31:20Z","updated_at":"2015-12-14T17:40:03Z","closed_at":null,"body":"Thank you very much @mvysny  for all your help. As recommended I will post our conversation to the forum to discuss. \r\n\r\nHowever I belief that this problem concerns Aedict 3 and not AnkiDroid. I am quite sure that Aedict 3 does not recognize the 2 sides of the new API Ankidroid feature (Untick or tick)\r\nWhy: \r\nNow it is only possible to export cards from Aedict to Ankidroid if in Ankidroid's extended options the API is ticked on. If the API is ticked off and you want to send a card from Aedict, an error message occurs \"Error: Please upgrade AnkiDroid to 2.5 or higher\". Why? Because Aedict does only recognize if the API is ticked on, so the new method of direct sending of cards (eliminating the mid-step of modifying cards before creating card in Anki). However, as I mentioned before in my email, the makers of AnkiDroid on purpose included the function to UNTICK the API, so we can keep editing the cards (as before) when sending from Aedict, before saving them to our desired deck in Anki. This is also evident from this thread https://github.com/mvysny/aedict/issues/596 where Anki's developer wrote the following: \"You can disable the API under advanced settings in AnkiDroid, which should result in Aedict choosing the old method of the sending the data to AnkiDroid. Note however that will disable it for all apps, which is probably fine now, but will likely prevent you from doing some cool stuff in the future.\"\r\n\r\nWith Aedict's new update however, Aedict completely adjusted to the direct input - aka API-ticked-on function - (the so called \"new method\") without regarding AnkiDroids extended option to untick direct input - the so called \"old method\" in the quotation above. Meaning that if you disable the API in AnkiDroid (meaning that you use the \"old method\"), Aedict does actually NOT choose the old method of sending the data to AnkiDroid (as the AnkiDroid developers thought), instead the error message \"Error: Please upgrade Anki Droid to 2.5 or higher\" appears, because Aedict was only updated for the new AnkiDroid API-enabled version, disregarding the disabled version (old method). I hope my explanation is understandable.\r\n\r\nI read this post: https://github.com/mvysny/aedict/issues/596\r\nwhich is the same problem but not fixed until Aedict recognizes the unticked API function of AnkiDroid.\r\n\r\n I am not an expert but almost 100% sure that this is the problem, and needs to be fixed on Aedict's side. I am very sorry, I also don't know anything about programming but I am an avid user of your app Martin, so I thought I could give you this in sight from an \"every day user perspective\". From what I read from the other post \"Dinges666\" had actually the same problem but it wasn't clearly identified. Because the update of Aedict yesterday, was only regarding the enabled API feature of Anki, and disregarded the feature in AnkiDroid to actually use the \"old input method\" aka disabled API. Dinges666 also wrote that his concern was he couldn't change the cards anymore before input into Anki, which he could have easily fixed by himself by just unticking the API in Anki. However, as of today with new Aedict update, this is not possible anymore.\r\nHis point was also true that if API is ticked, decks cannot be chosen, that's why the problem needs a fix in Aedict for enabled and disabled API in Anki:\r\n\r\nSo what I think would fix the problem in Aedict is the following (according to 2 versions of AnkiDroid API ENABLED/DISABLED)\r\n\r\n1) AnkiDroid API ENABLED:\r\nAs already done with the new Aedict update. Include a function that lets the user choose into which deck in Anki the card should be send (alrdy done). Then the full bulk of info from Aedict will be directly send to Anki.\r\n\r\n2) Ankidroid API DISABLED: (In Aedict same as the old version, I used this until yesterday without any problems)\r\nSame as old version, 3 card formats, choose, send over to Anki --> before saving the card in Anki, it will be possible to modify the card in Anki and choose the deck.\r\n\r\n\r\n\r\nI am very sorry, and I don't to be pushy or anything, but I think it is easier to just provide straight forward feedback, and also hope to contribute to further perfection your app @mvysny . I am also not a programmer, and if this is to hard to program for each case (Ankidroid API Enabled/Disabled), I completely understand. However, I would be happy if you read my post throughly, because I also took a lot of time to figure out the problem and to write this.\r\n\r\nThank you so much\r\nAlexander\r\n\r\n\r\n\r\n\r\n\r\n\r\nFor everyone please see the log below, from our private email conversation:\r\nALEXANDER (First email):\r\n There has been a huge mistake in the last update. Export to Anki: Ask for deck when exporting to Anki was in this update. I think Mr. Martin you created this based on the new Anki update where it directly send the cards (without manually being able to modify the card) to Anki. However, Anki already included a feature in options, which lets you (just as before) modify the cards before sending and also change the decks under \"Extended Options, Tick/Untick Ankidroid API for directinput\". But now you also did an update that let's you change decks when exporting, which leads to a double clash of the same function. That's why please please put Aedict3 back to the previous version (since we can chose which deck in the Anki app API func, you don't need to change anything abt. Anki export). You also took out the option when exporting \"Export\" option to modify the cards, furigana, Kanji, English order and to modify the text. This was the single most crucial function for me as I always modify the cards before input.  This app is absolutely the best and I recommend it to everyone of my friend. Thank you so much!\r\n\r\n\r\nMARTIN:\r\nThank you very much for your kind words. You can disable the dialog in Settings / Export / AnkiDroid Deck Name and set it to e.g. \"Aedict 3\", to disable the annoying dialog. Please let me know if this works for you.\r\n\r\n\r\nALEXANDER:\r\nThank you very much for your quick reply. I really appreciate that you take into consideration the words of your users. Also your app is without doubt the best Japanese dictionary. Thank you so much.\r\n\r\nRegarding the issue:\r\nI tried what you said. So basically the problem is Anki made an update last week, where they included the option \"API direct input from third party apps\". However, this option can be ticked or unticked, which means \r\nif ticked: direct input from aedict without possibility to modify cards\r\nif unticked: same as before, can modify the card decks and also card content etc.before sending to Anki (Just as before).\r\n\r\nNow with the new Aeadict3 update it became impossible to edit the cards before sending and to chose whether kanji, furigana, english etc should be included, in which order etc. Also I think the option of chosing a deck in aedict is not necessary and has no benefit since the option can already be en- or disabled in Anki API direct input function. Also, if in both apps the function is on (Anki API ticked) the error message \"update Anki...\" Occurs. So I thought you might have overseen the API option in Anki (which disables or enables the direct input feature), and thats why you created this option in Aedict (im not sure though what you intended Sir). The option is under Extended options in Anki \"拡張機能\"AnkiDroidAPIを有効にする。\r\n\r\nSo basically I would be very happy if the old function of Export in settings would come back in Aedict3, where i could chose input method (kanji/engl, kanji, furigana/engl etc) and manually change the content of each card, and also chose the deck before sending it to Anki.\r\n\r\nI hope you can understand my question Mr. Martin and I would be extremely happy if you can help me. Your app has really changed my study progress so much and cant tell you how thankful I am.\r\n\r\nBest regards\r\nAlexander\r\n\r\n\r\nMARTIN:\r\nHi Alexander,\r\n thank you for your kind mail, I'm really flattered :) Thanks!\r\nThanks to you, I now understand what the \"API direct input from third\r\nparty apps\" does. Basically, AnkiDroid provides two APIs: the old one,\r\nwhich only allows sending one flashcard at a time, and the new one,\r\nwhich supports mass-send (the direct input mode). The old one will\r\neventually go away (I think that AnkiDroid's Tim told me that), so I\r\nbelieve there is no benefit in keeping the support for the old one.\r\n So, I believe that we should look forward and instead of keeping\r\nsupport for both APIs, let us focus on the new API and let us try to fix\r\nwhat's broken there.\r\n\r\nNow, in the new API every entry is exported three times, in three\r\ndifferent card types: \"Kanji > Kana+English\", \"Kanji+Kana > English\",\r\n\"English > Japanese\". Just open AnkiDroid, Card Browser and you will see\r\nthey're there. I do not say this is perfect (I find it unintuitive), but\r\nI was told that this is the way AnkiDroid works. I agree this needs some\r\nmind bending, but it may be worth the time. Please also read here:\r\nhttps://github.com/mvysny/aedict/issues/596\r\n\r\nAlso I have added an entry related to AnkiDroid to FAQ:\r\nhttp://aedict.eu/faq.html\r\n\r\nPlease let me know if there are any further issues.\r\nBest regards,\r\nMartin\r\n\r\n\r\nALEXANDER:\r\nThanks Martin for your reply again.\r\nHowever the point I am trying to make is actually about the impossibilty to manually editing cards before sending them to Anki since the aedict update yesterday.\r\n\r\nNormally people use the Aedict as follows I would argue:\r\nLet's say I have 3 decks: one Kanji, JLPT words and one Business words\r\n1) look up a word, click up right on button and \"send as flashcard\"\r\n2) before sending we want to modify the cards by all means, because aedict provides a looot of translations for each word etc, which would means sending content as it is, it is impossible to memorize 20 translations. So I usually cut down the content to one or two key translation words and might add an example sentence. \r\n3) chose which deck it belongs two and click send.\r\n\r\nSo I add words anyways one by one after I look up a new word, and after modifying what should be on the card.\r\nI dont see any use in making direct inputs from aedict. This is not a process that asks for optimization (acceleration) I think, however much more important to being able to modify the cards before sending.\r\n\r\nThe Anki API changed nothing about this input method because it could be enabled or disabled under extended options. So I think the Anki developers made this function for other apps where direct input might be useful and speeds up the process, however they left the option for the old input method for apps like aedict.  For Aedict it is not useful because it doesnt let us modify cards anymore, why it was a great feature from Anki to let us untick the API and use it as old.\r\n\r\nWhat changed the possibilty of modifying cards was the latest update from aedict yesterday. Now I dont see any way to modify cards before sending them to anki anymore, which leads me to look up a word on aedict and then manually make a card in Anki in the respective deck for I every word I look up now.\r\n\r\nI read the thread you sent me, however I think the guy there didnt know about the untick function in Anki to unable and disable the API and therefore had trouble because he also wanted to manual modify cards and chose the deck.\r\n\r\nSo as of now if I could still use the Aedict version before the update yesterday, i could still manually modify cards. But now I can not only not modify them, but  I can not even input cards as direct input, always an error message will appear \"download Anki 2.5\".\r\n\r\nI hope you understand what I mean. Basically I just think it is crucial to let us send card by card and modify its content by ourselves before sending to Anki, because every person wants different things on his card to remember them easily and not standardized entries. Anki lets us do this (even after the update), but the new aedict update prohibts us from doing this.\r\n\r\n\r\n\r\nMARTIN:\r\nHi Alexander,\r\n the real difference between old and new API is that in old API, two\r\nstrings were transferred, FRONT and BACK, and that's it. You could not\r\nextract any data from that and you couldn't format the entries\r\ndifferently once exported. In the new API, Aedict sends all the data\r\nseparately, and then it sends a predefined set of three card models. You\r\ncan add your own cards directly in AnkiDroid, which will show fields in\r\nany format you see fit. For example, the definition of the card which\r\nshows \"Kanji\" as front, and full info as back:\r\n\r\nFRONT: <div class=big>{{Expression}}</div><br><div\r\nclass=small>{{GrammarShort}}</div>\r\nBACK: <div class=big>{{furigana:Furigana}}</div><br>{{Meaning}}\r\n<br><br>\r\n<a href=\"#\"\r\nonclick=\"document.getElementById('hint').style.display='block';return\r\nfalse;\">Example Sentences</a>\r\n<div id=\"hint\" style=\"display: none\">{{Sentence}}</div>\r\n<br><br>\r\n<a href=\"#\"\r\nonclick=\"document.getElementById('grammar').style.display='block';return\r\nfalse;\">{{GrammarShort}}</a>\r\n<div id=\"grammar\" style=\"display: none\">{{Grammar}}</div>\r\n<br><div class=small>{{Tags}}</div>\r\n\r\nYou can however create your own card, with your own FRONT and BACK\r\ndefinitions.\r\n\r\nSo that you can add your own card models to entries already exported and\r\npresent in your AnkiDroid. Please, if you have further questions\r\nregarding on how to add custom cards to AnkiDroid, please ask on the\r\nAnkiDroid forums. Because this is really a question on how to add\r\ndifferent card formats to AnkiDroid. You can copy-paste our entire\r\nconversation to the AnkiDroid forum, to provide context for others. I do\r\nnot have capacity to answer more questions directly, but I can answer\r\nthem at forums:\r\n\r\nhttps://groups.google.com/forum/#!forum/anki-android\r\n"},"comment":{"url":"https://api.github.com/repos/mvysny/aedict/issues/comments/164505405","html_url":"https://github.com/mvysny/aedict/issues/599#issuecomment-164505405","issue_url":"https://api.github.com/repos/mvysny/aedict/issues/599","id":164505405,"user":{"login":"schilki","id":16226131,"avatar_url":"https://avatars.githubusercontent.com/u/16226131?v=3","gravatar_id":"","url":"https://api.github.com/users/schilki","html_url":"https://github.com/schilki","followers_url":"https://api.github.com/users/schilki/followers","following_url":"https://api.github.com/users/schilki/following{/other_user}","gists_url":"https://api.github.com/users/schilki/gists{/gist_id}","starred_url":"https://api.github.com/users/schilki/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/schilki/subscriptions","organizations_url":"https://api.github.com/users/schilki/orgs","repos_url":"https://api.github.com/users/schilki/repos","events_url":"https://api.github.com/users/schilki/events{/privacy}","received_events_url":"https://api.github.com/users/schilki/received_events","type":"User","site_admin":false},"created_at":"2015-12-14T17:40:03Z","updated_at":"2015-12-14T17:40:03Z","body":"Thank you both @mvysny @timrae for coordinating with each other and providing us with two great apps.\r\n\r\nAs for the timeline of happenings (because @timrae said that when he first tested Aedict with Anki it worked fine):\r\n1) Anki update release: \r\n-Enabled API: mass sending of cards from Aedict worked, however deck could not be chosen - instead cards went to Aedict 3 folder\r\n-Disabled API: same as always, individual card sending from Aedict (manually editable) worked\r\n\r\n2) a couple of days later Aedict update release:\r\n-Enabled API: mass sending of cards from Aedict works, and newly added option of choosing decks.\r\n-Disabled API: does not work \"Error: update Anki to 2.5\", manual editing impossible\r\n\r\nObviously Aedict3 does not comply with steps 6-8 of the manual testing section, since as of the update it doesn't work with the disabled API, which is exactly my concern.\r\nNow, @timrae I am very well aware that the enabled API function might be a very efficient way of adding cards from most apps, however for Aedict, @mvysny I think (and also my friends who use the Aedict and Anki together) for Aedict it is quite frankly useless. If you have a word like 行く with like 20 translations, you definitely don't want to send it directly (said above), you'd rather add the card manually. \r\n\r\nSince I don't think many users actually know there is a forum, and even if they knew, they wouldn't use it (including my friends who use Aedict), I am not quite sure if waiting for user feedback of the a couple of people who actually use the forum is effective. \r\nAs of now I am looking up words in Aedict, but switching to Anki to creating cards manually in there, since the update came out. I would be really happy if the interaction between Anki and Aedict became as seem-less as before.\r\n\r\nI would like to ask if @mvysny  is planning to make Aedict work again with the disabled API in Anki, so we can send cards as before these updates? \r\n\r\nThank you very much for your help.\r\n"}}