R විසඳිය නොහැක - Android දෝෂයකි


1078

මම නව ඇන්ඩ්‍රොයිඩ් එස්ඩීකේ බාගත කර ස්ථාපනය කළෙමි. එය පරීක්ෂා කිරීම සඳහා සරල යෙදුමක් නිර්මාණය කිරීමට මට අවශ්‍ය විය.

විශාරදයා මෙම කේතය නිර්මාණය කළේය:

package eu.mauriziopz.gps;

import android.app.Activity;
import android.os.Bundle;

public class ggps extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }
}

නමුත් සූර්යග්‍රහණය මට වැරැද්ද ලබා දෙයි

R විසඳිය නොහැක

මාර්ගයෙන්

setContentView(R.layout.main);

මන්ද?

ප්රාදේශීය සභා: මම නමින් XML ගොනුව තියෙනවා main.xmlයටතේ res/layout/.


ආර්.ජාවා යාවත්කාලීන කිරීමට / උත්පාදනය කිරීමට නොහැකි වීමෙන් සූර්යග්‍රහණය පිළිබඳ යම් ගැටලුවක් තවමත් අත්විඳින අයට. කළ හැකි විසඳුමක් වන්නේ ව්‍යාජ xml එකක් නිර්මාණය කර එම xml මකා දැමීමයි. මගේ නඩුවේ මෙය විසඳුමයි
ඩෙනිල්

අවංකවම, මෙය එතරම් මෝඩකමක් ලෙස පෙනේ (නමුත් එය එසේය), නමුත් AndroidManifest.xml වෙනස් කිරීම, පසුව එම සංස්කරණය අහෝසි කිරීම, පසුව මා වෙනුවෙන් වැඩ කළ ගොනුව සුරැකීම. මම ඉන් පසුව ව්‍යාපෘතිය පිරිසිදු කළහොත් එය නැවත කැඩී ගියේය. මේ කාලය පුරාම මම සිතුවේ මේ ආකාරයේ අද්භූත දෝෂ ඇති එකම IDE එක Xcode බවයි.
iwasrobed

3
ව්‍යාපෘතිය -> ඇන්ඩ්‍රොයිඩ් මෙවලම් -> ව්‍යාපෘති සැකසුම් නිවැරදි කිරීමට ඔබ උත්සාහ කළාද?
සර්ජි

6
කරුණාකර ඔබේ XMl පිරිසැලසුම් ගොනුව පරීක්ෂා කරන්න, xml හි කිසියම් දෝෂයක් ඔබට R.java උත්පාදනය කළ නොහැකි නම්, දෝෂය පැමිණෙන්නේ පිරිසිදු හා පිරිසිදු කිරීමෙන් පසුවය.
ස්විෆ්ට්බෝයි

1
ඉඟියක් පමණි: මම සූර්යග්‍රහණයේ සිට ඇන්ඩ්‍රොයිඩ් ස්ටුඩියෝ වෙත IDE මාරු කළ විට මෙය මට සිදුවීම නැවැත්වීය.
මාතා

Answers:


842

මෙම ගැටළුව සොයා ගැනීමෙන් පසුව, ඇන්ඩ්‍රොයිඩ් ප්‍රලේඛනය තුළ මෙම සටහන මට හමු විය:

http://source.android.com/source/using-eclipse.html

* සටහන: සම්පත් භාවිතා කරන ඔබේ ලිපිගොනු වල ඉහළින් “ආනයන android.R” ප්‍රකාශයක් එක් කිරීමට සූර්යග්‍රහණය සමහර විට කැමතියි, විශේෂයෙන් ඔබ ආනයන වර්ග කිරීමට හෝ කළමනාකරණය කිරීමට සූර්යග්‍රහණයෙන් ඉල්ලා සිටින විට. මෙය ඔබගේ නිර්මාණය බිඳී යාමට හේතු වේ. මෙම වැරදි ආනයන ප්‍රකාශ සොයා බලා ඒවා මකන්න. *

ඇන්ඩ්‍රොයිඩ් නියැදි නිබන්ධන හරහා යද්දී, මම බොහෝ විට Ctrl+ Shift+ Oවිධානය භාවිතා කර “ආනයන සංවිධානය කරන්න” සහ නැතිවූ ආනයන ප්‍රකාශ ජනනය කරමි. සමහර විට මෙය වැරදි ආනයන ප්‍රකාශයක් ජනනය කරනු ඇති අතර එමඟින් R.javaඔබ ගොඩනඟන විට ස්වයංක්‍රීයව ජනනය වන පන්තිය සැඟවිය හැක .


32
මෙයද සිදු වේ, නමුත් සැකසූ පිරිසැලසුම් ගොනුවක් ද එයට හේතු විය හැක.
GHz

113
මෙම සම්භාව්‍ය දෝෂය වසර සඳහා සූර්යග්‍රහණයේ ඇති අතර එය කිසි විටෙකත් නිවැරදි නොවේ. මිනිසුන් දහස් ගණනක් මෙම ගැටලුවටම මුහුණ දෙති.
කැරොල්

52
සූර්යග්‍රහණ සංවර්ධකයින්, කරුණාකර මෙම $ £% & "$ & / දෝෂය ඉවත් කරන්න! ගූගල් සංවර්ධකයින්, කරුණාකර මට iPhone සඳහා Xcode හා සමාන £ $ & $"% සහ ඇන්ඩ්‍රොයිඩ් කට්ටලයක් ලබා දෙන්න!
ආබ්‍රමොජ්

18
@ 2-ස්ට්‍රෝකර්: එය දෝෂයකි. WIZARD සූර්යග්‍රහණය හරහා ශාඛා නව ඇන්ඩෝරයිඩ් ව්‍යාපෘතියක් නිර්මාණය කළ විට එය මට සිදු වූ අතර එය 'R විසඳිය නොහැක' යනුවෙන් පැමිණිලි කළේය. මට setContentView & getMenuInflater රේඛා ගැන අදහස් දැක්වීමට සිදු වූ අතර පසුව සූර්යග්‍රහණය R.java උත්පාදනය කළ අතර පසුව මට setContentView & getMenuInflator එක සැකසිය නොහැකි විය. ආබ්‍රමොජ් හරි, ඔබේ 'හෙලෝ වර්ල්ඩ්' උදාහරණය පවා සම්පාදනය නොකරන්නේ නම් පරිසරයට බරපතල ගැටළුවක් ඇත. එය ගූගල් කරන්න!
CF_Maintainer

