我在Eclipse中创建了一个应用程序,它在许多手机上运行良好,但在少数手机上它会在加载时崩溃
我的红色日志猫在下面:
07-04 13:39:55.865: E/WindowManager(1048): Starting window AppWindowToken{42bcf4f0 token=Token{42bc5a70 ActivityRecord{4276f370 u0 com.iran.sunni.times.azan.alarms/com.iran.sunni.times.azan.alarm.PrayerTimeActivity t40}}} timed out
07-04 13:39:56.025: E/Parcel(528): Reading a NULL string not supported here.
07-04 13:39:56.025: E/Parcel(528): Reading a NULL string not supported here.
07-04 13:40:10.425: E/Sensors(1048): Recevied Proximity Sensor pollEvents
07-04 13:40:10.425: E/Sensors(1048): Recevied Proximity Sensor pollEvents
07-04 13:40:10.425: E/Sensors(1048): Recevied Proximity Sensor pollEvents
07-04 13:40:10.435: E/Sensors(1048): Recevied Proximity Sensor pollEvents
答案 0 :(得分:2)
你在onCreate函数的主线程上花了太长时间。您的应用需要在几秒钟内启动,否则Android会假设它已损坏。没有代码,我不知道花了这么长时间,你将不得不研究它。
答案 1 :(得分:1)
正如Gabe所说,你在OnCreate做了太多工作。将所有这些函数读取文件等移动到后台线程并向用户显示进度对话框(第314-322行之间的代码)您的应用程序需要很长时间才能启动并且android会将其杀死。我会在启动电脑时立即编辑答案。
答案 2 :(得分:0)
显然你的ajustTime()方法存在问题。
public void ajustTime() {
{
String dtFajarSetting = Settings.storeData.getTextData("At0");
if (!dtFajarSetting.equals("")) {
String[] dnValue = dtFajarSetting.split(",");
int index = Integer.parseInt(dnValue[0]);
int totalMin = Integer.parseInt(dnValue[1]);
paryerData.add(index, addMin(totalMin, paryerData.get(index)));
paryerData.remove(index + 1);
}
}
像这样
在Logcat中查找你的索引和totlaMinLog.d("Check","Index = "+ index +"totalMin=" +totalMin);
在ajustTime()方法中,如果它们是否为空。