2017-02-04 7 views
0

facebook sdkからEclipseにライブラリプロジェクトを作成しようとしています。 このエラーが表示さ:

タグ属性当局は、無効な文字 '$' を持っています。 AndroidManifest.xml/FacebookActivityここでライン44のAndroid AAPT 問題

Manifestの一部です:

<provider 
    android:name="com.facebook.internal.FacebookInitProvider" 
    android:authorities="${applicationId}.FacebookInitProvider" 
    android:exported="false" /> 

私はこれをどのように修正することができますか?

答えて

3

マニフェストプレースホルダを使用しようとしています。 AFAIK、Eclipseではサポートされていません。 Eclipse自体は、Androidアプリの開発のためにGoogleからもうサポートされていないことに注意してください。

次のいずれかの

  • は、あなたのアプリのパッケージ名で${applicationId}のすべてのオカレンスを交換するか、Androidのメーカー

0

だからあなたのアプリを構築し、のGradleへ

  • スイッチビルドはすべてのマニフェストファイルをAPKにパッケージ化された単一のマニフェストファイルにマージします。 Antビルドでは、マニフェストをデフォルトでにマージしません。また、アプリのプロジェクトの依存関係にある各ライブラリのマニフェストからアクティビティとプロバイダのタグをコピーするか、アプリのプロジェクトの「project.properties」に「manifestmerger.enabled = true」を設定してManifestの合併を有効にしてみてください。 私は最初のケースを使用します。私は自分のAndroidManifest.xmlに2つ目のプロバイダタグを追加します。

    <!--provider from facebook sdk manifest--> 
    <provider 
        android:authorities="com.example.hellofacebook.FacebookInitProvider" 
        android:name="com.facebook.internal.FacebookInitProvider" 
        android:exported="false" /> 
    

    だけで$ {APPLICATIONID}の代わりにアプリのパッケージ名を入れて、できるようにするには、ライブラリのマニフェストで$ {APPLICATIONID}を置き換えることを忘れないでくださいあなたのアプリの依存としてそれをコンパイルする。

  • 関連する問題