Jetzt kostenlos registrieren. Mitglieder surfen ohne Werbung auf Android-Hilfe.de!
Zurück   Android-Hilfe.de > Android Developer > Android App Entwicklung

PDF Datei Speicherort

Das Thema "PDF Datei Speicherort" befindet sich unter Android App Entwicklung auf Android-Hilfe.de.


Antwort

 

Themen-Optionen Ansicht
Alt 10.11.2011, 11:34   #1 (permalink)
Android-Hilfe.de Mitglied

Registriert seit: 31.10.2011
Beiträge: 85
Abgegebene Danke: 3
Erhielt 0 Danke für 0 Beiträge
Standard PDF Datei Speicherort

ich möchte in meiner App ein Paar pdf Dateien aufmachen und den Inhalt der Datei anzeigen lassen. Folgenden Code habe ich im Internet gefunden und ausprobiert. Es funktioniert , nur mit der Bedingung, dass die Datei auf der SD Karte des Handys sich befinden soll.
Code:
public class OpenPdf extends Activity {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        Button button = (Button) findViewById(R.id.OpenPdfButton);
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                File file = new File("/sdcard/example.pdf");
                if (file.exists()) {
                    Uri path = Uri.fromFile(file);
                    Intent intent = new Intent(Intent.ACTION_VIEW);
                    intent.setDataAndType(path, "application/pdf");
                    intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                    try {
                        startActivity(intent);
                    } catch (ActivityNotFoundException e) {
                        Toast.makeText(OpenPdf.this,
                                "No Application Available to View PDF",
                                Toast.LENGTH_SHORT).show();
                    }
                }
            }
        });
    }
}
Gibt es eine Möglichkeit die Datei in der App selbst abzuspeichern und die dann zu öffnen ? Z.b die Datei befindet sich in dem src datei des Eclipse projektes und man möchte die Datei von da aus aufzumachen.
MfG.
zblack ist offline   Mit Zitat antworten
Alt 10.11.2011, 11:51   #2 (permalink)
Android Guru

Registriert seit: 09.05.2009
Beiträge: 2.389
Abgegebene Danke: 36
Erhielt 307 Danke für 289 Beiträge
Standard AW: PDF Datei Speicherort

hmm du kannst dateien über den asset bzw raw ordner mit ausliefern.

darauf kannst du dann zugreifen.

zur not müsstest halt die datei dann auf die sd karte kopieren, beim ersten start oder ersten öffnen
__________________
App Entwicklung
Latest apps: Media Streamer BETA | DailyCash | MoneyManager ( PRO | HD )
swordi ist offline   Mit Zitat antworten
Alt 10.11.2011, 12:11   #3 (permalink)
Android-Hilfe.de Mitglied

Registriert seit: 31.10.2011
Beiträge: 85
Abgegebene Danke: 3
Erhielt 0 Danke für 0 Beiträge
Standard AW: PDF Datei Speicherort

muss man in Manifestdatei oder sonst wo was zusätzliches hinzufügen ????
File file = new File("/assets/example.pdf"); tut nix. Wird nix angezeigt bei der Ausführung.
zblack ist offline   Mit Zitat antworten
Alt 10.11.2011, 12:18   #4 (permalink)
Android-Hilfe.de Mitglied

Modell: Motorola Atrix 4G

Registriert seit: 07.12.2010
Beiträge: 170
Abgegebene Danke: 14
Erhielt 32 Danke für 31 Beiträge
Neeldarax eine Nachricht über ICQ schicken
Standard AW: PDF Datei Speicherort

Für Asset gibt es einen Manager.

AssetManager | Android Developers
__________________
g o o g l e+ plus.neeldarax.de
androidblog www.neeldarax.de
Neeldarax ist offline   Mit Zitat antworten
Alt 10.11.2011, 16:25   #5 (permalink)
Android-Hilfe.de Mitglied
 
Benutzerbild von charli

Registriert seit: 02.12.2009
Beiträge: 102
Abgegebene Danke: 7
Erhielt 12 Danke für 11 Beiträge
Daumen hoch AW: PDF Datei Speicherort

Hier mein Code für *.jpg (nur anzupassen an *.pdf) read.

Bitmap LoadImagefromassets() {
AssetManager am = getAssets();
Bitmap mybitmap = null;
BufferedInputStream buf;
try {
InputStream in = am.open("image600x800.jpg");
buf = new BufferedInputStream(in);
mybitmap = BitmapFactory.decodeStream(buf);
if (in != null) {
in.close();
}
if (buf != null) {
buf.close();
}
} catch (Exception e) {
Log.e("Error reading file", e.toString());
}
return mybitmap;
}

charli (bei seniorlabde)
charli ist offline   Mit Zitat antworten
Alt 11.11.2011, 10:08   #6 (permalink)
Android-Hilfe.de Mitglied

Registriert seit: 31.10.2011
Beiträge: 85
Abgegebene Danke: 3
Erhielt 0 Danke für 0 Beiträge
Standard AW: PDF Datei Speicherort

