小编Had*_*dis的帖子


Android的sharedpreference

我需要关于android和偏好数据中共享首选项的简单解释

android sharedpreferences

10
推荐指数
1
解决办法
6760
查看次数

Android Studio:导航xml编辑和设计视图问题

我们一直在项目中使用Navigation组件,但是偶然发现了一个问题,该问题对于我们的项目和JetBrains Android插件来说似乎是唯一的。我无法确切指出它开始发生的确切点,但是我在AS 3.2发布后注意到了这一点。

该项目构建良好,但是在编辑导航XML时,自动完成和突出显示之类的内容已损坏,Android支持插件会引发以下错误:

java.lang.IllegalArgumentException: Multiple entries with same key: org.jetbrains.android.dom.navigation.NavigationSchema$TypeRef@0=org.jetbrains.android.dom.navigation.NavigationSchema$NavigatorKeyInfo@17d69e53 and org.jetbrains.android.dom.navigation.NavigationSchema$TypeRef@0=org.jetbrains.android.dom.navigation.NavigationSchema$NavigatorKeyInfo@442c4fde
at com.google.common.collect.ImmutableMap.conflictException(ImmutableMap.java:215)
at com.google.common.collect.ImmutableMap.checkNoConflict(ImmutableMap.java:209)
at com.google.common.collect.RegularImmutableMap.checkNoConflictInKeyBucket(RegularImmutableMap.java:147)
at com.google.common.collect.RegularImmutableMap.fromEntryArray(RegularImmutableMap.java:110)
at com.google.common.collect.ImmutableMap$Builder.build(ImmutableMap.java:393)
at org.jetbrains.android.dom.navigation.NavigationSchema.buildCacheKeys(NavigationSchema.java:488)
at org.jetbrains.android.dom.navigation.NavigationSchema.init(NavigationSchema.java:479)
at org.jetbrains.android.dom.navigation.NavigationSchema.createIfNecessary(NavigationSchema.java:389)
at org.jetbrains.android.dom.AttributeProcessingUtil.processNavAttributes(AttributeProcessingUtil.java:408)
at org.jetbrains.android.dom.AttributeProcessingUtil.processAttributes(AttributeProcessingUtil.java:596)
at org.jetbrains.android.dom.AndroidDomExtender.registerExtensions(AndroidDomExtender.java:57)
at org.jetbrains.android.dom.AndroidDomExtender.registerExtensions(AndroidDomExtender.java:29)
at com.intellij.util.xml.reflect.DomExtenderEP.extend(DomExtenderEP.java:83)
at com.intellij.util.xml.impl.DynamicGenericInfo.runDomExtenders(DynamicGenericInfo.java:134)
at com.intellij.util.xml.impl.DynamicGenericInfo.lambda$checkInitialized$0(DynamicGenericInfo.java:64)
at com.intellij.openapi.util.RecursionManager$2.doPreventingRecursion(RecursionManager.java:98)
at com.intellij.util.xml.impl.DynamicGenericInfo.checkInitialized(DynamicGenericInfo.java:63)
at com.intellij.util.xml.impl.DynamicGenericInfo.getAttributeChildrenDescriptions(DynamicGenericInfo.java:241)
at com.intellij.util.xml.impl.DynamicGenericInfo.processAttributeChildrenDescriptions(DynamicGenericInfo.java:254)
at com.intellij.util.xml.impl.DomSemContributor.lambda$registerSemProviders$5(DomSemContributor.java:199)
at com.intellij.semantic.SemServiceImpl$2.lambda$registerSemElementProvider$0(SemServiceImpl.java:93)
at com.intellij.semantic.SemServiceImpl.createSemElements(SemServiceImpl.java:190)
at com.intellij.semantic.SemServiceImpl.getSemElements(SemServiceImpl.java:161)
at com.intellij.semantic.SemService.getSemElement(SemService.java:37)
at com.intellij.util.xml.impl.DomManagerImpl.getDomHandler(DomManagerImpl.java:390)
at com.intellij.util.xml.impl.GenericValueReferenceProvider.getReferencesByElement(GenericValueReferenceProvider.java:47)
at com.intellij.psi.impl.source.resolve.reference.ReferenceProvidersRegistryImpl.getReferences(ReferenceProvidersRegistryImpl.java:135)
at com.intellij.psi.impl.source.resolve.reference.ReferenceProvidersRegistryImpl.mapNotEmptyReferencesFromProviders(ReferenceProvidersRegistryImpl.java:123)
at com.intellij.psi.impl.source.resolve.reference.ReferenceProvidersRegistryImpl.doGetReferencesFromProviders(ReferenceProvidersRegistryImpl.java:102)
at com.intellij.psi.impl.source.resolve.reference.ReferenceProvidersRegistry.getReferencesFromProviders(ReferenceProvidersRegistry.java:50)
at com.intellij.psi.impl.source.resolve.reference.ReferenceProvidersRegistry.getReferencesFromProviders(ReferenceProvidersRegistry.java:44)
at com.intellij.psi.impl.source.xml.XmlAttributeValueImpl.getReferences(XmlAttributeValueImpl.java:110)
at com.intellij.codeInsight.daemon.impl.analysis.XmlHighlightVisitor.checkReferences(XmlHighlightVisitor.java:439)
at …
Run Code Online (Sandbox Code Playgroud)

