2016-06-13 52 views

回答

9

新的火力地堡(9XX)庫可以在谷歌庫中找到。您可以使用Eclipse Android SDK Manager進行安裝。打開SDK管理器並向下滾動,直到找到Google Repository並安裝軟件包。

的包將被安裝在/演員/谷歌/ m2repository,你會發現在火力地堡文件進一步下跌在/ COM /谷歌/安卓/火力點。

您可以將.aar文件重命名爲.zip並提取jar文件,將它們從classes.jar重命名並將它們複製到Eclipse中顯示的項目libs文件夾中(或者複製到Eclipse外部,然後按照說明導入項目到Eclipse中。)

+0

提取每一個。罐子裏的.aar文件? – Eames

+0

我已經在eclipse中使用了這個,但我正在FirebaseMessagingService無法解析到一個類型,請任何人指導我? – Achin

+1

提取aar文件只是給了我一個Manifest&R.txt文件。哪一個給出了jar文件? – Zen

2

有對Android的工作室搖籃的舉動。 Firebase CM的Eclipse解決方案不是即將推出的。我的感覺是,我們都必須儘快與Gradle轉移到AS。這裏有很好的書籍和Google開發網站的簡單說明。我們不妨開始學習新的IDE並遷移。

+6

主要問題是,在一些機器上,即使在離線模式下,Gradle也需要花費很長時間來構建,這就是爲什麼我個人不再使用android studio,它是一個幾乎相同,但測試應用程序在AS中比在Eclipse中花費的時間要長得多,在我看來Eclipse仍然是最快的 – Homombi

+0

是的。你有沒有想過如何在Eclipse上導入Firebase? – Zen

+0

與上述答案中的說明相同。基本的客戶端實現需要firebase-iid和firebase-messaging。打開存檔時,您將看到classes.jar,在導入到Eclipse之前必須重命名它們,否則它們將相互覆蓋! – usajnf

1

舊代碼工作沒有必要火力唯一的變化而變化的代碼是在服務器代碼中必須使用的Web API密鑰從火力計劃和發件人ID按照舊的代碼風格。你必須更換GCM網址的web腳本 - https://fcm.googleapis.com/fcm/send

火力庫不需要......

+0

我相信這是正確的。 GCM客戶端類仍然有效,但它們已被棄用,因此無法維護。 FCM客戶端類最終必須交換到您的客戶端代碼中。 – usajnf

1

您可以在您的Android清單

<uses-permission android:name="android.permission.INTERNET" /> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
<uses-permission android:name="android.permission.WAKE_LOCK" /> 
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" /> 
<receiver 
      android:name="com.google.firebase.iid.FirebaseInstanceIdReceiver" 
      android:exported="true" 
      android:permission="com.google.android.c2dm.permission.SEND" > 
      <intent-filter> 
       <action android:name="com.google.android.c2dm.intent.RECEIVE" /> 
       <action android:name="com.google.android.c2dm.intent.REGISTRATION" /> 

       <category android:name="YOUR PACKAGE NAME" /> 
      </intent-filter> 
     </receiver> 
     <receiver 
      android:name="com.google.firebase.iid.FirebaseInstanceIdInternalReceiver" 
      android:exported="false" /> 

添加這一點,那麼你就可以得到令牌並嘗試發送消息。

也不要忘了在你的代碼構建FirebaseApps(在我的情況我MainActivity)

FirebaseOptions options = new FirebaseOptions.Builder() 
    .setApiKey("YOUR FIREBASE API KEY") 
    .setApplicationId("YOUR FIREBASE APP ID") 
    .setGcmSenderId("YOUR FIREBASE SENDER ID") 
    .build(); 

FirebaseApp myApp = FirebaseApp.initializeApp(getApplicationContext(), options); 
     token = FirebaseInstanceId.getInstance(myApp).getToken(); 

希望它會得到你找什麼Eclipse的。

+1

謝謝你的信息。 當我調用FirebaseOptions.Builder()時,我得到一個NoClassDefFoundError與此信息: 引起:java.lang.ClassNotFoundException:沒有找到類「com.google.android.gms.common.internal.zzac」on路徑:DexPathList 你知道這個錯誤可能是什麼嗎? – Roman

+0

@Roman,你有沒有嘗試把你需要的所有jar放到你的依賴項上? – Yuw

+0

我已經包含firebase common,iid和消息傳遞罐。但我不知道我需要哪個谷歌播放庫。現在嘗試基地和iid,但我仍然得到同樣的錯誤。 – Roman

1

看一看下面的資源。簡而言之,就是將Firebase庫包含到項目中(請參閱GitHub項目和最後的兩個視頻),並手動執行插件在Android Studio/Gradle中爲您執行的步驟。

相關問題