我的应用程序无法在Huawei P8 Lite上启动,但在其他设备上也可以正常工作。
我搜索了很长时间的问题,但是找不到有效的解决方案。
我的应用程序一直运行没有问题。然后我解决了一些问题,并在华为P8 Lite上启动失败。我不明白
LogCat:
? W/System.err: java.lang.NullPointerException: Attempt to invoke virtual method 'int com.huawei.lcagent.client.LogCollectManager.getUserType()' on a null object reference
? W/System.err: at com.android.server.util.ReportTools.getUserType(ReportTools.java:86)
? W/System.err: at com.android.server.util.ReportTools.isBetaUser(ReportTools.java:73)
? W/System.err: at com.android.server.util.ReportTools.report(ReportTools.java:58)
? W/System.err: at com.android.server.util.HwUserBehaviourRecord.appExitRecord(HwUserBehaviourRecord.java:65)
? W/System.err: at com.android.server.am.ActivityManagerService$UiHandler.handleMessage(ActivityManagerService.java:1572)
? W/System.err: at android.os.Handler.dispatchMessage(Handler.java:102)
? W/System.err: at android.os.Looper.loop(Looper.java:150)
? W/System.err: at android.os.HandlerThread.run(HandlerThread.java:61)
? W/System.err: at com.android.server.ServiceThread.run(ServiceThread.java:46)
E/ReportTools: This is not beta user build
? I/Process: Sending signal. PID: 10115 SIG: 9
? I/PgedBinderListener: kstate callback type:8 value1=10115 value2=KILLED
这是我的 list (没有任何 Activity ):
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="prestigetower.nextgendevelopers.prestigetower">
<uses-permission android:name="com.android.vending.BILLING"/>
<uses-ermission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<application
android:allowBackup="false"
android:icon="@mipmap/enemy_175"
android:label="@string/app_name"
android:supportsRtl="true"
android:hardwareAccelerated="false"
android:largeHeap="true"
android:debuggable="false"
android:name="android.support.multidex.MultiDexApplication">
<meta-data android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />
<supports-screens
android:smallScreens="true"
android:normalScreens="true"
android:largeScreens="true"
android:xlargeScreens="true" />
<service
android:enabled="true"
android:name="BackgroundSoundService" />
<activity
android:name=".MainActivity"
android:label="@string/app_name"
android:theme="@style/Theme.Transparent"
android:screenOrientation="portrait"
>
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
<activity android:name="com.google.android.gms.ads.AdActivity"
android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"
android:theme="@android:style/Theme.Translucent" />
<!-- END -->
</application>
</manifest>
这是我的构建 Gradle :
apply plugin: 'com.android.application'
android {
compileSdkVersion 25
buildToolsVersion "25.0.0"
defaultConfig {
applicationId "prestigetower.nextgendevelopers.prestigetower"
minSdkVersion 18
targetSdkVersion 25
versionName 'Version 0.9.3.3'
versionCode 933
multiDexEnabled true
}
buildTypes {
debug {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
productFlavors {
}
dexOptions {
javaMaxHeapSize "4g"
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.android.support:appcompat-v7:25.0.0'
compile 'com.android.support:support-v4:25.0.0'
compile 'com.android.support:support-v13:25.0.0'
compile 'com.android.support:design:25.0.0'
compile 'com.android.support:recyclerview-v7:25.0.0'
compile 'com.android.support:support-annotations:25.0.0'
compile 'com.android.support:percent:25.0.0'
compile 'com.android.support:cardview-v7:25.0.0'
compile 'com.anjlab.android.iab.v3:library:1.0.+'
compile 'com.google.android.gms:play-services:10.2.4'
compile 'com.google.android.gms:play-services-ads:10.2.4'
testCompile 'junit:junit:4.12'
}
最佳答案
经过研究后,我发现在华为P8 Lite上升级到Android M时,华为并没有向您显示LOG中的所有内容(我在带有Android P的Mate 20 Pro上对其进行了测试,并且看到了所有内容)。
所以实际的问题总是隐藏在这些奇怪的华为日志中
要显示logcat中的所有内容,您必须在Dialer特殊代码中键入以下内容:*#*#2846579#*#*
然后,您应该看到以下设置屏幕:
转到后台设置
单击“日志设置”,然后根据需要调整日志