5
මෙවැනි ස්ථාවර අයිතම ලබා ගැනීමට ගූගල් eclipse.org අරමුදල් ලබා නොදෙන්නේ කෙසේද?
ක්‍රිස්

392

R සමඟ මට ගැටළුවක් ඇති වූ සෑම අවස්ථාවකම උත්පාදනය නොවීම හෝ අතුරුදහන් වීම පවා සිදු වූයේ XML පිරිසැලසුම් ගොනුවේ යම් ගැටළුවක් නිසා යෙදුම සෑදීම වළක්වාලමිනි.


21
මේ සඳහා +1. මා සතුව පැරණි style.xml ගොනුවක් මාපිය = "android: WindowTitleBackground" සමඟ තිබූ අතර එය මගේ ගොඩනැගීම බිඳ දමා "gen" වෙත ජනනය වන කිසිවක් වළක්වයි. මම මුලින්ම ව්‍යාපෘතිය විවෘත කළ අවස්ථාවේදීම කොන්සෝලය කවුළුව හැර දෝෂය සත්‍ය වශයෙන්ම වාර්තා නොවීය.
ස්කොට් පර්සින්ගර්

12
හරියටම, ඔබ වෙනත් ව්‍යාපෘතියකින් පිරිසැලසුම් පිටපත් කර මෙය ලබා ගන්නේ නම්, නැතිවූ ලාච්චු සොයයි - එය ක්ෂණිකව නිවැරදි කරනු ඇත!
ගැබෝර්

4
මට සිහින්ව ඇත්තේ මට එකම ගැටලුවකි, එක් පිරිසැලසුමක් මායාකාරිය දැන ගැනීමට ක්‍රමයක් තිබේද?
සර්ජි කුචර්

3
ඔව්, මට ඇද ගත හැකි ගොනුවක් අස්ථානගත වී ඇති අතර එමඟින් R ගොනුව ජනනය වීම වළක්වන ලදි. මෙහි ඇති අමුතුම දෙය නම් , මෙනු සම්පතක් පිළිබඳ android:icon="@drawable/XXX"ප්‍රකාශයක් මා සතුව තිබීමයි <item>, නමුත් XXX හි ඇද ගත හැකි සම්පත සොයාගත නොහැකි බවට රතු සං sign ා සං sign ාවක් නොතිබුණි. තවත් විටෙක, "@drawable/YYY" විය YYY මෙම නඩුවේ හමු වූ විට නැත, නමුත් සලකුණු. කිසියම් හේතුවක් නිසා.
ටේලර්

5
ඔව්, විශිෂ්ට විසඳුමක්. යමෙකුට මෙම දෝෂය ඇති වූ විට .. බොහෝ විට පිරිසැලසුම් ලිපිගොනු වල දෝෂ ඇති බව සලකුණු කර ඇත .. මෙයට හේතුව ඔවුන් සියල්ලන්ම ආර් සොයන බැවිනි. මගේ නඩුවේ, අඳින්න බැරි.
ටොඩ් පේන්ටන්

202

ඔබට ලැබෙන සෑම විටම

R විසඳිය නොහැක

ඉන්පසු /resඩිරෙක්ටරිය සඳහා පරික්ෂා කරන්න , එහි කිසියම් දෝෂයක් ඇති ගොනුවක් තිබිය යුතු අතර එමඟින් යෙදුම සෑදීම වළක්වයි. උදාහරණයක් ලෙස, එය පිරිසැලසුම් ගොනුවක් විය හැකිය, නැතහොත් සමහර සම්පත් නැතිවීම නිසා විය හැක, නමුත් ඔබ එය දැනටමත් XML ගොනුවේ අර්ථ දක්වා ඇත.

ගොනු නම් කිරීමේ සම්මුතීන්ට අනුකූල නොවන res / drawables-mdpi වැනි ෆෝල්ඩරයක ඔබට අතිරේක, භාවිතයට නොගත් (!) හෝ යොමු නොකළ (!) රූප තිබේ නම් (අඩංගු විය හැක්කේ [a-z0-9_.] පමණි) R.java පන්තිය උත්පාදනය නොවිය හැකි අතර, අනෙක් සියලුම තනතුරු සඳහා සිදුවීම් දාමය හේතු වේ. එය උපකාරී වේ යැයි සිතමු!


ApiDemos නියැදිය සමඟ මට මෙම ගැටළුව ඇතිවිය. String.xml ගොනුවේ සමහර සම්පත් නොමැත. XML දෝෂය සූර්යග්‍රහණ කොන්සෝලයෙහි ලැයිස්තුගත කර ඇත.
lemotdit

ඔබට ස්තුතියි! මෙය මගේ ගැටලුවයි, මට පිරිසැලසුමක් වැරදී ඇති නමුත් ඒ පිළිබඳව කිසිදු පණිවිඩයක් නොතිබුණි.

29
දෝෂ සඳහා ඔබ පරීක්ෂා කරන්නේ කෙසේද? ගොඩනැඟීමේදී / ධාවනය කිරීමේදී මගේ කොන්සෝලය තුළ මට කිසිවක් නොලැබේ
වින්සන්ට්

4
WHMH xml ගොනුව දෝෂයට හේතුව සොයා ගන්නේ කෙසේද? සූර්යග්‍රහණය ඒවා සලකුණු නොකරයි!
යාර්

1
මට HDP ෆෝල්ඩරයේ එකම නමක් සහිත පින්තූර 2 ක් (1 png සමඟ සහ 1 jpg ආකෘතියෙන්) ඒවායින් 1 ක් මකා
දැමීමෙන්

