launch crash 03-11 12:11:42.966 7890 7890 E AndroidRuntime: FATAL EXCEPTION: main 03-11 12:11:42.966 7890 7890 E AndroidRuntime: Process: com.microfield.startUp, PID: 7890 03-11 12:11:42.966 7890 7890 E AndroidRuntime: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.microfield.startUp/com.microfield.startUp.SplashMain}: java.lang.ArrayIndexOutOfBoundsException: length=0; index=0 03-11 12:11:42.966 7890 7890 E AndroidRuntime: at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2747) 03-11 12:11:42.966 7890 7890 E AndroidRuntime: at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2808) 03-11 12:11:42.966 7890 7890 E AndroidRuntime: at android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:4626) 03-11 12:11:42.966 7890 7890 E AndroidRuntime: at android.app.ActivityThread.-wrap19(ActivityThread.java) 03-11 12:11:42.966 7890 7890 E AndroidRuntime: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1549) 03-11 12:11:42.966 7890 7890 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:102) 03-11 12:11:42.966 7890 7890 E AndroidRuntime: at android.os.Looper.loop(Looper.java:165) 03-11 12:11:42.966 7890 7890 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:6375) 03-11 12:11:42.966 7890 7890 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method) 03-11 12:11:42.966 7890 7890 E AndroidRuntime: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:912) 03-11 12:11:42.966 7890 7890 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:802) 03-11 12:11:42.966 7890 7890 E AndroidRuntime: Caused by: java.lang.ArrayIndexOutOfBoundsException: length=0; index=0
SplashMain.class
public class SplashMain extends AppCompatActivity {
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.welcome);
dateBase.DataBase helper = new dateBase.DataBase(this, "app_record", 1);
helper.action_sql("create table if not exists app_record(id integer primary key autoincrement,packageName text,activity text)");
if (helper.query_Num("app_record") == 0) {
String str = "air.tv.douyu.android,com.duowan.kiwi,com.taobao.etao";
String str2 = "air.tv.douyu.android,com.duowan.kiwi.adsplash.view.AdSplashActivity,com.taobao.sns.app.advertise.AdvertiseActivity";
String[] list1 = str.split(","), list2 = str2.split(",");
for (int i = 0; i < list1.length; i++) {
ContentValues cv = new ContentValues();
cv.put("packageName", list1[i]);
cv.put("activity", list2[i]);
helper.insert("app_record", cv);
}
}
helper.close();
checkPermission();
}
//檢測權限
private void checkPermission() {
// 檢查權限是否獲取(android6.0及以上系統可能默認關閉權限,且沒提示)
if (!api.query_qx(this)) {
ActivityCompat.requestPermissions(this, new String[]{
Manifest.permission.READ_EXTERNAL_STORAGE, Manifest.permission.WRITE_EXTERNAL_STORAGE,
Manifest.permission.RECORD_AUDIO, Manifest.permission.READ_PHONE_STATE
}, 1);
} else {
dos();
}
}
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions,
@NonNull int[] grantResults) {
if (requestCode == 1) {
if (grantResults[0] == PackageManager.PERMISSION_GRANTED) {
dos();
} else {
final MyDialog myDialog = new MyDialog(this);
myDialog.show();
myDialog.setIcon(getDrawable(R.drawable.ic_flash_on_black_24dp));
myDialog.setTitle("溫馨提示");
myDialog.setMessage("權限給予不足可能導致軟體使用程序中出現問題,是否進入軟體?");
myDialog.setButton1("知道了", new View.OnClickListener() {
@Override
public void onClick(View v) {
myDialog.cancel();
dos();
}
});
}
}
}
private void dos() {
if(api.query_setting(this,"is_hide")==0){
startActivity(new Intent().setClass(this,MainActivity.class).addFlags(Intent.FLAG_ACTIVITY_NEW_DOCUMENT));
finish();
}else{
startActivity(new Intent().setClass(this,MainActivity.class));
finish();
}
}
}誰知道這個是什么問題
uj5u.com熱心網友回復:
陣列越界了,陣列是空的,你還要訪問第一個元素,肯定不行啊,好好檢查代碼uj5u.com熱心網友回復:
我把onCreate只剩下checkPermission也不行
uj5u.com熱心網友回復:
我把onCreate只剩下checkPermission也不行
uj5u.com熱心網友回復:
而且我試了好多手機都沒問題,就Redmi Note 4X,安卓版本:7.0不行,提交小米應用市場的時候審核的
uj5u.com熱心網友回復:
那你再把checkPermission注釋掉試試唄,如果正常說明你的api.query...有問題。再繼續深入測驗uj5u.com熱心網友回復:
嗯嗯,我現在再提交審核試試
uj5u.com熱心網友回復:
已解決,謝了,雖然不知道為什么只在少部分手機會
uj5u.com熱心網友回復:
已解決,謝了,雖然不知道為什么只在少部分手機會
uj5u.com熱心網友回復:
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/56163.html
標籤:Android
