Bei einer Fehlermeldung wie dieser:
Failed to install xxx.apk on device 'emulator-5554! (null) Launch canceled!
Kann man durch Neuanlegen eines neuen Virtual Devices (AVD) den Fehler beheben, alles andere hat bei mir nicht funktioniert.
Bei einer Fehlermeldung wie dieser:
Failed to install xxx.apk on device 'emulator-5554! (null) Launch canceled!
Kann man durch Neuanlegen eines neuen Virtual Devices (AVD) den Fehler beheben, alles andere hat bei mir nicht funktioniert.
Normalerweise kann das Samsung Galaxy S4 (oder Samsung Galaxy S3 und S2) einfach durch Plug-and-Play unter Windows 7 installiert werden. Leider hat das bei mir nicht funktioniert. Wenn man das Galaxy S4 mit dem Computer verbinden will um mp3s oder Kontakte auf das Handy zu spielen, muss man das Programm Samsung Kies installieren.
Einbinden der benötigten Bibliothek von Apache mit Eclipse: Anleitung.
Code:
import java.io.BufferedInputStream; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import org.apache.commons.net.ftp.FTPClient; import android.util.Log; import de.egraveyard.android.view.ItemUploader; public class FtpUpload { private static final String TAG = ItemUploader.class.getSimpleName(); String serverAdress = "ftp.lala.de"; String userName = "ftpUser"; String password = "lala"; String serverDirectory = "/android"; //String localFilePath = "/data/anr/traces.txt"; //String remoteFileName = "traces2.txt"; public boolean uploadImage(String localFilePath, String remoteFileName) { boolean result = false; FTPClient ftpClient = new FTPClient(); try { ftpClient.connect(this.serverAdress); ftpClient.login(this.userName, this.password); ftpClient.changeWorkingDirectory(this.serverDirectory); ftpClient .setFileType(org.apache.commons.net.ftp.FTP.BINARY_FILE_TYPE); } catch (IOException e) { Log.d(TAG, "IOException ftp Client could not be established.controll Login, Server, Pw."); } Log.d(TAG, "FTP Server Response: " + ftpClient.getReplyString()); BufferedInputStream buffIn = null; try { buffIn = new BufferedInputStream(new FileInputStream(localFilePath)); } catch (FileNotFoundException e) { Log.d(TAG, "FileNotFoundException: local File to be uploaded not Found: " + localFilePath); } ftpClient.enterLocalPassiveMode(); try { result = ftpClient.storeFile(remoteFileName, buffIn); } catch (IOException e) { Log.d(TAG, "IOException: remote File could not be accessed"); } try { buffIn.close(); } catch (IOException e) { Log.d(TAG, "IOException: buffIn.close()"); } try { ftpClient.logout(); ftpClient.disconnect(); } catch (IOException e) { Log.d(TAG, "IOException: ftpClient close/logout"); } return result; } }
Lint ist ein praktisches Tool um einen groben Überblick über die Qualität eines Android Projektes zu bekommen und unnötigen Code zu filtern.
Lint kann über die Console oder über Eclipse gestartet werden. Ab Version ADT 16 (aktuell die neuste Version) ist Lint enthalten. Ein Update auf die neuste Version kann duchgeführt werden in Eclipse über: Help/Check for Updates.
Gestartet werden aknn Lint einfach über: Android Tools/Run Lint: Check for Common Errors
Lint kann folgende Fehler recht zuverlässig finden:
Lint kann so konfiguriert werden, dass bestimmte Fehler, wie z.B. fehlende Übersetzungen als Fehler(Error) gewertet werden. Die Konsequenz ist, dass der Compiler die App nicht kompiliert. Dies kann umgegangen werden oder noch verschärft werden über die Lint Einstellungen unter: Window/Preferences/Android/Lint Error Checking. Dort kann die Severity (deutsch: Strenge, Schwere) einer Fehlermeldung eingestellt werden.
Bspw. ist eine „Missing Translation“ am Anfang des Entwicklungsprozesses kein notwendiger Error, kann also auf Warning gesetzt werden.
Um sich beim Testen die Datenbank seiner Android Test-App anzuschauen auf dem Test-Handy benötigt man Root-Rechte, ansonsten ist der Ordner data/data auf dem Handy nicht ansehbar. Dazu kann man das Programm SuperOneClick downloaden. Hier ist ein gutes Tutorial zum Rooten des Devices.
Danach kann man mit Eclipse mit dem Plug-in CellObject DevTools mit einer optischen Oberfläche wie in dem Video beschrieben über DDMS auf die Datenbank des Test-Device zugreifen. Für 9$ über Paypal und eine Registrierung kann man sich das Tool CellObject DevTools downloaden.
Mit CellObject DevTools kann man sowohl die SQLite Datenbank auf dem Device als auch die Datenbank im Simulator optisch darstellen lassen in Eclipse.
Nach dem Download einfach in den eclipse/plugin Ordner entpacken und Eclipse neustarten.
If you are using the Cloudfront library for Amazon Advertising API and you get the following error message, contact me I can help you with this issue. I got this error when I tried to retrieve amazon.fr (france) data.
exception 'Exception' with message 'String could not be parsed as XML' in cloudfusion\sdk.class.php:1209 Stack trace: #0 \sdk.class.php(1209): SimpleXMLElement->__construct('parse_callback('pas_authenticate('ItemLookup', Array) #3 amazonProductAdvertisingApi.php(233): AmazonPAS->item_lookup('B000091xxx', Array) #4 amazonProductAdvertisingApi.php(90): amazonProductAdvertisingApi->getAsinData() #5 amazonProductAdvertisingApi.php(65): amazonProductAdvertisingApi->getResult('FR') #6 \index.php(248): amazonProductAdvertisingApi->getResults() #7 {main}EOL#0 cloudfusion\sdk.class.php(1209): SimpleXMLElement->__construct('parse_callback('pas_authenticate('ItemLookup', Array) #3 amazonProductAdvertisingApi.php(233): AmazonPAS->item_lookup('B000091xxx', Array) #4 amazonProductAdvertisingApi.php(90): amazonProductAdvertisingApi->getAsinData() #5 amazonProductAdvertisingApi.php(65): amazonProductAdvertisingApi->getResult('FR') #6 eansuche\index.php(248): amazonProductAdvertisingApi->getResults() #7 {main}