134

මගේ ව්‍යාපෘතියට ආරම්භයේ දී r.java.at ඇතුළත් වේ, R.layout.main හොඳට වැඩ කරයි.නමුත්, යම් කේතයක් එකතු කිරීමෙන් පසු එය ක්‍රියා නොකරයි, සහ දෝෂය R.layout.main හට විසඳිය නොහැක. ගැටලුව කුමක්ද? ?

ඔබේ ආනයන දෙස බලන්න. රේඛාව විය හැකි අවස්ථා:

import android.R;

එතන ඉන්නවා. එය එසේ නම්, එය ඉවත් කරන්න, එවිට ඔබේ ව්‍යාපෘතිය R නිරාකරණය කරන්නේ සුපුරුදු ඇන්ඩ්‍රොයිඩ් සම්පත් පන්තියෙන් නොව ඔබේ / res / ෆෝල්ඩරයෙන් ස්වයංක්‍රීයව ජනනය වන එකකි.


5
ස්තූතියි im ඩිමිටර්, එය මගේ ප්‍රශ්නය විසඳුවා! සූර්යග්‍රහණය සහ ස්වයංක්‍රීයව ආනයනය කිරීමේ අංගය එම ආනයන මාර්ගය ස්වයංක්‍රීයව එකතු කිරීමෙන් මා ලබා ගත් බව පෙනේ.
ස්ටීවන්

7
ලොකු අකුරු භාවිතා කරමින් පිරිසැලසුමක් නම් කිරීමේදී මටද එවැනිම ගැටළු ඇති විය
ට්‍රැවිස්

මිනිසුන්ට "R සොයාගත නොහැකි" වීමට මෙය ප්‍රධාන හේතු 5 න් එකකි. පහත දැක්වෙන සබැඳියේ ප්‍රධාන 5 පෙන්වන රූප සමඟ මම ගැටළුවක් / විසඳුම් පිටුවක් සම්පාදනය කර ඇත්තෙමි. මෙය පොදු ගැටළුවක් බැවින් ලැයිස්තුව මිනිසුන්ට උදව් වනු ඇතැයි සැබවින්ම බලාපොරොත්තු වෙමු. spragucm.wordpress.com/2014/05/13/…
ක්‍රිස් ස්ප්‍රැග්

R ඉවත් කිරීමෙන් පසුව, සමහර ස්ථානවල R පන්තිය ලෙස භාවිතා කරන අතර දැන් දෝෂයක් ලබා දෙයි, එය විසඳන්නේ කෙසේද?
නරේන්ද්‍ර ජග්ගි

96

මෙම ගැටළුවට හේතු විය හැකි තවත් දෙයක්:

මම නව ADT ස්ථාපනය කළෙමි (22 පදය). එය genඇතුළත් වන ෆෝල්ඩරය සෑදීම නැවැත්වීය R.java. විසඳුම වූයේ ඇන්ඩ්‍රොයිඩ් එස්ඩීකේ කළමණාකරු වෙතින් නව ඇන්ඩ්‍රොයිඩ් එස්ඩීකේ බිල්ඩ් මෙවලම් ස්ථාපනය කිරීමයි.

විසඳුම මෙහි හමු විය


මමත්. මම SDK කළමණාකරු තෝරාගත් විට, බලන්න, ගොඩනංවන මෙවලම් ස්ථාපනය සඳහා ස්වයංක්‍රීයව පරීක්ෂා කර ඇති අතර එය ස්ථාපනය කර නොමැති බවට සටහනක් ඇත ! ලබා දෙන්නේ කුමක්ද ???
ඩේවිඩ් හොට්ස්පොට් ඔෆිස්

මටත් ඒ ප්‍රශ්නයම තිබුණා. ඔබ මෙය බෙදාගැනීම ගැන මට සතුටුයි. මම දින දෙකක් මගේම කේතයෙන් දෝෂයක් දුටුවෙමි. මෙම දෝෂ පණිවිඩය විසඳීම ඉතා අසීරු වී ඇති නමුත් එය සිදුවී ඇත්තේ තමන්ගේම දෝෂයක් නිසාය, නමුත් මෙවලම් නිසි ලෙස වාර්තා නොකලද එයට හේතුව කුමක්දැයි මම ගූගල් වෙත යොමු කරමි. මම මගේ ව්‍යාපෘතියේ එකම වේලාවක වෙනස්කම් සිදු කර ඇති බැවින් එය නැවත මගේ වරදක් යැයි මම සිතුවෙමි.
රීජෝ කෝර්හොනන්

5
මා වෙනුවෙන් වැඩ කළා, ස්තූතියි! එය මගේ මන්ත්‍රය තවදුරටත් ශක්තිමත් කරයි: "සංවර්ධනය කරන අතරතුර කිසි විටෙකත් කිසිවක් යාවත්කාලීන නොකරන්න".
රොඩ්රිගෝ ඩයස්

මම පිළිතුර සෙවීම සඳහා එහා මෙහා ගිය නමුත් මට කිසිවක් සාර්ථක වූයේ නැත. මම හිතන්නේ එය සූර්යග්‍රහණයක් හෝ sdk ගැටලුවක්. ඔබ පවසන පරිදි, මම පෙර සූර්යග්‍රහණ මිටිය මකා දමා නැවත ස්ථාපනය කරමි. එවිට එය ක්‍රියාත්මක වේ. ඔබේ පිළිතුරට උදව් විය
ආරම්භකයින්

මගේ නඩුවේ ගැටලුව මෙයයි! R දෝෂය නිවැරදි කිරීමට උත්සාහ කිරීම, යොමු කිරීම් එකතු කිරීම / ඉවත් කිරීම සහ වෙනත් විකල්ප උත්සාහ කිරීම එක් දිනක් නාස්ති කිරීම. පතල යනු ADT හි නව සැකසුමකි, සහ නව ඇන්ඩ්‍රොයිඩ් ව්‍යාපෘති නිර්මාණයකි, එය තවමත් දෝෂය වෙමින් පවතී. එය අවසානයේදී, ඇන්ඩ්‍රොයිඩ් එස්ඩීකේ මෙවලම්, ඇන්ඩ්‍රොයිඩ් එස්ඩීකේ වේදිකා මෙවලම් සහ එස්ඩීකේ ගොඩනැගීමේ මෙවලම් යාවත්කාලීන කිරීමට මට සිදු විය: p
සෞරබ් කුමාර්

