2013-04-19 7 views
11

Przeczytałem:
Error in AndroidManifest.xml "must have a minimum of 2 segments", ale nie ma rozwiązania.Pakiet aplikacji "AndroidManifest.xml" musi mieć co najmniej 2 segmenty.

Dzieje się to po zmianie nazwy projektu przez refactor-> rename (zamiast aplikacji com.example.my na myapp), a następnie zmienię nazwę również w manifeście.

Oto kod: (.) ​​

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="save_money" 
    android:versionCode="1" 
    android:versionName="1.0" > 

    <uses-sdk 
     android:minSdkVersion="8" 
     android:targetSdkVersion="17" /> 

    <uses-permission android:name="android.permission.INTERNET" /> 
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 

    <application 
     android:allowBackup="true" 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" 
     android:theme="@style/AppTheme" > 
     <activity 
      android:name="save_money.MainActivity" 
      android:label="@string/app_name" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
     <activity 
      android:name="save_money.Article" 
      android:label="@string/title_activity_article" > 
     </activity> 
     <activity 
      android:name="save_money.HashmalActivity" 
      android:label="@string/title_activity_hashmal" > 
     </activity> 
     <activity 
      android:name="save_money.ImageAdapter" 
      android:label="a" > 
     </activity> 
     <activity 
      android:name="save_money.SavedItems" 
      android:label="פריטים שמורים" > 
     </activity> 
     <activity 
      android:name="save_money.Screen2HashmalActivity" 
      android:label="עלות צריכה" > 
     </activity> 
     <activity 
      android:name="save_money.SelectArticle" 
      android:label="בחר מאמר" > 
     </activity> 
    </application> 

</manifest> 
+0

myślę, że odpowiedź w drugim pytaniu miał rację: nie nazywają swój projekt „save_money” ale „com.save_money” przynajmniej, nawet jeśli ja osobiście proponuję „com.yournickname_or_company.savemoney” –

+2

'com. example.my app "nie mogła być Twoją oryginalną nazwą pakietu. Nazwy pakietów nie mogą zawierać spacji. Naprawdę nie powinieneś używać 'save_money' jako nazwy pakietu. Podczas wybierania nazwy pakietu powinieneś dążyć do jej unikalności, ponieważ pojawią się błędy, jeśli dwie aplikacje mają tę samą. Co więcej, nazwa twojego pakietu nie jest "skierowana przez użytkownika", więc nie musisz używać żargonu marketingowego, w zasadzie nikt go nie zobaczy, więc nie ma sensu. – FoamyGuy

+0

google sprawdź nazwę: musisz użyć innej nazwy pakietu, ponieważ "com.example" jest ograniczone. "com" bez "przykład" jest ok? – user2073729

Odpowiedz

31

Co to znaczy jest deklaracja pakiet w swoim manifeście musi mieć co najmniej dwie części oddzielone kropką. Zamiast po prostu powiedzieć package="save_money", zmień go na package="com.save_money". To powinno usunąć twój błąd. Podobnie, wszędzie tam, gdzie określasz nazwę działania, musisz również tam go zaktualizować. Powodzenia!

2

Domyślam się, że musisz mieć co najmniej 2 segmenty dla nazwy twojego pakietu. Więc zamiast package="save_money Wypróbuj package="me.save_money" lub cokolwiek chcesz.

Powiązane problemy