hmm. es kann sein dass ich einfach zu blöd dafür bin. habe mir das hier gebaut.
Code:
public class OpenPdf extends Activity {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        Button button = (Button) findViewById(R.id.OpenPdfButton);
        button.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                LoadImagefromassets();
            }
        });
    }
    Bitmap LoadImagefromassets() {
        AssetManager am = getAssets();
        Bitmap mybitmap = null;
        BufferedInputStream buf;
        try {
            InputStream in = am.open("example.pdf");
            buf = new BufferedInputStream(in);
            mybitmap = BitmapFactory.decodeStream(buf);
            if (in != null) {
                in.close();
            }
            if (buf != null) {
                buf.close();
            }
        } catch (Exception e) {
            Log.e("Error reading file", e.toString());
        }
        return mybitmap;
    }
}
es wird bei der Ausführung nix angezeigt. es kann sein dass ich da was vergessen habe
zblack ist offline   Mit Zitat antworten
Alt 11.11.2011, 10:23   #7 (permalink)
Android Guru

Registriert seit: 09.05.2009
Beiträge: 2.389
Abgegebene Danke: 36
Erhielt 307 Danke für 289 Beiträge
Standard AW: PDF Datei Speicherort

was sollte denn hier angezeigt werden?

du lädst das bitmap ja nur.


code kopieren alleine wird nicht reichen. du musst ihn verstehen und dann an deine bedürfnisse anpassen.
__________________
App Entwicklung
Latest apps: Media Streamer BETA | DailyCash | MoneyManager ( PRO | HD )
swordi ist offline   Mit Zitat antworten
Folgender Benutzer bedankt sich bei swordi für diesen Beitrag:
charli (12.11.2011)
Alt 11.11.2011, 10:24   #8 (permalink)
Android-Hilfe.de Mitglied

Registriert seit: 31.10.2011
Beiträge: 85
Abgegebene Danke: 3
Erhielt 0 Danke für 0 Beiträge
Standard AW: PDF Datei Speicherort

hast recht
zblack ist offline   Mit Zitat antworten
Alt 12.11.2011, 11:10   #9 (permalink)
Android-Hilfe.de Mitglied
 
Benutzerbild von charli

Registriert seit: 02.12.2009
Beiträge: 102
Abgegebene Danke: 7
Erhielt 12 Danke für 11 Beiträge
Daumen hoch AW: PDF Datei Speicherort

Zitat:
Zitat von swordi Beitrag anzeigen
was sollte denn hier angezeigt werden?

du lädst das bitmap ja nur.


code kopieren alleine wird nicht reichen. du musst ihn verstehen und dann an deine bedürfnisse anpassen.
swordi hat mir aus der Seele gesprochen ...
charli (seniorlabde)
charli ist offline   Mit Zitat antworten
Alt 12.11.2011, 19:46   #10 (permalink)
Android-Hilfe.de Mitglied

Registriert seit: 31.10.2011
Beiträge: 85
Abgegebene Danke: 3
Erhielt 0 Danke für 0 Beiträge
Standard AW: PDF Datei Speicherort

hallo. danke für die zahlreiche antworten. Habe das jetzt endlich hingekriegt. Verbesserungsvorschläge nehme ich gerne an
Hier ist meine Lösung :
Code:
public class PDFActivity extends Activity {
    private final String PDF_DATEI = "meinpdf.pdf";
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //setContentView(R.layout.main);
        
        try {
            Uri uri = dateiBereitstellen();
            Intent intent = new Intent(Intent.ACTION_VIEW);
            intent.setDataAndType(uri, "application/pdf");
            intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
            startActivity(intent);

        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
    
    private Uri dateiBereitstellen () throws IOException {
        File sdCard = Environment.getExternalStorageDirectory();
        File datei = new File(sdCard.getAbsolutePath() + File.separator + PDF_DATEI);
        if (!datei.exists()){
            InputStream stream = this.getAssets().open(PDF_DATEI);
            String name = datei.getAbsolutePath();
            FileOutputStream outputStream = new FileOutputStream(name);
            
            byte [] puffer = new byte [50000];
            int anzahl;
            while ((anzahl = stream.read(puffer))> 0){
                outputStream.write(puffer, 0, anzahl);
            }
            outputStream.flush();
            stream.close();
            outputStream.close();
        }
        Uri uri = Uri.parse("file://" + datei.getAbsolutePath());
        return uri;
    }
}

Geändert von zblack (12.11.2011 um 19:49 Uhr)
zblack ist offline   Mit Zitat antworten
Antwort

Stichworte
-

Themen-Optionen
Ansicht


Ähnliche Themen

Thema Autor Forum Antworten Letzter Beitrag
pdf datei aufmachen laredo Business und Organisation 2 15.10.2011 06:11
Datei-Speicherort auf Handy und Emulator TanaH Android App Entwicklung 2 06.04.2011 09:32
Geschütze pdf datei öffnen??? scambolo Archos 70 Forum 1 28.03.2011 10:27
PDF Datei mit Email verschicken knipser69 Samsung Galaxy S (I9000) Forum 11 01.11.2010 17:33
PDF Datei Per Mail verschicken knipser69 Samsung Galaxy S (I9000) Forum 1 28.10.2010 22:02




Du liest gerade: "PDF Datei Speicherort" unter "Android App Entwicklung" auf Android-Hilfe.de.


Powered by vBulletin®
Copyright ©2000 - 2012, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
© Android-Hilfe.de 2012 - All rights reserved.