87

R.javaඔබගේ යෙදුම ගොඩනඟන විට ඇන්ඩ්‍රොයිඩ් සූර්යග්‍රහණ ප්ලගීන නිර්මාණය කරන ගොනුවකි. R.java"gen" නාමාවලිය යටතේ නිර්මාණය වේ. මෙම ගොනුව ජනනය කරනු ලබන්නේ "res" නාමාවලියෙහි ඇති තොරතුරු වලිනි. ඔබ සූර්යග්‍රහණ මෙනුවෙහි "Project" -> "Clean ..." තෝරන්න, එය ඉවත් කර R.javaගොනුව නැවත උත්පාදනය කරයි .

AndroidManifest.xmlගොනුවේ ඔබේ පැකේජයේ නම වෙනස් කළ විට "R විසඳිය නොහැක" යන ගැටළුව සිදු වේ. එය ඔබගේ ඇන්ඩ්‍රොයිඩ් පැකේජයේ නම භාවිතා කර R.javaගොනුව ගබඩා කරන "ජෙන" නාමාවලිය යටතේ උප බහලුමක් නිර්මාණය කරයි .

R.javaඔබ ඇන්ඩ්‍රොයිඩ් පැකේජයේ නම වෙනස් කළ විට ගොනුව තිබෙන්නේ කොතැනද යන්න ව්‍යාකූල වී ඇති නිසා සූර්යග්‍රහණය පිරිසිදු ලෙස ක්‍රියාත්මක කිරීමේදී ගැටළු ඇති විය හැක . genඔබගේ නව පැකේජ නාමයට ගැලපෙන පරිදි ඔබට උප බහලුම නැවත නම් කළ හැකිය , නැතහොත් ඔබේ පැකේජයේ නම පැරණි නමට වෙනස් කළ හැකිය. පිරිසිදු කර පැකේජයේ නම ඔබට අවශ්‍ය නව නමට වෙනස් කරන්න. ඔබ පැකේජයේ නම වෙනස් කරන අතරතුර සූර්යග්‍රහණය ගොඩනැගීමට උත්සාහ කිරීම නැවැත්වුවහොත් මෙය වඩාත් සුදුසු වේ. "ප්‍රොජෙක්ට්" මෙනුව යටතේ "ස්වයංක්‍රීයව ගොඩනඟා ගැනීම" සඳහා වන විකල්පය සලකුණු නොකරන්න සහ "පිරිසිදු ..." දෙබස් අසන විට "වහාම ගොඩනැගීමක් ආරම්භ කළ යුතුද" යනුවෙන් කොටුව සලකුණු නොකරන්න, එවිට ඔබ වෙනස් වන අතරතුර එය තැනීමට උත්සාහ නොකරයි. පැකේජයේ නම. ඔබ නම වෙනස් කළ පසු ඔබට "ස්වයංක්‍රීයව ගොඩනඟන්න" නැවත සක්‍රිය කළ හැකිය.

ඔබගේ AndroidManifest.xmlගොනු පැකේජයේ නම ඔබගේ ජාවා පැකේජ නාමයට නොගැලපේ නම්, සූර්යග්‍රහණය ස්වයංක්‍රීයව "ආනයනය <ඔබේ ඇන්ඩ්‍රොයිඩ් පැකේජයේ නම> .R;" .javaආර් වෙත කිසියම් සඳහනක් ඇති ඔබගේ සියලුම ලිපිගොනු වල පේළිය . ඔබ ඔබේ AndroidManifest.xml පැකේජයේ නම වෙනස් කරන්නේ නම් , සමහර විට එක්ලිප්ස් විසින් මෙම සියලු ආනයන යාවත්කාලීන නොකරයි. එය සිදුවුවහොත්, ඔබේ එක් ජාවා ලිපිගොනුවක ආනයන ප්‍රකාශය ඔබගේ නව පැකේජ නාමයට වෙනස් කිරීමට සූර්යග්‍රහණ ප්‍රතිනිර්මාණය ( ALT+ Shift+ R) භාවිතා කරන්න AndroidManifest.xml. ඔබ "ස්වයංක්‍රීයව ගොඩනඟන්න" අක්‍රීය කර ඇති අතරතුර මෙය කිරීම වඩාත් සුදුසුය.


21
මෙය යොමු කිරීමකින් තොරව කපන ලද හා අලවන
බවක් පෙනේ

1
ලිපිගොනු පිටපත් කිරීම / ඇලවීම සහ නම නැවත ප්‍රතිනිර්මාණය කිරීම එකම ගැටළුවට තුඩු දෙයි. ව්‍යාපෘතිය පිරිසිදු කිරීම, ආර්.ජාවා අතින් සහ සියලු ආනයන ශීර්ෂයන් මකා දැමීමෙන් පසුව මෙම ආනයන ශීර්ෂයන් නැවත ගොඩනඟා ගැනීම (තවමත් CTRL + SHIFT + O සමඟ) හොඳින් ක්‍රියාත්මක විය.
hornetbzz

මෙය මට වැඩ කළා. මම මැනිෆෙස්ටයේ පැකේජයේ නම වෙනස් කර තිබුණි. නිවැරදි ආනයනය එකතු කිරීම සඳහා ජනනය කරන ලද R පන්තියේ අගයන් සඳහන් කරන පන්ති වලදී මට ctrl-shift-O භාවිතා කිරීමට සිදු විය.
චක් කෘට්සින්ගර්

