Существует существующий вопрос похож на этот один здесь: Motion Recognition Manager and motion-Service in androidE/MotionRecognitionManager: mSContextService вызывая приложение к аварии на мой телефон андроид
Я прошу мое, потому что есть комментарий с просьбой кода, где происходит ошибка и код не был предоставлен. Это мой первый вопрос, поэтому я надеюсь, что я не буду делать что-то неправильно или грубо.
Я работаю над приложением, которое анализирует RSS-каналы и имеет настройки, которые пользователь может изменить, например, цвет фона, цвет текста, имя пользователя. Эти настройки сохраняются в общих настройках.
Приложение прекрасно работает в эмуляторе. В предыдущих итерациях, прежде чем я добавил общие функции предпочтений, я смог запустить приложение на своем личном телефоне Samsung Galaxy s6. Теперь он не будет работать на моем телефоне.
Я показываю каналы в ListView
. Настройки изменены с ListPreferences
.
Мой LogCat выглядит следующим образом:
10/30 10:33:34: Launching app
$ adb push C:\Users\Jennifer\AndroidStudioProjects\RSSAssignment7\app\build\outputs\apk\app-debug.apk /data/local/tmp/com.example.jennifer.rssassignment7
$ adb shell pm install -r "/data/local/tmp/com.example.jennifer.rssassignment7"
pkg: /data/local/tmp/com.example.jennifer.rssassignment7
Success
$ adb shell am start -n "com.example.jennifer.rssassignment7/com.example.jennifer.rssassignment7.MainActivity" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER
Client not ready yet..Waiting for process to come online
Connected to process 14137 on device samsung-sm_g920w8-1215fc28c4943e05
W/System: ClassLoader referenced unknown path: /data/app/com.example.jennifer.rssassignment7-1/lib/arm64
D/InjectionManager: InjectionManager
D/InjectionManager: fillFeatureStoreMap com.example.jennifer.rssassignment7
I/InjectionManager: Constructor com.example.jennifer.rssassignment7, Feature store :{}
I/InjectionManager: featureStore :{}
W/ResourcesManager: getTopLevelResources: /data/app/com.example.jennifer.rssassignment7-1/base.apk/1.0 running in com.example.jennifer.rssassignment7 rsrc of package com.example.jennifer.rssassignment7
W/ResourcesManager: getTopLevelResources: /data/app/com.example.jennifer.rssassignment7-1/base.apk/1.0 running in com.example.jennifer.rssassignment7 rsrc of package com.example.jennifer.rssassignment7
W/art: Before Android 4.1, method android.graphics.PorterDuffColorFilter android.support.graphics.drawable.VectorDrawableCompat.updateTintFilter(android.graphics.PorterDuffColorFilter, android.content.res.ColorStateList, android.graphics.PorterDuff$Mode) would have incorrectly overridden the package-private method in android.graphics.drawable.Drawable
D/AbsListView: Get MotionRecognitionManager
E/MotionRecognitionManager: mSContextService = [email protected]
E/MotionRecognitionManager: motionService = [email protected]53d367
E/MotionRecognitionManager: motionService = [email protected]53d367
Application terminated.
И пример кода, один из ListPreferences
:
В preferences.xml:
<ListPreference
android:title="Choose Your Text Color"
android:summary="We'll save your choice for next time."
android:key="color"
android:defaultValue="#000000"
android:entries="@array/colorArray"
android:entryValues="@array/colorValues" />
В array.xml:
<!--color array-->
<string-array name="colorArray">
<item>Black - black text is not visible on a black background</item>
<item>Burgundy</item>
<item>Green</item>
<item>Blue</item>
<item>White - white text is not visible on a white background</item>
</string-array>
<string-array name="colorValues">
<item>#000000</item>
<item>#800020</item>
<item>#3C8D0D</item>
<item>#7068FF</item>
<item>#ffffff</item>
</string-array>
В деятельности:
public class MainActivity extends AppCompatActivity { ...
TextView titleView, descriptionView;
titleView = (TextView) findViewById(R.id.titleView);
descriptionView = (TextView) findViewById(R.id.descriptionView);
//get text color and background color from shared preferences
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
color = prefs.getString("color", "1");
if(!(color == null)) {
titleView.setTextColor(Color.parseColor(color));
descriptionView.setTextColor(Color.parseColor(color));
} else {
titleView.setTextColor(BLACK);
descriptionView.setTextColor(BLACK);
}
И в XML для TextViews:
<TextView
android:layout_width="wrap_content"
android:id= "@+id/titleView"
android:layout_height="wrap_content"
style="@style/CodeFont"
android:textColor="#000000"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id= "@+id/descriptionView"
style="@style/CodeFont"
android:layout_below="@+id/linkView"/>
я положил в еще намереваясь его в качестве настройки по умолчанию в первый раз приложение запускается, ни с чем сохраняется в общие предпочтения. Я не уверен, что это необходимо, но я добавил его, когда приложение рушилось на моем телефоне, думая, что причина, по которой он врезался, состояла в том, что не было сохраненных настроек.
Приложение устанавливает на моем телефоне и сразу же падает. Я попытался посмотреть его настройки, но изменить его нельзя. Я попытался удалить и переустановить приложение. Опять же, он не будет работать на моем телефоне, но он отлично работает на эмуляторе.
Может ли кто-нибудь предложить предложение помочь моему приложению работать на моем телефоне? Огромное спасибо.
Вы смогли это исправить? – Zartha