android drawerlayout material-design android-design-library navigationview
在build.gradle里面我们可以添加params
android {
    dexOptions {
        incremental 
        preDexLibraries
        jumboMode 
        javaMaxHeapSize
    }
}
Run Code Online (Sandbox Code Playgroud)
但文档太低了
布尔增量
是否为dx启用增量模式.这有许多限制,可能无效.小心使用.
布尔jumboMode
在dx中启用jumbo模式(--force-jumbo).
boolean preDexLibraries
是否预先dex库.这可以改善增量构建,但是干净的构建可能会更慢.
1)哪些限制是增量的?
2)什么是巨型模式?
3)什么是pre-dex库?
一些Android设备由于定制的Android调整由制造商完成,有一些关于电源管理的政治,打破了一些功能,如推送通知.
我想收集意图来启动各自的工具,但我发现只有华为和小米.
Intent INTENT_HUAWEI = new Intent().setComponent(new ComponentName("com.huawei.systemmanager", "com.huawei.systemmanager.optimize.process.ProtectActivity"));
Intent INTENT_XIAOMI = new Intent().setComponent(new ComponentName("com.miui.securitycenter", "com.miui.permcenter.autostart.AutoStartManagementActivity"));
if (getPackageManager().resolveActivity(INTENT_HUAWEI, PackageManager.MATCH_DEFAULT_ONLY) != null)
    startActivity(INTENT_HUAWEI);
else if (getPackageManager().resolveActivity(INTENT_XIAOMI, PackageManager.MATCH_DEFAULT_ONLY) != null)
    startActivity(INTENT_XIAOMI);
Run Code Online (Sandbox Code Playgroud)
我需要其他所有制作人的帮助
使用AppCompatActivity,您必须扩展AppCompat主题.
您可以自定义的完整属性列表是什么,它们的默认值是多少?
我已经收集了一份我已经找到但却不知道是否完整的清单
帮我完成它
<style name="Theme.Custom.AppCompat" parent="Theme.AppCompat">
    <item name="colorAccent">@color/accent_material_dark</item>
    <item name="colorButtonNormal">@color/button_material_dark</item>
    <item name="colorControlActivated">?attr/colorAccent</item>
    <item name="colorControlHighlight">@color/ripple_material_dark</item>
    <item name="colorControlNormal">?android:attr/textColorSecondary</item>
    <item name="colorPrimary">@color/primary_material_dark</item>
    <item name="colorPrimaryDark">@color/primary_dark_material_dark</item>
    <item name="colorSwitchThumbNormal">@color/switch_thumb_material_dark</item>
    <item name="controlBackground">?attr/selectableItemBackgroundBorderless</item>
    <item name="android:colorBackground">@color/background_material_dark</item>
    <item name="android:colorForeground">@color/foreground_material_dark</item>
    <item name="android:textColorPrimary">@color/abc_primary_text_material_dark</item>
    <item name="android:textColorPrimaryInverse">@color/abc_primary_text_material_light</item>
    <item name="android:textColorSecondary">@color/abc_secondary_text_material_dark</item>
    <item name="android:textColorSecondaryInverse">@color/abc_secondary_text_material_light</item>
    <item name="android:windowBackground">@color/background_material_dark</item>
</style>
<style name="Theme.Custom.AppCompat.Light" parent="Theme.AppCompat.Light">
    <item name="colorAccent">@color/accent_material_light</item>
    <item name="colorButtonNormal">@color/button_material_light</item>
    <item name="colorControlActivated">?attr/colorAccent</item>
    <item name="colorControlHighlight">@color/ripple_material_light</item>
    <item name="colorControlNormal">?android:attr/textColorSecondary</item>
    <item name="colorPrimary">@color/primary_material_light</item>
    <item name="colorPrimaryDark">@color/primary_dark_material_light</item>
    <item name="colorSwitchThumbNormal">@color/button_material_light</item>
    <item name="controlBackground">?attr/selectableItemBackgroundBorderless</item>
    <item name="android:colorBackground">@color/background_material_light</item>
    <item name="android:colorForeground">@color/foreground_material_light</item>
    <item name="android:textColorPrimary">@color/abc_primary_text_material_light</item>
    <item name="android:textColorPrimaryInverse">@color/abc_primary_text_material_light</item>
    <item name="android:textColorSecondary">@color/abc_secondary_text_material_light</item>
    <item name="android:textColorSecondaryInverse">@color/abc_secondary_text_material_light</item>
    <item name="android:windowBackground">@color/background_material_light</item>
</style>
Run Code Online (Sandbox Code Playgroud)
此外,在Android中创建自定义AppCompat主题的最佳方法是什么?
有时在我的应用程序中,我需要在后台重复执行某些操作(每X小时).
最高API 25我使用:
AlarmManager 使用setInexactRepeating(尊重电池)WakefulBroadcastReceiver 有足够的时间做所有的工作IntentService 在后台线程中做所有事情在API 26所有这一切都被弃用或限制,并建议使用JobScheduler带JobService代替.
问题是JobService在主线程中运行.
我想在AsyncTask里面使用JobService并调用JobService.jobFinished内部onPostExecute
这是正确的方法吗?
我只使用crashlytics作为例子.
有什么区别
    compile('com.crashlytics.sdk.android:crashlytics:2.6.8@aar') { transitive = true; }
