8.12.2014 / 13:12 | |
UserSuperPupsik Пользователь Сейчас: Offline
Имя: UserSuperPupsik Регистрация: 27.09.2013
| Спасибо , Ребят!!! Изменено UserSuperPupsik (8.12 / 13:13) (всего 1 раз) |
19.12.2014 / 20:32 | |
k13558 Пользователь Сейчас: Offline
Имя: k135 Регистрация: 18.12.2014
| Добрый вечер! Я новичок в android программировании! скачал все что необходимо для программирования. Создал приложение hello world в eclipse и приложение успешно запустилось. Пытаюсь создать другое приложение вставить любой готовый код в MainActivity, но всплывают только ошибки.
|
19.12.2014 / 20:50 | |
Naik Пользователь Сейчас: Offline
Имя: %name% Регистрация: 14.03.2010
| k13558, потому что нужно понимать что вставляешь. Может быть что угодно - активити забыл в манифесте задекларировать, разрешения добавить, код с ошибками.
|
19.12.2014 / 22:16 | |
k13558 Пользователь Сейчас: Offline
Имя: k135 Регистрация: 18.12.2014
| Naik, я добавляю код только в MainActivity (этот код http://annimon.com/code/?act=view&id=3421)Что еще нужно сделать? |
19.12.2014 / 22:27 | |
aNNiMON Супервизор Сейчас: Offline
Имя: Витёк Регистрация: 11.01.2010
| k13558, есть ещё система разрешений. Для этого кода тебе как минимум понадобятся разрешения на Интернет и на чтение/запись в хранилище. Всё это устанавливается в AndroidManifest.xml. <uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
Если и это не поможет, тогда напиши, какая ошибка возникает. Посмотреть можно в Logcat (в Eclipse он точно где-то есть). __________________
let live Изменено aNNiMON (19.12 / 22:31) (всего 3 раза) |
19.12.2014 / 23:18 | |
k13558 Пользователь Сейчас: Offline
Имя: k135 Регистрация: 18.12.2014
| aNNiMON, ошибка в самом ActivityMain.java Syntax error on tokens, delete these tokens ошибка в private final String webarchive = "application/x-webarchive-xml"; @TargetApi(Build.VERSION_CODES.HONEYCOMB) кроме этойошибки есть еще ошибки (не только в этом коде. Ошибки в любом коде) source source package ru.example.test.name;
import android.R;
import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
private final String webarchive = "application/x-webarchive-xml";
@TargetApi(Build.VERSION_CODES.HONEYCOMB)
private boolean savePage(WebView view, String folder, String name) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
String path = (folder.endsWith("/") ? folder : folder.concat("/"))
.concat(name);
try {
File file = new File(folder);
if (!file.exists()) return false; //IO error
} catch (Exception ex) {
ex.printStackTrace();
return false; //IO error
}
try {
File file = new File(path);
if (!file.exists()) {
file.createNewFile();
if (!file.exists())
return false; //invalid filename
}
file.delete();
file = null;
} catch (Exception ex) {
ex.printStackTrace();
return false;
}
view.saveWebArchive(path);
return true; //OK
} else
return false; //sdk not supported, need SDK >= API11
}
//NOTE: need Internet connection for correct loading saved page
private boolean readWebPage(WebView view, String fileName) {
try {
File file = new File(fileName);
FileInputStream is = new FileInputStream(file);
byte[] buffer = new byte[(int) file.length()];
is.read(buffer);
is.close();
String data = new String(buffer, "UTF-8");
buffer = null;
int start = data.indexOf("<url>") + "<url>".length();
int end = data.indexOf("</url>", start);
String url = new String(Base64.decode(data.substring(start, end),
Base64.DEFAULT), "UTF-8");
addressEdit.setText(url);
view.loadDataWithBaseURL(null /*base url, if use RFC scheme http, ftp etc, this method equals loadData()*/,
data, webarchive, "UTF-8", url/*history url for reloading page if use forward navigation*/);
data = null;
return true;
} catch (Exception ex) {
ex.printStackTrace();
}
return false;
}
Изменено Ксакеп (19.12 / 23:50) (всего 2 раза)
Прикрепленные файлы: 2014-12-20_0305(…).png (42.37 кб.) Скачано 63 раза |
19.12.2014 / 23:34 | |
aNNiMON Супервизор Сейчас: Offline
Имя: Витёк Регистрация: 11.01.2010
| k13558, а ты хоть немного с матчастью ознакомился прежде чем копировать код? Лучше чуток подучи, а то ты вставил код мимо класса. Должно быть так: import ...
public class MainActivity extends Activity {
// тут твой скопированный код
// тут onCreate и прочие вызовы
}
__________________
let live |
19.12.2014 / 23:54 | |
k13558 Пользователь Сейчас: Offline
Имя: k135 Регистрация: 18.12.2014
| aNNiMON, все сделал так как ты сказал! но ошибки не исчезли Создал новый проект и вставил код ActivityMain.java Я умею использовать спойлеры Я умею использовать спойлеры package ru.com.test;
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
public class MainActivity extends Activity {
private final String webarchive = "application/x-webarchive-xml";
@TargetApi(Build.VERSION_CODES.HONEYCOMB)
private boolean savePage(WebView view, String folder, String name) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
String path = (folder.endsWith("/") ? folder : folder.concat("/"))
.concat(name);
try {
File file = new File(folder);
if (!file.exists()) return false; //IO error
} catch (Exception ex) {
ex.printStackTrace();
return false; //IO error
}
try {
File file = new File(path);
if (!file.exists()) {
file.createNewFile();
if (!file.exists())
return false; //invalid filename
}
file.delete();
file = null;
} catch (Exception ex) {
ex.printStackTrace();
return false;
}
view.saveWebArchive(path);
return true; //OK
} else
return false; //sdk not supported, need SDK >= API11
}
//NOTE: need Internet connection for correct loading saved page
private boolean readWebPage(WebView view, String fileName) {
try {
File file = new File(fileName);
FileInputStream is = new FileInputStream(file);
byte[] buffer = new byte[(int) file.length()];
is.read(buffer);
is.close();
String data = new String(buffer, "UTF-8");
buffer = null;
int start = data.indexOf("<url>") + "<url>".length();
int end = data.indexOf("</url>", start);
String url = new String(Base64.decode(data.substring(start, end),
Base64.DEFAULT), "UTF-8");
addressEdit.setText(url);
view.loadDataWithBaseURL(null /*base url, if use RFC scheme http, ftp etc, this method equals loadData()*/,
data, webarchive, "UTF-8", url/*history url for reloading page if use forward navigation*/);
data = null;
return true;
} catch (Exception ex) {
ex.printStackTrace();
}
return false;
}
}
Манифест Манифест <?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="ru.com.test"
android:versionCode="1"
android:versionName="1.0" >
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-sdk
android:minSdkVersion="15"
android:targetSdkVersion="15" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
LogCat 12-20 00:45:54.555: I/AndroidRuntime(30587): NOTE: attach of thread 'Binder Thread #1' failed Изменено Ксакеп (20.12 / 11:44) (всего 4 раза) |
20.12.2014 / 00:04 | |
aNNiMON Супервизор Сейчас: Offline
Имя: Витёк Регистрация: 11.01.2010
| k13558, выкладывай лучше в файле. Импорты ты не добавил (тебе Eclipse должен при наведении на строку предложить импортировать нужный класс). Нет методов onCreate, нет создания WebView. Нет вызова этих двух методов. Но и вызывать их надо не сразу, а по событию. А это надо как минимум кнопку добавлять в разметку, вешать обработчик кнопки... Наберись терпения и изучи основы вот здесь http://startandroid.ru/ru/ тогда сам поймёшь как что делать __________________
let live |
20.12.2014 / 00:11 | |
k13558 Пользователь Сейчас: Offline
Имя: k135 Регистрация: 18.12.2014
| aNNiMON, импорты добавил! осталась одна ошибка The method setText(String) is undefined for the type ObjectThe method setText(String) is undefined for the type Object в коде addressEdit.setText(url);
|