美文网首页
Bugly迁入

Bugly迁入

作者: 小赵不在 | 来源:发表于2020-12-28 14:37 被阅读0次
简单配置

1.在app的build下的配置
ndk

ndk {
            //设置支持的SO库架构
            abiFilters 'armeabi' //, 'x86', 'armeabi-v7a', 'x86_64', 'arm64-v8a'
        }

依赖

// compile "com.android.support:multidex:2.0.1" // 多dex配置
    //注释掉原有bugly的仓库
    //compile 'com.tencent.bugly:crashreport:latest.release'//其中latest.release指代最新版本号,也可以指定明确的版本号,例如1.3.4
    compile 'com.tencent.bugly:crashreport_upgrade:latest.release'
    // 指定tinker依赖版本(注:应用升级1.3.5版本起,不再内置tinker)
    compile 'com.tencent.tinker:tinker-android-lib:1.9.9'
    compile 'com.tencent.bugly:nativecrashreport:latest.release' //其中latest.release指代最新版本号,也可以指定明确的版本号,例如2.2.0

2.在项目的build下的配置

 dependencies {
        classpath "com.android.tools.build:gradle:4.0.1"
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
        // tinkersupport插件, 其中lastest.release指拉取最新版本,也可以指定明确版本号,例如1.0.4
        classpath "com.tencent.bugly:tinker-support:1.2.0"
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }

3.在清单文件下的配置

    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <uses-permission android:name="android.permission.READ_LOGS"
        tools:ignore="ProtectedPermissions" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" />
 <application
        android:name=".BuglyApplication"//记得注册Application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity
            android:name=".MainActivity"
            android:configChanges="keyboardHidden|orientation|screenSize|locale"//activity的配置
            android:theme="@android:style/Theme.Translucent">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
代码

Application
继承Application

class BuglyApplication : Application() {

    /**
     * 参数1:上下文对象
     * 参数2:注册时申请的APPID
     * 参数3:是否开启debug模式,true表示打开debug模式(开发调试时为true),false表示关闭调试模式(正式发布是为false)
     */
    override fun onCreate() {
        super.onCreate()
        CrashReport.initCrashReport(applicationContext, "APPID", true)
    }
}

Activity
不用做任何操作,而且想要测试你写的Bugly好不好使,要先自己写一个bug,然而我Activity啥也没操作,项目就直接崩了

import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
    }
}

报错内容是这

Caused by: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.

看网上说的是本来是继承AppCompatActivity() 把他换成继承Activity就行

import android.app.Activity;
import android.os.Bundle;
 
   class MainActivity : Activity () {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
    }
}

原因如下:
AppcompaActivity相对于Activity的主要的两点变化;
1:主界面带有toolbar的标题栏;
2,theme主题只能用android:theme=”@style/AppTheme (appTheme主题或者其子类),而不能用android:style。 否则会提示错误: Caused by: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.

相关文章

网友评论

      本文标题:Bugly迁入

      本文链接:https://www.haomeiwen.com/subject/ccaznktx.html