මෙය මට එය සවි කළේය. අතීතයේ දී ආනයන ගැටළුව ඇති බව ද දැක ඇත, නමුත් මෙවර ගැටලුව වූයේ මැනිෆෙස්ටයේ ඇති පැකේජයේ නම src ෆෝල්ඩරයේ ඇති පැකේජ නාමයට නොගැලපේ.
ජිම් රේන්ජ්

මගේ අයදුම්පතේ ක්‍රියාකාරකම් දෙකක් තිබුණි. R ට එරෙහිව ජනනය කරන ලද එකකට වෙනස් පැකේජ නාමයක් තිබුණි. මට R අතින් ආනයනය කිරීමට සිදු වියimport com.example.main.package.name.R;
ඔලිවර් මොරන්

85

විල් කියපු දේ හරි

R යනු ස්වයංක්‍රීයව ජනනය කරන ලද පන්තියකි, එය ඔබගේ> සම්පත් හඳුනා ගැනීමට භාවිතා කරන නියතයන් දරයි. ඔබ සතුව R.java ගොනුවක් නොමැති නම් (එය 1.5 SDK සමඟ සූර්යග්‍රහණය තුළ gen / eu.mauriziopz.gps / R.java වනු ඇත) ඔබේ ව්‍යාපෘතිය වසා දමා නැවත විවෘත කිරීමට හෝ> ව්‍යාපෘතිය> සියල්ල ගොඩනඟා ගැනීමට මම නිර්දේශ කරමි. (සහ> ජොසෙෆ් විසින් නිර්දේශ කර ඇති පරිදි "ස්වයංක්‍රීයව ගොඩනඟන්න" තේරීම). නව ව්‍යාපෘතියක් කිරීමට උත්සාහ කරනවාට වඩා එය ක්‍රියාත්මක නොවන්නේ නම්, ගැටළුව නැවත මෙහි පළ කිරීමට වඩා නැවත ප්‍රතිනිර්මාණය කළහොත් අපි වඩාත් විස්තරාත්මකව යන්නෙමු.

නමුත් පළමු ගැටළුව ඇති කරන තවත් ගැටළුවක් ඇති බව මම දැන ගතිමි. SDK නාමාවලියෙහි ඇති මෙවලම් ක්‍රියාත්මක කිරීමට අවසර නොමැත, එබැවින් එය සූර්යග්‍රහණය සඳහා නොපවතින ආකාරයට විය, එබැවින් එය R.javaගොනුව ගොඩනගා නැත .

එබැවින් අවසරය වෙනස් කිරීම සහ "ස්වයංක්‍රීයව ගොඩනඟන්න" තේරීම ගැටළුව විසඳීය.


Ign ජිග්නේෂ් - cd $ANDROID_SDK_ROOT/build-tools/<version>. එවිට chmod a+xවැනි ගොනු මත aapt, aidl, dexdump, dx, ආදිය ANDROID_SDK_ROOTඔබේ පසුබිම සකසා ගත යුතු අතර, එය ඔබගේ SDK ස්ථාපනය යොමු කරනු ඇත. උදාහරණයක් ලෙස , /opt/android-sdk. දෙකම සකස් කිරීමට එහි වැදගත් ANDROID_SDK_ROOTහා ANDROID_NDK_ROOTඇන්ඩ්රොයිඩ් මෙවලම් අභ්යන්තර ඒවා භාවිතා නිසා. නිර්දේශිත NDK නාමාවලිය බලන්න ? NDK පරිශීලක ලැයිස්තුවේ.
jww

Ew ලුවිස් .. මම දැනටමත් "ස්වයංක්‍රීයව ගොඩනඟන්න" තෝරා ගත්තද දෝෂය තවමත් පවතී.
d_unknown

39

R යනු ස්වයංක්‍රීයව ජනනය කරන ලද පන්තියකි, එය ඔබේ සම්පත් හඳුනා ගැනීමට භාවිතා කරන නියතයන් දරයි. ඔබ සතුව R.java ගොනුවක් නොමැති නම් (එය 1.5 SDK සමඟ සූර්යග්‍රහණයේ gen / eu.mauriziopz.gps / R.java වනු ඇත) ඔබේ ව්‍යාපෘතිය වසා දමා නැවත විවෘත කිරීම හෝ ව්‍යාපෘතිය> සියල්ල ගොඩනැගීම (සහ ජොසෙෆ් විසින් නිර්දේශ කර ඇති පරිදි "ස්වයංක්‍රීයව ගොඩනඟන්න" තේරීම). නව ව්‍යාපෘතියක් කිරීමට උත්සාහ කරනවාට වඩා එය ක්‍රියා නොකරන්නේ නම්, ගැටළුව නැවත මෙහි පළ කිරීමට වඩා ප්‍රතිනිර්මාණය කළහොත් අපි වඩාත් විස්තරාත්මකව යමු.


8
මෙය මට වැඩ කළ නමුත් මට මුලින්ම "ව්‍යාපෘති -> පිරිසිදු ..." කිරීමට සිදු විය.
මැට් කොනොලි

27

සියලුම ලිපිගොනු වසා දමන්න, පිරිසිදු ව්‍යාපෘතිය, සූර්යග්‍රහණය නැවත ආරම්භ කරන්න.


23
+1 නමුත් සමහර විට එයට සූර්යග්‍රහණ නැවත ආරම්භ කිරීම් 3 ක් අවශ්‍ය වන අතර ව්‍යාපෘති 7 ක් අතර පිරිසිදු වේ. දිගටම උත්සාහ කරන්න ;-) #rant
මතියස්

3
ස්පර්ශ කිරීමෙන් එය මිශ්‍ර කරන්න (සංස්කරණය + සුරකින්න) .xml ගොනු (strings.xml ...).
අලි ෂකිබා

24

පරීක්ෂා කිරීම වටී AndroidManifest.xml. ගුණාංගයට packageනිවැරදි අගයක් ඇත.

එනම්:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
   package="your.correct.package.name"
   ...

ඔබ එය වෙනස් කළ පසු, R.javaනැවත උත්පාදනය වනු ඇත.


