2014-04-04 24 views
2

我正在嘗試使用Google Play服務庫的某些功能,但無法使其工作。我已經加入了參考谷歌遊戲服務庫清單文件(從Flash Builder)如何在Android AIR應用的本機擴展中使用GooglePlayServices庫?

<application android:enabled="true"> 
<meta-data android:name="com.google.android.gms.version" 
       android:value="@integer/google_play_services_version" /> 
<activity android:excludeFromRecents="false"> 
    <intent-filter> 
     <action android:name="android.intent.action.MAIN"/> 
      <category android:name="android.intent.category.LAUNCHER"/> 
    </intent-filter> 
</activity> 
</application> 

在我ANE,我已經添加了參考谷歌播放-services_lib的來源,但是當我試圖調用FREFunction檢查谷歌的Play的供應服務

@Override 
public FREObject call(FREContext context, FREObject[] args){ 
    boolean result = false; 
    try{ 
     Activity activitiy = context.getActivity(); 
     activityContext = activitiy.getBaseContext(); 
      result = isGooglePlayServiceExists(); 

    }catch(IllegalStateException e){ 
     Log.e(AneUtils.TAG, "Failed to get AIR current activity", e); 
} 

    FREObject obj = null; 
    try{ 
     obj = FREObject.newObject(result); 
    }catch(FREWrongThreadException e){ 
     Log.e(AneUtils.TAG, "Failed to create FREObject from [" + result + "]"); 
    } 


    return obj; 
} 

private boolean isGooglePlayServiceExists(Context activityContext){ 
    int googlePlayServicesCheck = -1; 
    try{ 
     googlePlayServicesCheck = GooglePlayServicesUtil.isGooglePlayServicesAvailable(activityContext); 
    }catch(Exception e){ 
     Log.e(AneUtils.TAG, "Error getting googlePlayService state",e); 
    } 

    if(googlePlayServicesCheck == ConnectionResult.SUCCESS){ 
     return true; 
    } 
    return false; 
} 

的ANE墜毀在該行GooglePlayServicesUtil.isGooglePlayServicesAvailable(activityContext),所以我真的很懷疑谷歌播放不添加服務庫。

是否有人成功將Google Play服務庫導入到Adobe AIR Android應用程序中?

任何意見或幫助將不勝感激。謝謝。

回答

1

對於任何尋找答案的人,希望這會有所幫助: 爲了讓我們在我們的ANE中使用任何Google Android庫(或第三方Android庫),您必須找出Android庫的真實版本號然後將該號碼插入清單文件中。 例如,而不是

<meta-data android:name="com.google.android.gms.version" 
      android:value="@integer/google_play_services_version" />  

我們必須找出真正的版本號和您的艙單數據應該是:

<meta-data android:name="com.google.android.gms.version" 
      android:value="4432145" /> 

在這種情況下,數字4432145是GooglePlayService的版本號我們想要使用的庫。你可以在Android庫項目的資源中找到這個數字。 將來如果您想要升級到使用最新版本的GooglePlayService庫,則必須重新構建ANE文件並將版本號更正爲清單文件中庫的新版本號。

相關問題