2012-12-20 29 views
5

Jestem nowym użytkownikiem Androida i właśnie zacząłem pracować nad obiektami flash, przez co rozumiem pliki .swf. Czytałem dużo o korzystaniu z widoku sieciowego, aby załadować plik SWF przechowywany w lokalizacji aktywów/SD, ale bez skutku. Mam propozycje z How to Play local swf files in a webview, odtwarzacze flash, funkcje Adobe AIR ustalania swf dokonać apk, itd. Ale nadal nie jestem mogąc uruchomić plików .swf zadowalający, z powodu następujących powodów:Jak uruchamiać pliki .swf na urządzeniu z Androidem

  1. Nawet jeśli ustawiłem wszystko tak jak w powyższym linku, otrzymuję pusty ekran, ku mojemu przerażeniu, że Flash Player nie jest obecnie domyślny ("Uruchom domyślnie" Opcja w Ustawienia-> Aplikacje-> Flash Player-> Uruchom domyślnie), dlatego nie mogę uruchamiać zawartości flash.

  2. Zastosowałem Adobe AIR, aby uzyskać apk pliku swf, wykonując długi proces, ale z dwóch powodów: a) Bardzo pracochłonny proces i b) wymaganie instalacji Adobe AIR czyni cały cel przegrana walka.

  3. Wiele Fachowe/Confusion flash i wiele nowości, jak lampa błyskowa nie jest dokonanie aktualizacji do swoich produktów dla sektora telefonii komórkowej, a jak android „ma”/„próbuje” przenieść w HTML 5.

Chciałbym, abyście wszyscy rozwiązali ten środek, aby uzyskać flashowy obiekt swf działający na systemie Android z minimalnymi dodatkami wtyczki do przeglądarki. Chciałbym mieć mniej plików wsparcia, jak to tylko możliwe, aby moja praca była również produktywna i edukacyjna.

Wyrażam dołączyć fragment kodu, który byłem w pracy, aby uzyskać pracę, aby uzyskać kolejny plik SWF:

  1. zbliżasz:

    import android.annotation.SuppressLint; 
        import android.app.Activity; 
        import android.os.Bundle; 
        import android.webkit.WebSettings; 
        import android.webkit.WebView; 
        import android.widget.LinearLayout; 
    
        @SuppressLint("SetJavaScriptEnabled") 
        public class SWFViewer extends Activity { 
        WebView wvswf; 
        LinearLayout linearLayout; 
        @Override 
        protected void onCreate(Bundle savedInstanceState) { 
         super.onCreate(savedInstanceState); 
         setContentView(R.layout.activity_swfviewer); 
         linearLayout = (LinearLayout) findViewById(R.id.linearLayout); 
         wvswf = new WebView(SWFViewer.this); 
         wvswf.getSettings().setJavaScriptEnabled(true); 
         wvswf.getSettings().setPluginState(WebSettings.PluginState.ON); 
         wvswf.getSettings().setAllowFileAccess(true); 
         linearLayout.addView(wvswf, LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.MATCH_PARENT); 
    
        String Url = "file:///android_asset/main.swf"; 
        wvswf.loadUrl(Url); 
    
         } 
    
    } 
    

z układem jako:

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

    <uses-sdk android:minSdkVersion="8" 
     android:maxSdkVersion="16" /> 

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

    <application 
     android:allowBackup="true" 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" 
     android:theme="@style/AppTheme" > 
     <activity 
      android:name="com.winit.nunna.swfviewer.SWFViewer" 
      android:label="@string/app_name" 
      android:screenOrientation="landscape" 
      android:theme="@android:style/Theme.NoTitleBar.Fullscreen" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
    </application> 

</manifest> 
  1. Podejście Dwa

Korzystanie z Adobe AIR SDK tworzymy apk korzystając główny plik SWF, niektóre pliki XML do konfiguracji i aplikacji podpisania, możemy wydać apk.

Wnioski: Pierwszym z nich jest najprostszy, ale nie o/p

12-20 13:56:28.457: INFO/WindowManager(162): MediaPlayer.is not PlayingVideo 

Im później jest kłopotliwe z dużą ilością dodatkowych zależności.

Proszę, daj mi lepsze opcje, aby uzyskać niedrogi, wysokiej/średniej wydajność Flash O/p.

+0

Pamiętaj, że Flash nie jest już obsługiwany przez Androida, na mocy decyzji Adobe. – CommonsWare

+0

Nie jestem w stanie zrozumieć znaczenia "Flash nie jest obsługiwany w systemie Android", byłoby ogromną pomocą, gdybyś mógł mi to wyjaśnić, także teraz czytam o SWFObject, który, jak sądzę, może być użyty w HTML5 do flashowania obiekty w niebrowerski sposób, proszę o komentarz również. Dzięki –

+2

Jeśli używasz wyszukiwarki do wyszukiwania 'android flash', możesz znaleźć http://www.theverge.com/2012/8/14/3241727/flash-for-android-dies i http: // www. zdnet.com/androids-flash-player-is-dead-live- with-it-7000002668/ i http://www.digitaltrends.com/mobile/adobe-flash-for-android-gone-with-barely-a -whimper/i http://readwrite.com/2012/08/14/adobe-flash-on-android-rip i http://www.webmonkey.com/2012/08/no-more-flash-for- android/i http://tech.slashdot.org/story/12/08/15/1441200/adobe-officially-kills-new-flash-installations-on-android i inne. Środowisko AIR może być nadal dostępne. – CommonsWare

Odpowiedz

-1

Nie ma prostego sposobu na integrację plików swf w natywnym kodzie Android (Java) bez użycia WebView.

Jeśli stwierdzasz, że Twój problem został rozwiązany przez zbudowanie pliku APK z Adobe AIR przy użyciu tego samego pliku SWF, to myślę, że naprawiłeś problem z przeniesieniem pliku SWF na Androida, ale nie zrobiłeś tego, o co prosiłeś w powyższym pytaniu .

Powiązane problemy