මගේ මුල් පැකේජයේ නම com.xxxxxdroid.router. මම මගේ යෙදුමේ නව අනුවාදයක් නිර්මාණය කළෙමි com.xxxxxdroid2.router. මම මෙය කළ පසු මට AndroidManifest.xml හි පැකේජයේ නම යාවත්කාලීන කිරීමට සිදු විය, නමුත් බොහෝ කලකට පසුව මම පැරණි පන්ති පිටපත් කර අලවන්නට පටන් ගත්තෙමි. දර්ශකයට ස්තූතියි!
ඉයුජින් වැන් ඩර් මර්වේ

මෙය මගේ ගැටලුව නිරාකරණය කර, මම එක්ස්එම්එල් ගොනුවක වැඩ කරමින් සිටියෙමි, මට මතකයි සතුටුයි, ඒවායින් එකක් මට ලැබුණා ... ස්තූතියි ...
GHz

19

ඔබේ පැකේජය සඳහා මූල නාම අවකාශයට වඩා වෙනස් නම් අවකාශයකට ක්‍රියාකාරකමක් එක් කිරීමෙන් ද මෙම දෝෂය ඇතිවිය හැකිය.

උදාහරණයක් ලෙස, com.example.myappඔබේ පැකේජයේ මූල නාම අවකාශය නම්, ඔබට com.example.myapp.activitiesනාම අවකාශයට ක්‍රියාකාරකමක් එක් කළ හැකිය .

මෙය "R විසඳිය නොහැක" දෝෂය ඇති කරයි.

ඔබගේ ක්‍රියාකාරකම් වල පෙරනිමි නාම අවකාශයේ R ආනයනය නිවැරදි කිරීමට:

import com.example.myapp.R;

මෙය මට උදව් විය, මම මගේ ක්‍රියාකාරකම් මූලයට පහළින් ඇති පැකේජයකට ගෙන ගිය අතර, මූල පැකේජය ආනයනයක් ලෙස එකතු කර (ආනයනය com.example.myapp.R;) ගැටළුව විසඳීය.
eageranalyst

19

පෙර පිළිතුරු වල ඇති විශිෂ්ට යෝජනා සමඟ, ඔබගේ ඇන්ඩ්‍රොයිඩ් ඉලක්කය සකසා ඇති බවට වග බලා ගන්න:

  1. ඔබේ ව්‍යාපෘතිය මත දකුණු-ක්ලික් කරන්න
  2. ගුණාංග තෝරන්න
  3. වම් මෙනුවේ Android තෝරන්න
  4. සුදුසු ව්‍යාපෘති ගොඩනැගීමේ ඉලක්කයට යාබද කොටුවක් තෝරන්න.
  5. අයදුම් කරන්න සහ හරි ක්ලික් කරන්න

සංස්කරණය කරන්න: අවුරුද්දකට පසු මට තවත් හේතුවක් හමු විය. මගේ ඇඳිය ​​හැකි ෆෝල්ඩරයේ .png රූපයක් හා සමාන නමක් සහිත .jpg රූපයක් මා සතුව තිබුණි. මෙම කේතය මගේ කේතයේ සඳහන් කිරීමෙන් වැඩසටහන ව්‍යාකූල විය යුතු අතර එය "R විසඳිය නොහැක" දෝෂය ලබා දී ඇත.


17

ඔබ ඇන්ඩ්‍රොයිඩ් බිල්ඩ් මෙවලම් පෝරමය sdk කළමනාකරු ස්ථාපනය කර ඇති බවට වග බලා ගන්න

ප්‍රොජෙක්ට් රයිට් ක්ලික් ගුණාංග-> ජාවා බිල්ඩ්පාත් පුස්තකාලය තෝරන්න android-support.jar මෙම පියවර අනුගමනය කරන්න.

තෝරාගත් ඇණවුම සහ අපනයන පටිත්තට වඩා Project-> Properties-> Java Build Path වෙත යන්න. Android-support .jar පුස්තකාලය පරීක්ෂා කර එය ලැයිස්තුවේ ඉහළට ඔසවන්න. පිරිසිදු කර නැවත ගොඩනඟන්න..එය බොහෝ අවස්ථාවන් සඳහා ක්‍රියා කරයි

රූප විස්තරය මෙහි ඇතුළත් කරන්න


15

මට මෙම ගැටලුව මිලියන ගණනක් තිස්සේ පැවතුන අතර එයට හේතුව කුමක්දැයි මට වැටහුණි: මම නමේ ලොකු අකුරු සහිත XML ගොනුවක් නිර්මාණය කළෙමි. ඔබගේ සියලුම XML ගොනු නාමයන් /resගැලපිය යුතුය [a-z0-9\\._].


එසේම, මම දුටුවා තොග පිටාර ගැලීම නිසා අපට සියලු පසුපසට පැන යා යුතු බව.

14

සරලම විසඳුම - සමහර විට ඔබට ස්වයංක්‍රීය ජනක යන්ත්‍රය ලබා ගැනීම සඳහා ඔබ වැඩ කරමින් සිටි XML ගොනුව සුරැකීමට අවශ්‍ය වේ.

ගොනුව සුරකින්න (උදා: main.xml) ඉන්පසු R.java ගොනුව මකා දමා ප්‍රතිජනනය කළ R.java විසින් R විසඳීමේ ගැටළුව විසඳන්නේ දැයි බලන්න.


සැබෑ. සමහර විට, ඔබේ XML හි (රතු පැහැ රේඛාව හෝ කහ විශ්මය ජනක ලක්ෂ්‍යය) නොමැති ගැටළුවක් ඇති බව පැවසුවහොත්, වැරදි රේඛාව මකා දමන්න, XML ගොනුව සුරකින්න, රේඛාව නැවත අලවන්න, නැවත එය සුරකින්න. ඔබ ස්වයංක්‍රීයව ගොඩනඟන්නේ නැතිනම්, ඉන් පසුව නැවත ගොඩනඟන්න, එවිට එය ක්‍රියාත්මක වනු ඇත. සූර්යග්‍රහණය සමහර විට මෝඩය. :)
hotshot309

