2015-01-07 27 views
0

我正在使用Brightcove sdk for android。Android的Brightcove sdk,例如不工作

我在libs文件夾中添加了sdk,並將其添加到依賴關係中。

和我使用的代碼是

public class MainActivity extends BrightcovePlayer { 
//private final String TAG = this.getClass().getSimpleName(); 

private EventEmitter eventEmitter; 
// BrightcoveVideoView brightcoveVideoView; 
//private GoogleIMAComponent googleIMAComponent; 
private String adRulesURL = "http://pubads.g.doubleclick.net/gampad/ads?sz=640x480&iu=%2F15018773%2Feverything2&ciu_szs=300x250%2C468x60%2C728x90&impl=s&gdfp_req=1&env=vp&output=xml_vast2&unviewed_position_start=1&url=dummy&correlator=[timestamp]&cmsid=133&vid=10XWSh7W4so&ad_rule=1"; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    // When extending the BrightcovePlayer, we must assign the BrightcoveVideoView before 
    // entering the superclass. This allows for some stock video player lifecycle 
    // management. 

    setContentView(R.layout.activity_main); 
    BrightcoveVideoView brightcoveVideoView = (BrightcoveVideoView) findViewById(R.id.brightcove_video_view); 
    super.onCreate(savedInstanceState); 
    brightcoveVideoView.add(Video.createVideo("http://solutions.brightcove.com/bcls/assets/videos/Bird_Titmouse.mp4", DeliveryType.MP4)); 
    brightcoveVideoView.start(); 

和佈局文件

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:orientation="vertical" 
tools:context=".MainActivity"> 

<com.brightcove.player.view.BrightcoveVideoView 
    android:id="@+id/brightcove_video_view" 
    android:layout_width="match_parent" 
    android:layout_height="280dp" 
    android:layout_gravity="center_horizontal|center_vertical" /> 

,我得到了錯誤的

6366-6366/E/AndroidRuntime﹕ FATAL EXCEPTION: main 
java.lang.NoClassDefFoundError: com.brightcove.player.R$layout 
     at com.brightcove.player.controller.BrightcoveClosedCaptioningController.makeCaptionsDialog(BrightcoveClosedCaptioningController.java:114) 
     at com.brightcove.player.controller.BrightcoveClosedCaptioningController.<init>(BrightcoveClosedCaptioningController.java:102) 
     at com.brightcove.player.view.BaseVideoView.setEventEmitter(BaseVideoView.java:298) 
     at com.brightcove.player.view.BrightcoveVideoView.setEventEmitter(BrightcoveVideoView.java:149) 
     at com.brightcove.player.view.BaseVideoView.onFinishInflate(BaseVideoView.java:255) 
     at android.view.LayoutInflater.rInflate(LayoutInflater.java:747) 
     at android.view.LayoutInflater.rInflate(LayoutInflater.java:742) 
     at android.view.LayoutInflater.inflate(LayoutInflater.java:489) 
     at android.view.LayoutInflater.inflate(LayoutInflater.java:396) 
     at android.view.LayoutInflater.inflate(LayoutInflater.java:352) 
     at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:274) 
     at android.app.Activity.setContentView(Activity.java:1835) 
     at com.testproject.myapplication.MainActivity.onCreate(MainActivity.java:50) 
     at android.app.Activity.performCreate(Activity.java:4470) 
     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1053) 
     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1934) 
     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1995) 
     at android.app.ActivityThread.access$600(ActivityThread.java:128) 
     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1161) 
     at android.os.Handler.dispatchMessage(Handler.java:99) 
     at android.os.Looper.loop(Looper.java:137) 
     at android.app.ActivityThread.main(ActivityThread.java:4517) 
     at java.lang.reflect.Method.invokeNative(Native Method) 
     at java.lang.reflect.Method.invoke(Method.java:511) 
     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:993) 
     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:760) 
     at dalvik.system.NativeStart.main(Native Method) 

什麼錯誤。我無法理解。

回答

2

我們最近添加了對pre-Kitkat上的隱藏式字幕樣式的定製支持,並且對話框需要一些資源,比如佈局。這些資源包含在.aar文件中,在使用gradle和Android Studio進行編譯時應該使用這些資源。 Android Studio已經達到1.0,所以我們建議在命令行上使用該或者Gradle來使用Brightcove SDK進行開發。對於傳統Eclipse開發,我們發佈舊版jar,但現在需要資源,您還必須使用apklib文件。 4.3.0版本缺少SDK apklib文件,但它將包含在下一版本中。如果你無法離開Eclipse,爲了暢通無阻,你應該回到使用4.2.7版本,直到4.3.1出來。

+0

感謝和我一樣的,現在是工作的罰款。如果你能能回答我一個問題,這將是更有幫助。 。我們計劃整合Youtube player api來播放youtube視頻。在這種情況下,無法在Brightcove播放器中播放廣告,然後導航至YouTube播放器? (在啓動brightcove視頻視圖之前無法啓動廣告播放) (我曾嘗試過,我添加了谷歌Ima廣告,但我沒有向播放器添加任何視頻並試圖運行,但沒有顯示該廣告因爲沒有視頻) –

+0

謝謝@paul Reilly求助 –