xml navigation android android-layout android-studio

7
推荐指数
1
解决办法
314
查看次数

Android Studio冻结索引编制

我的项目运行良好,但是突然我在手机上运行它时,Android Studio死机了,应该从任务管理器中停止它。在发生这种情况之前,我安装了“ Geny motion”和“ Virtual Box”,但是当发生错误时,我将它们卸载了。但是问题仍然存在。

Android Studio冻结索引

我尝试过的解决方案

  1. 我将其卸载并重新安装
  2. 我拔下电源并插入了设备
  3. 我禁用了设置的android索引

上述解决方案均无效。

indexing android virtualbox freeze genymotion

5
推荐指数
2
解决办法
6250
查看次数

用于JobScheduler的Android-setPeriodic无法正常工作

我已经编写了一个使用本地SqliteDatabase创建和提醒任务的应用程序。我编写了一个jobScheduler服务,以检查设备时间和日期以及数据库中的任务,如果匹配则显示推送通知。我还想要的是在后台运行的服务,每5秒检查一次数据。但是当我写

builder.setPeriodic(5000); builder.setPersisted(true);

服务停止检查数据。

这是我的代码

主要活动

      public class MainActivity extends AppCompatActivity  {
ImageButton plusImageBtn;
DatabaseHelper databaseHelper;
BottomNavigationView navigation;
Toolbar toolbar;
private ComponentName mServiceComponent;
private int jobId=0;
private static final String TAG = MainActivity.class.getSimpleName();
public static final String WORK_DURATION_KEY =
        BuildConfig.APPLICATION_ID + ".WORK_DURATION_KEY";

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    navigation = (BottomNavigationView) findViewById(R.id.navigation);
    plusImageBtn = (ImageButton) findViewById(R.id.plusImagBtn);
    toolbar= (Toolbar) findViewById(R.id.toolbar_main);
    setSupportActionBar(toolbar);

    mServiceComponent = new ComponentName(this, JobSchedulerService.class);

    databaseHelper= new DatabaseHelper(this);
    navigation.setOnNavigationItemSelectedListener
            (new BottomNavigationView.OnNavigationItemSelectedListener() {
                @Override
                public boolean onNavigationItemSelected(@NonNull MenuItem item) …
Run Code Online (Sandbox Code Playgroud)

service android android-sqlite android-jobscheduler

5
推荐指数
1
解决办法
4151
查看次数

React Native - 如何让 productFlavors 具有不同的 applicationIds?

我有一个 RN 代码,我想在 Android 上有 2 种口味。这些口味的不同之处在于:

  1. ic_launcher & drawable
  2. 字符串
  3. 应用程序ID

我在 app/build.gradle 文件中添加了 product flavors,并为它们中的每一个添加了一个目录 res & AndroidManifest.xml。

我特别使用了这个部分。并成功完成了前 2 项。至于applicationId,每当我更改 productFlavors 部分中的 applicationId 字段时,它都会给我这个错误:

 `react native error: activity class {mainactivity} does not exist.`
Run Code Online (Sandbox Code Playgroud)

我使用这些命令来运行应用程序:

  react-native run-android --variant flavortoneDebug

   react-native run-android --variant flavorttwoDebug
Run Code Online (Sandbox Code Playgroud)

我试图更改每个风味的清单文件中的 package="" 字段,但它给了我这个错误:

       Manifest merger failed : Overlay manifest:package attribute declared at 
 AndroidManifest.xml:2:11-38 value=(com.examle.flavorone)
            has a different value=(com.examle.flavorone) declared in main manifest at AndroidManifest.xml:2:3-24
             Suggestion: remove the overlay declaration at …
Run Code Online (Sandbox Code Playgroud)

android build.gradle android-productflavors react-native android-flavordimension

4
推荐指数
1
解决办法
5839
查看次数