ඉහත ලැයිස්තුගත කර ඇති අනෙක් පිළිතුරු තිබියදීත්, මෙය මට නිවැරදි පිළිතුර විය. නියැදි කේතයක් සම්පාදනය කිරීමට ගිය විට මට මුලින් "APK සොයාගත නොහැක" පණිවිඩය ලැබුණි, පසුව "R විසඳිය නොහැක" දෝෂ ටොන් ගණනක් ජනනය කළ පිරිසිදු කිරීමක් සිදු කර, පසුව .xml ගොනුව විවෘත කර එය අතින් අතින් සුරකින ලදි. නිෂ්කාශනය කර ඇති අතර මට සම්පාදනය කළ හැකිය.
sXe

එතරම් සත්‍යයකි: ව්‍යාපෘති පිරිසිදු කිරීමෙන් පසු ආර්.ජාවා අතුරුදහන් විය - නූල් සංස්කරණය කිරීම සහ සුරැකීම. Xml ගැටළුව විසඳීය.
බර්නින්ලියෝ

12

XML ගොනු නාම පරීක්ෂා කරන්න. ඔවුන් සියල්ලම කුඩා අකුරුවල ඇති බවට වග බලා ගන්න.

ඕනෑම රූප සම්පත් නාම සියල්ලම LOWER CASE හි ඇති බවට වග බලා ගන්න. මගේ jpg ගොනුවේ නමින් ලොකු අකුරක් ඇති අතර, එය මගේ ව්‍යාපෘතිය හරහා R නොවිසඳුනු දෝෂයක් ඇති කළේය.


මේ සඳහා +1 මගේ ප්‍රශ්නය විය. ඔබ ඔබේ පින්තූර එසේ නම් කළ යුතුය: eicon.png eIcon.png නොවේ. කොන්සෝලය දෙස බැලීමෙන් මම දෝෂය සොයා ගතිමි. එය අවලංගු ලිපිගොනු නම සහිත ගොනුවේ දෝෂයක්
යවයි


10

මෙම දෝෂය මගේ x64 ලිනක්ස් මින්ට් ස්ථාපනය මත වර්ධනය විය. පැකේජය ස්ථාපනය කර නොමැති ADBනිසා ප්‍රති the ලය ද්විමය අසාර්ථක බව පෙනී ගියේය ia32-libs. apt-get install ia32-libsසූර්යග්‍රහණය සරලව ධාවනය කිරීම සහ නැවත ආරම්භ කිරීම මඟින් දෝෂය නිරාකරණය විය.

ඔබේ x64 ඩිස්ට්‍රෝ හි ia32-libs නොමැති නම්, ඔබට Multiarch වෙත යා යුතුය.

මෙම ලිපියේ # 4 සහ # 5 පරීක්ෂා කරන්න: http://crunchbang.org/forums/viewtopic.php?pid=277883#p277883

මෙය යමෙකුට උපකාරී වේ යැයි සිතමි.


ඔබ සතුව බිට් 64 ලිනක්ස් ස්ථාපනයක් තිබේ නම් ඔබට ia32-libs අවශ්‍ය වනු ඇති බව සඳහන් කිරීම වටී. ඔබට එය නොමැති නම්, adb විධානය ක්‍රියාත්මක කිරීමට උත්සාහ කිරීමෙන් ගොනුව හෝ නාමාවලිය සොයාගත නොහැකි යැයි අමුතු පණිවිඩයක් ලැබෙනු ඇත.
rs_atl

10

ඔබට SDK මෙවලම් යාවත්කාලීන කිරීමට / ස්ථාපනය කිරීමට අවශ්‍ය විය හැකිය. ඇන්ඩ්‍රොයිඩ් එස්ඩීකේ කළමණාකරු නැවත දියත් කර නව අයිතමයක් ස්ථාපනය කරන්න: ඇන්ඩ්‍රොයිඩ් එස්ඩීකේ බිල්ඩ්-ටූල්ස්.ඕන් එක මකාදැමීමකින්, ඔබ වෙනුවෙන් කුමන වැඩක් නිවැරදි කරන්න.රූප විස්තරය මෙහි ඇතුළත් කරන්න


9

ඔබට SDK මෙවලම් යාවත්කාලීන කිරීමට අවශ්‍ය විය හැකිය. ඇන්ඩ්‍රොයිඩ් එස්ඩීකේ කළමනාකරු නැවත දියත් කර නව අයිතමයක් ස්ථාපනය කරන්න: ඇන්ඩ්‍රොයිඩ් එස්ඩීකේ බිල්ඩ්-මෙවලම්.

රූප විස්තරය මෙහි ඇතුළත් කරන්න


8

මටත් මේ ගැටලුව තිබුණා. මම නොදැනුවත්වම ගොනුවෙන් "app_name" වචන සම්පත මකා දමා ඇති අතර එය නිහ strings.xmlsilent දෝෂයක් ඇති කරයි. මම එය නැවත එකතු කළ පසු, R පන්තිය සාර්ථකව ජනනය කරන ලද අතර සියල්ල උපස්ථ වී ක්‍රියාත්මක විය.


6

ඔබගේ නව XML පිරිසැලසුම් ගොනුවේ නම කුඩා අකුරක් බවට පත් කිරීමට උත්සාහ කරන්න. උදාහරණයක් ලෙස, my_file.xmlවෙනුවට භාවිතා කරන්න myFile.xml.


+1 ඔව්! එය නිවැරදි නම් කිරීමේ සම්මුතීන් අනුගමනය කරන බවට වග බලා ගන්න ... [a-z0-9_.]
jasonflaherty

6

තවත් හේතුවක් R.javaautogenerated ලබා නොමැති විය හැකි ඔබ වගේ බහලුම් තිබේ නම් වේ විභේදන / drawable-hdpi , විභේදන / drawable-mdpi , හෝ විභේදන / drawable-ldpi .

