onCreate()
метод является частью жизненного цикла Activity
, вы просто переопределяете его (примечание @Override
), а не пишете собственные, поэтому вы не можете изменять атрибуты, возвращая тип или добавлять / удалять throws
объявления
удалить throws Exception
из protected void onCreate(Bundle savedInstanceState) throws Exception {
- это вызывает ваше исключение
и использовать try{}catch{}
, например
try {
reader = new BufferedReader(new InputStreamReader(url.openStream(), "UTF-8"));
for (String line; (line = reader.readLine()) != null; ) {
builder.append(line.trim());
}
} catch(Exception e){
e.printStackTrace();
//TODO handle exception by own, don't throw outside onCreate, it will break lifecycle
} finally {
...
@ Neeraj, это не так, на самом деле это это единственное, что вы можете изменить - доступность класса (public
, protected
et c.) - но только для «более доступной» версии, поэтому protected
до public
, но не, например, public
до private
. Кстати. на самом деле super
версия этого метода protected
, @MamoRatzo не изменил его, это нормально