Run Code Online (Sandbox Code Playgroud)
和
    compile 'com.crashlytics.sdk.android:crashlytics:2.6.8'
Run Code Online (Sandbox Code Playgroud) android gradle crashlytics android-gradle-plugin crashlytics-android
使用 OkHttp 和Google Security ProviderInstaller与支持 TLS1.2 和 TLS1.3 的域的任何连接都是使用 1.2 版本进行的。如果没有 ProviderInstaller,使用 1.3 一切都可以正常工作。
这是示例代码,在 Android 12 上使用最新版本的 okhttp 和 play-services-basement
GlobalScope.launch(Dispatchers.IO) {
    var r1 = OkHttpClient().newCall(Request.Builder().url("https://www.google.com").build()).execute()
    println(r1.handshake)
    try {
        ProviderInstaller.installIfNeeded(this@MainActivity)
        println("ProviderInstaller DONE")
    } catch (e: Exception) {
        e.printStackTrace()
    }
    var r2 = OkHttpClient().newCall(Request.Builder().url("https://www.google.com").build()).execute()
    println(r2.handshake)
}
Run Code Online (Sandbox Code Playgroud)
日志结果是
I/System.out: Handshake{tlsVersion=TLS_1_3 cipherSuite=TLS_AES_128_GCM_SHA256 peerCertificates=[CN=www.google.com, CN=GTS CA 1C3, O=Google Trust Services LLC, C=US, CN=GTS Root R1, O=Google Trust Services LLC, C=US] localCertificates=[]}
I/System.out: ProviderInstaller DONE
I/System.out: Handshake{tlsVersion=TLS_1_2 cipherSuite=TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 peerCertificates=[CN=www.google.com, CN=GTS CA 1C3, …Run Code Online (Sandbox Code Playgroud) 我为 2 路数据绑定做了一个简单的 hello world,并且接缝工作完美(当在 editext 上写入时,textview 自动更新),但是在网上找到的所有代码(如官方文档)都有更多的代码和复杂性,例如https://developer.android。 com/主题/库/数据绑定/双向
这是我的代码:
public class MainActivity extends AppCompatActivity {
    public String pippo;
    public Boolean visible = true;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        DataBindingUtil.setContentView(this, R.layout.activity_main);
    }
}
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android">
    <data>
        <variable
            name="pippo"
            type="String" />
        <variable
            name="visible"
            type="Boolean" />
    </data>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical">
        <EditText
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="@={pippo}" />
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="@{pippo}"
            android:visibility="@{visible ? android.view.View.VISIBLE: android.view.View.GONE}" />
        <CheckBox
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:checked="@={visible}" />
    </LinearLayout>
</layout>
Run Code Online (Sandbox Code Playgroud)
特别是文档使用这个东西但接缝无用:
从 android 11 开始,setUserAuthenticationValidityDurationSeconds 已被弃用,取而代之的是 KeyGenParameterSpec.Builder 中的 setUserAuthenticationParameters,但接缝处对以前的版本有任何支持。
那么,最好的解决方案是什么?
KeyGenParameterSpec.Builder builder = new KeyGenParameterSpec.Builder(...)
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.R)
    builder.setUserAuthenticationParameters(timeout, KeyProperties.AUTH_DEVICE_CREDENTIAL | KeyProperties.AUTH_BIOMETRIC_STRONG);
else
    //noinspection deprecation
    builder.setUserAuthenticationValidityDurationSeconds(timeout);
Run Code Online (Sandbox Code Playgroud)
这个?
security android android-keystore android-biometric-prompt android-biometric
正如这里所解释的那样(https://developer.android.com/training/wearables/watch-faces/service.html)绘制表面我必须使用OnDraw方法,是吗?没有其他选择?
你在开玩笑吗?没有来自xml管理的布局?没有dpi管理?没有屏幕格式管理?等等?
真?
请告诉我,我错了!
PS此页面(http://www.binpress.com/tutorial/how-to-create-a-custom-android-wear-watch-face/120)使用正常活动制作表盘,是否正确?
当我放置2或3个TextInputLayout时,标签接缝以图形方式链接到上一个editText而不是下一个.我需要将很多marginTop放到TextInputLayout.有没有可能用EditText接近标签?
<android.support.design.widget.TextInputLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content" >
    <EditText
        android:id="@+id/name"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="@string/name"
        android:inputType="textCapWords" />
</android.support.design.widget.TextInputLayout>
Run Code Online (Sandbox Code Playgroud)

在这个例子中,我们可以看到提示和编辑文本的边距
Retrofit 有 36 个打开的拉取请求和 147 个打开的错误,Okhttp 有 9 个打开的拉取请求和 161 个打开的错误。
我知道这个问题很伤人,而且我们都把 Retrofit 和 Okhttp 当作小孩子,但我需要问:
Retrofit和Okhttp被抛弃了吗?
android ×11
gradle ×2
build.gradle ×1
crashlytics ×1
deprecated ×1
drawerlayout ×1
okhttp ×1
okio ×1
retrofit ×1
security ×1
tls1.3 ×1
wear-os ×1