1.6+ මෙම නාමාවලි සමඟ හොඳින් ඇති බව පෙනේ, නමුත් 1.5 ඒවා අවශ්‍ය නැත. මම එම නාමාවලි ඉවත් කළ විට, R.javaනැවත මා වෙනුවෙන් ස්වයංක්‍රීයව උත්පාදනය කිරීමට පටන් ගත්තා.


6

පළමු චෙක්පත ඕනෑම xml පිරිසැලසුමක කිසියම් දෝෂයක් තිබේද නැද්ද යන්න පළමුව එය විසඳා ගන්නේ නම්.

එසේ නොමැතිනම් ව්‍යාපෘතියෙන් ජුනිට් යැපීම ඉවත් කර ව්‍යාපෘතිය නැවත ගොඩනඟන්න.

රූප විස්තරය මෙහි ඇතුළත් කරන්න


5

බොහෝ විට මෙය සිදුවන්නේ ව්‍යාපෘතිය නිර්මාණය කිරීමේදී ඔබ සැපයූ MinSDK අනුවාද අංකය නිසාය. උදාහරණයක්:

ඔබට 2.1 අවම වීමට අවශ්‍ය නම්, ඇන්ඩ්‍රොයිඩ් 2.1 ඇත්ත වශයෙන්ම API මට්ටම 7 වේ.

ඔබ බාගත කර ස්ථාපනය කර ඇති SDK බ්‍රවුස් කරන විට මා කතා කරන්නේ කුමක් දැයි ඔබට දැක ගත හැකිය. ඔබ SDK ස්ථාපනය කළ ස්ථානයට සංචාලනය කරන්න ( C:\android-sdk-windowsඋදාහරණයක් ලෙස) සහ "වේදිකා" නම් ෆෝල්ඩරය විවෘත කරන්න. ෆෝල්ඩරයක් ලෙස ලැයිස්තුගත කර ඇති "android-7" වැනි දෙයක් ඔබට පෙනෙනු source.propertiesඇති අතර, පෙළ සංස්කාරකයක් සමඟ විවෘත කළ විට ගොනුවක් ඇති බව ඔබ විවෘත කළහොත් ඔබට අදාළ වේදිකා අනුවාදය පෙන්වනු ඇත.

ඔබ ව්‍යාපෘතියක් නිර්මාණය කරන විට, ඔබ "ඉලක්කයක් ගොඩනඟන්න" API එකක් තෝරා ගත යුතු අතර, එම ලැයිස්තුවේ "API මට්ටම" ලෙස නම් කර ඇති අවසාන තීරුවේ MinSDK සැකසුම ජනගහනය කිරීමේදී ඔබ සොයන අංකය පෙන්වයි.

R.javaProject> gen> packagename> R.java යටතේ ගොනුව නිර්මාණය නොකිරීමට හේතු වන වඩාත් පොදු වැරැද්දක් මෙය විය හැකිය .


5

ඉවත් කරන්න main.out.xml. මම මේ සඳහා අළුත් වන අතර මෙම ගොනුව භාවිතා කරන්නේ කුමක් දැයි තවමත් නොදනී, නමුත් එය ඉවත් කිරීමෙන් ගැටළුව ඉවත් විය.


5

Android Top මෙනු ලැයිස්තුවට යන්න. බිල්ඩ් මෙනුව මත ක්ලික් කරන්න, බිල්ඩ් යටතේ නැවත ගොඩනැඟීමේ ව්‍යාපෘතිය මත ක්ලික් කරන්න .

රූප විස්තරය මෙහි ඇතුළත් කරන්න


4

මට ඇන්ඩ්‍රොයිඩ් 8 හි උදාහරණ තිබූ අතර ඇන්ඩ්‍රොයිඩ් 7 එස්ඩීකේ භාවිතා කිරීමට උත්සාහ කරමින් සිටියෙමි. මම ව්‍යාපෘතිය වසා දමා යෙදුම් ෆෝල්ඩරය නැවත විවෘත කර ඇන්ඩ්‍රොයිඩ් 8 එස්ඩීකේ භාවිතා කිරීමට තෝරා ගත් විට එයට ආර් ගොනුව සොයා ගැනීමට හැකි විය. මෙය උපකාරී වේ යැයි සිතමි.


4

මගේ නඩුවේ, මගේ දෝෂයක් තිබේ AndroidManifest.xml. තවත් සමහරු පවසා ඇත්තේ ඔබේ එක්ස්එම්එල් ලිපිගොනු දෝෂ වලින් තොර විය යුතු බවයි, නමුත් මම බැලුවේ රෙස් / ෆෝල්ඩරයේ පමණි. හැකි තරම් දෝෂ සොයාගෙන නිවැරදි කරන්න, එවිට ගැටලුව විසඳෙනු ඇත.


මගේ නඩුවේ වැරදිකරු වූයේ මෙයයි. R.java තවම ගොඩනගා නොමැති නම්, මැනිෆෙස්ට්. Xml ගොනුවේ ඇති ඕනෑම දෝෂයක් මෙම ගැටළුව ඇති කළ හැකිය.
SMBiggs

4

යමෙක් උනන්දුවක් දක්වන්නේ නම් (මම මෙහි ඔබේ ජීවිතය බේරා ගන්නවා විය හැකිය), මට දෝෂයක් ඇතිවිය, R.xmlවිසඳිය නොහැක, ජීඑල්එස් ව්‍යාපෘතියක තරමක් වෙනස් ය. හ්ම්ම්ම්. බැලූ පසු R.java, ස්වයංක්‍රීයව ජනනය කරන ලද පන්තියක් මට හමු විය XML.java, (මම හිතන්නේ) එහි නොතිබුණි.

විසඳුමක්? එයට නව ෆෝල්ඩරයක් අවශ්‍ය විය res: res\xmlසහ එහි ගොනුවක් කැඳවනු default_values.xml ලැබේ. එහෙනම් ඔක්කොම හරි.

ඔබට එම ගොනුව නොලැබුනේ නම්, එය:

<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen
    xmlns:android="http://schemas.android.com/apk/res/android">
</PreferenceScreen>
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.