Java codes are converted to XML after restarting Android studio
Asked Answered
L

1

7

I faced a real strange scenario when after I restarted my PC due to freezing of windows some of my java codes in the Android Studio were converted to some strange xml codes and all those codes I written were lost! I faced this situation twice, the first time I faced this scenario, I reverted my code to last commit since the changes were very little after the last commit. However this time the changes are huge after the last commit and I am completely perplexed!

The below is how one of my small code was converted.

<component name="libraryTable">
  <library name="Gradle: com.android.support:print:28.0.0@aar">
    <ANNOTATIONS>
      <root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/print-28.0.0.aar/87cddf7f66cc3e6d635cf04e7292a008/annotations.zip!/" />
    </ANNOTATIONS>
    <CLASSES>
      <root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/print-28.0.0.aar/87cddf7f66cc3e6d635cf04e7292a008/res" />
      <root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/print-28.0.0.aar/87cddf7f66cc3e6d635cf04e7292a008/jars/classes.jar!/" />
    </CLASSES>
    <JAVADOC />
    <SOURCES />
  </library>
</component>  

My Android Studio version: 3.3.1

Is there any way to get back the code I wrote?

Any help would be appreciated.

EDIT

I faced again the same situation. Here is one of my another code replaced with xml

<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
  <component name="AndroidConfiguredLogFilters">
    <filters>
      <filter>
        <option name="logLevel" value="verbose" />
        <option name="logMessagePattern" value="" />
        <option name="logTagPattern" value="(MainActivity|Download|BooksFrag|Reading|BookPage|BookDetails|PageNumberPicker)" />
        <option name="name" value="Unnamed-0" />
        <option name="packageNamePattern" value="" />
        <option name="pid" value="" />
      </filter>
    </filters>
  </component>
  <component name="AndroidLayouts">
    <shared>
      <config />
    </shared>
  </component>
  <component name="AndroidLogFilters">
    <option name="TOOL_WINDOW_CONFIGURED_FILTER" value="Unnamed-0" />
  </component>
  <component name="ChangeListManager">
    <list default="true" id="0218df07-b316-45c7-a2ad-66ba2c0b4c43" name="Default Changelist" comment="">
      <change afterPath="$PROJECT_DIR$/app/src/main/java/com/sed/maktaba_daar_al_hadeeth/utilities/RealmDBHelper.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/app/src/main/java/com/sed/maktaba_daar_al_hadeeth/BookSearchResultsContainer.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/sed/maktaba_daar_al_hadeeth/BookSearchResultsContainer.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/app/src/main/java/com/sed/maktaba_daar_al_hadeeth/BookSearcher.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/sed/maktaba_daar_al_hadeeth/BookSearcher.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/app/src/main/java/com/sed/maktaba_daar_al_hadeeth/SearchOptions.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/sed/maktaba_daar_al_hadeeth/SearchOptions.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/app/src/main/java/com/sed/maktaba_daar_al_hadeeth/SearchResult.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/sed/maktaba_daar_al_hadeeth/SearchResult.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/app/src/main/java/com/sed/maktaba_daar_al_hadeeth/SearchResultViewHolder.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/sed/maktaba_daar_al_hadeeth/SearchResultViewHolder.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/app/src/main/java/com/sed/maktaba_daar_al_hadeeth/activities/ReadingActivity.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/sed/maktaba_daar_al_hadeeth/activities/ReadingActivity.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/app/src/main/java/com/sed/maktaba_daar_al_hadeeth/utilities/ArabicUtilities.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/sed/maktaba_daar_al_hadeeth/utilities/ArabicUtilities.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/app/src/main/res/values/strings.xml" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/res/values/strings.xml" afterDir="false" />
    </list>
    <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
    <option name="SHOW_DIALOG" value="false" />
    <option name="HIGHLIGHT_CONFLICTS" value="true" />
    <option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
    <option name="LAST_RESOLUTION" value="IGNORE" />
  </component>
  <component name="ExternalProjectsManager">
    <system id="GRADLE">
      <state>
        <projects_view />
      </state>
    </system>
  </component>
  <component name="FUSProjectUsageTrigger">
    <session id="1042793738">
      <usages-collector id="statistics.lifecycle.project">
        <counts>
          <entry key="project.closed" value="23" />
          <entry key="project.open.time.12" value="2" />
          <entry key="project.open.time.13" value="2" />
          <entry key="project.open.time.14" value="1" />
          <entry key="project.open.time.15" value="3" />
          <entry key="project.open.time.16" value="1" />
          <entry key="project.open.time.17" value="1" />
          <entry key="project.open.time.18" value="2" />
          <entry key="project.open.time.2" value="1" />
          <entry key="project.open.time.21" value="1" />
          <entry key="project.open.time.22" value="1" />
          <entry key="project.open.time.24" value="1" />
          <entry key="project.open.time.25" value="2" />
          <entry key="project.open.time.26" value="2" />
          <entry key="project.open.time.27" value="5" />
          <entry key="project.open.time.28" value="1" />
          <entry key="project.open.time.29" value="1" />
          <entry key="project.open.time.3" value="1" />
          <entry key="project.open.time.30" value="1" />
          <entry key="project.open.time.31" value="1" />
          <entry key="project.open.time.32" value="1" />
          <entry key="project.open.time.36" value="1" />
          <entry key="project.open.time.4" value="1" />
          <entry key="project.open.time.46" value="1" />
          <entry key="project.open.time.49" value="1" />
          <entry key="project.open.time.5" value="2" />
          <entry key="project.open.time.50" value="1" />
          <entry key="project.open.time.51" value="1" />
          <entry key="project.open.time.6" value="2" />
          <entry key="project.open.time.7" value="1" />
          <entry key="project.open.time.8" value="2" />
          <entry key="project.opened" value="44" />
        </counts>
      </usages-collector>
      <usages-collector id="statistics.file.extensions.open">
        <counts>
          <entry key="MF" value="1" />
          <entry key="css" value="4" />
          <entry key="csv" value="11" />
          <entry key="gradle" value="14" />
          <entry key="java" value="298" />
          <entry key="js" value="19" />

I logged an issue with Google here.

Thanks.

EDIT (Nov 2019)

I faced this in android studio 3.5.2 as well. It seems the issue is not fixed yet.

Loos answered 2/3, 2019 at 12:27 Comment(0)
K
16

dont worry!

Go to android studio folder located in Users/user/.androidstudiov.x.x And delete your cache and restart android studio. This problem happened to me a couple of days ago, right after I upgraded to the new version. Even XML and java classes will have this. However all your data is safe. A bug in android studio, importing settings..

Kex answered 27/3, 2019 at 9:6 Comment(4)
Yes, indeed it worked. Thanks. Google responded to my issue and guided me to another already logged issue regarding the very same bug. So it seems there were number of users affected. issuetracker.google.com/issues/119638289Loos
Well I am glad you didnt have to write your code again, please accept the answer so other people will find it useful.Kex
Before you do this first go to files local history and show history there is list of times where you can find your file code with your specific time and if you delete cache then your are unable to rerieve your file ever. so first try files local historySheaff
@SolankiZeel be very very careful!! as if you retrieved your files there might be dependencies or packages that are not in their correct format, and that can lead to a more serious issue. Deleting your cache is the best way around this bug. I tested it on linux windows and mac.Kex

© 2022 - 2024 — McMap. All rights reserved.