При запуске MainActivity приложения он мгновенно сбой. Когда я просмотрел журналы adb, я смог найти только это,
Exception thrown when launching activities in ProcessRecord
java.lang.IllegalArgumentException: val.length > 91
at SystemProperties.set
Когда я посмотрел исходный код android, я обнаружил, что это может быть корень проблемы Исходный код Android SystemProperties.java, Он содержит максимальное значение предела 91.
public static final int PROP_VALUE_MAX = 91;
public static String get(String key) {
if (key.length() > PROP_NAME_MAX) {
throw new IllegalArgumentException("key.length > " + PROP_NAME_MAX);
}
return native_get(key);
}
Когда я догадываюсь, я обнаружил, что мое имя приложения имеет длину 108 символов. И когда я изменил имя приложения на 60 символов, он работал без проблем.
В чем может быть проблема? Это происходит только в модели Asus Zenfone 2 (Lolipop 5.0).
В других устройствах нет проблем. Из-за этой проблемы мы получаем много отрицательного рейтинга.
У нашего приложения уже есть 15K загрузок в игровом магазине. , поэтому изменение имя пакета приложения не является для меня вариантом. Пожалуйста, помогите
Обновление
Чтобы быть более точным, существует
нет проблем во всех телефонах Android, которые мы тестировали, кроме серии Asus Zenfone
Как упоминалось в комментариях @ViswanathLekshmanan, я изменил местоположение файла MainAcitivity.java на более низкий путь.
то есть исходное полное имя пакета: - "com.fourbigbrothers.malayalam_troll_greetings_maker_edit_movie_images_font_seasonal_photo_comments.activities.MainActivity"
Я изменил его на: - "com.fourbigbrothers.mtm.activities.MainActivity"
Все еще не работает. Я поместил несколько журналов в onCreate of MainActivity, но выполнение кода там вообще не доходит. Поэтому я не знаю, где поставить блок try/catch, как указано в некоторых ответах.
Будет ли какое-либо решение, использующее android ndk? И извините, если это тупой вопрос, я полностью потерял.
Это важная часть манифеста
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.fourbigbrothers.malayalam_troll_greetings_maker_edit_movie_images_font_seasonal_photo_comments" >
<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" />
<application
android:name="com.fourbigbrothers.boilerplate.base.FbbApplication"
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/Theme.FbbApp" >
<activity
android:name="com.fourbigbrothers.malayalam_troll_greetings_maker_edit_movie_images_font_seasonal_photo_comments.activities.MainActivity"
android:label="@string/launcherActivityName"
android:screenOrientation="portrait"
android:launchMode="singleTop"
android:theme="@style/MainActivityTheme" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="image/*" />
</intent-filter>
</activity>
</application>