Questions tagged «android»

Android是Google的移动操作系统,用于对数字设备(智能手机,平板电脑,汽车,电视,Wear,Glass和IoT)进行编程或开发。对于与Android相关的主题,请使用特定于Android的标签,例如android-intent,android-activity,android-adapter等。对于与开发或编程无关但与Android框架相关的问题,请使用以下链接:https:// android.stackexchange.com。

2
安装Referrer Library v1.1添加权限
将Install Referrer Library从v1.0更新到v1.1,添加了以下权限: WRITE_EXTERNAL_STORAGE READ_EXTERNAL_STORAGE READ_PHONE_STATE 这些权限在Install Referrer Library manifest.xml中不存在: <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.android.installreferrer" > <uses-permission android:name="com.google.android.finsky.permission.BIND_GET_INSTALL_REFERRER_SERVICE" /> <application /> </manifest> 来源:https : //mvnrepository.com/artifact/com.android.installreferrer/installreferrer/1.1 为什么将这些权限添加到合并清单中?

1
MIUI 10不允许服务启动活动-小米Redmi注意
我的应用程序具有服务和活动。在服务中,使用以下代码调用活动: Intent intent = new Intent(getApplicationContext(), MainActivity.class); intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); startActivity(intent); 即使没有这些标志,活动窗口也通常以正确的布局显示。但是,在具有Android 7的Xiaomi Redmi Note 4上,不会显示活动布局。我只在logcat上看到以下行: I /时间轴:时间轴:Activity_launch_request时间:281438674目的:目的{flg = 0x30000000 cmp = com.test.app / .MainActivity} 我认为这不是Android 7(API 24)的问题,因为在具有Android 7的另一台设备上,服务可以成功启动活动。我猜想,MIUI正在阻止从服务启动活动。 我尝试更改清单中定义活动的方式。我还尝试了几种不同的标志。我所有的测试都失败了。我无法成功开始活动。最糟糕的问题是日志中没有错误/异常。 有什么想法吗?
9 java  android  miui 

4
升级flutter后创建方法通道-无法解析方法getFlutterView()
我在Flutter应用程序中使用本机android方法使用文档说 MethodChannel(flutterView, CHANNEL).setMethodCallHandler... 但是升级颤振后,该MethodChannel功能将不再需要,flutterView并且flutterView不再可用。 can not resolve method getFlutterView() 我认为应该有一个用于创建频道的新教程 相反,它需要一些BinaryMessenger我不知道该给些什么。 这是旧的代码,不再起作用: import io.flutter.app.FlutterActivity; import io.flutter.plugin.common.MethodCall; import io.flutter.plugin.common.MethodChannel; import io.flutter.plugin.common.MethodChannel.MethodCallHandler; import io.flutter.plugin.common.MethodChannel.Result; public class MainActivity extends FlutterActivity { private static final String CHANNEL = "samples.flutter.dev/battery"; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); GeneratedPluginRegistrant.registerWith(this); new MethodChannel(getFlutterView(), CHANNEL).setMethodCallHandler( new MethodCallHandler() { @Override …

1
如何通过其他资源获取引用资源的ID?
我想在运行时获取引用资源的ID。例如,这是我的代码: <string name="d2c_entryroadblock_start_value" translatable="false">@string/get_started</string> 并且我对R.string.get_started仅R.string.d2c_entryroadblock_start_value在运行时具有引用的ID感兴趣。 您还可以在下面的APK分析器中查看其外观-我需要得到它 @ref/0x7f1302fc

4
错误:无法确定当前字符,它不是Android的react-native中的字符串,数字,数组或对象
每当我在保持模拟器运行的同时运行react-native run-android时,都会出现此错误。react-native run-ios程序完全正常。 Error: Command failed: ./gradlew app:installDebug -PreactNativeDevServerPort=8081 :ReactNative:Failed to parse React Native CLI configuration: groovy.json.JsonException: Unable to determine the current character, it is not a string, number, array, or object The current character read is 'E' with an int value of 69 Unable to determine the current character, …

3
我们可以在Android设备的本机反应中获得face-id吗?
我在我的应用程序中实施了生物识别技术以进行身份​​验证。我正在使用本机生物识别技术。每件事都运转良好,只是卡住了。Face-id在Android中不起作用。我做了很多谷歌搜索,但找不到满意的答案。甚至可以在Android中使用face-id? Biometrics.isSensorAvailable() .then((biometryType) => { if (biometryType === Biometrics.TouchID) { console.log('TouchID is supported') } else if (biometryType === Biometrics.FaceID) { console.log('FaceID is supported') } else { console.log('Biometrics not supported') } }) 即使我在手机中使用FaceId,也总是返回TouchId。预先感谢您的帮助。

2
<androidx.fragment.app.FragmentContainerView> vs <fragment>作为NavHost的视图
当androidx.fragment.app.FragmentContainerView用作导航主机而不是常规fragment应用程序时,方向更改后将无法导航到目的地。 我收到以下错误: java.lang.IllegalStateException: no current navigation node 是否有我应该正确使用的陷阱,或者我使用导航组件的方式不正确? 具有视图的简单活动xml: ... &lt;androidx.fragment.app.FragmentContainerView android:id="@+id/nav_host_fragment" android:name="androidx.navigation.fragment.NavHostFragment" android:layout_width="match_parent" android:layout_height="match_parent" app:defaultNavHost="true" app:layout_behavior="@string/appbar_scrolling_view_behavior" app:navGraph="@navigation/nav_simple" /&gt; ... 导航代码: &lt;?xml version="1.0" encoding="utf-8"?&gt; &lt;navigation xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/nav_legislator.xml" app:startDestination="@id/initialFragment"&gt; &lt;fragment android:id="@+id/initialFragment" android:name="com.example.fragmenttag.InitialFragment" android:label="Initial Fragment" tools:layout="@layout/initial_fragment"&gt; &lt;action android:id="@+id/action_initialFragment_to_destinationFragment" app:destination="@id/destinationFragment" /&gt; &lt;/fragment&gt; &lt;fragment android:id="@+id/destinationFragment" android:name="com.example.fragmenttag.DestinationFragment" android:label="Destination Fragment" tools:layout="@layout/destination_fragment" /&gt; &lt;/navigation&gt; 这是一个github存储库,您可以在其中轻松重现错误:https …

6
重新安装后从SharedPreferences中检索值,并使用Android自动备份使用allowBackup = true进行检索
重新安装应用程序并设置allowBackup = true时,无法从共享的“首选项”中检索值(在Android 9.0设备上)。 &lt;manifest ... &gt; ... &lt;application android:allowBackup="true" ... &gt; ... &lt;/application&gt; &lt;/manifest&gt; 据此:https : //developer.android.com/guide/topics/data/autobackup 共享的首选项应该恢复吗? SharedPreferences prefs = getSharedPreferences("TEST", MODE_PRIVATE); String name = prefs.getString("name", "No name defined");//"No name defined" is the default value. int idName = prefs.getInt("idName", 0); //0 is the default value. SharedPreferences.Editor editor = …

5
如何指示Gradle从不同位置使用Java?
我当时在Android Studio中构建测试应用,然后在事件日志中显示: Android Studio使用以下JDK位置:C:\ Program Files \ Android \ Android Studio \ jre与Gradle默认使用的位置不同:C:\ Program Files(x86)\ Java \ jdk1.8.0_181使用不同的位置可能会产生如果在使用Android Studio时从命令行运行Gradle任务,则将有多个Gradle守护进程。 然后给出以下选项: 更多信息... 将Android Studio设置为与Gradle使用相同的JDK并同步 不再显示此警告 我点击了: 将Android Studio设置为与Gradle使用相同的JDK并同步 则我的应用程序不再需要构建。 这是错误: Gradle同步失败:无法启动守护进程。 此问题可能是由守护程序的错误配置引起的。 例如,使用了无法识别的jvm选项。 请参阅守护程序上的《用户手册》一章,网址为 https://docs.gradle.org/5.4.1/userguide/gradle_daemon.html 进程命令行:C:\ Program Files(x86)\ Java \ jdk1.8.0_181 \ bin \ java.exe -Xmx1536m -Dfile.encoding = windows-1252 -Duser.country = …

1
RenderScript在macOS Catalina(10.15)上损坏
我已经更新到MacOS Catalina。今天早上,当我在做Android项目时,它突然开始出现以下异常:“错误:原因:错误= 86,可执行文件中的CPU类型错误”。 我怀疑是因为我更新到了macOS 10.15,并且因为我尝试为我的项目构建APK(因此它重新构建了renderscript的东西)。这是给定的完整堆栈跟踪: org.gradle.process.internal.ExecException: A problem occurred starting process 'command '/Users/name/Library/Android/sdk/build-tools/28.0.3/arm-linux-androideabi-ld'' at org.gradle.process.internal.DefaultExecHandle.execExceptionFor(DefaultExecHandle.java:232) at org.gradle.process.internal.DefaultExecHandle.setEndStateInfo(DefaultExecHandle.java:209) at org.gradle.process.internal.DefaultExecHandle.failed(DefaultExecHandle.java:356) at org.gradle.process.internal.ExecHandleRunner.run(ExecHandleRunner.java:86) at org.gradle.internal.operations.CurrentBuildOperationPreservingRunnable.run(CurrentBuildOperationPreservingRunnable.java:38) at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63) at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55) at java.lang.Thread.run(Thread.java:748) Caused by: net.rubygrapefruit.platform.NativeException: Could not start '/Users/name/Library/Android/sdk/build-tools/28.0.3/arm-linux-androideabi-ld' at net.rubygrapefruit.platform.internal.DefaultProcessLauncher.start(DefaultProcessLauncher.java:27) at net.rubygrapefruit.platform.internal.WrapperProcessLauncher.start(WrapperProcessLauncher.java:36) at org.gradle.process.internal.ExecHandleRunner.startProcess(ExecHandleRunner.java:97) at org.gradle.process.internal.ExecHandleRunner.run(ExecHandleRunner.java:70) …

4
当前台服务最后停止时,应用程序保持运行
我遇到了Android的流程管理中与前台服务结合在一起的行为,这确实使我感到困惑。 什么对我来说合理 当您从“最近使用的应用程序”中滑动应用程序时,操作系统应在不久的将来完成应用程序的处理。 当您在运行前台服务时从“最近的应用程序”中滑动应用程序时,该应用程序仍处于活动状态。 当您从“最近使用的应用程序”中滑动应用程序之前停止前台服务时,您将获得与1)相同的功能。 是什么让我感到困惑 当您在前台没有任何活动的情况下停止前台服务(应用程序未出现在“最新应用程序”中)时,我希望该应用程序现在被杀死。 但是,这没有发生,应用程序过程仍然有效。 例 我创建了一个最小的示例来展示这种行为。 ForegroundService: import android.app.Notification import android.app.NotificationChannel import android.app.NotificationManager import android.app.PendingIntent import android.app.Service import android.content.Context import android.content.Intent import android.os.Build import android.os.IBinder import androidx.core.app.NotificationCompat import timber.log.Timber class MyService : Service() { override fun onBind(intent: Intent?): IBinder? = null override fun onCreate() { super.onCreate() …

1
将Kotlin内联类作为实体字段的会议室数据库
我试图让Room(https://developer.android.com/topic/libraries/architecture/room)与Kotlin的内联类一起工作,如Jake Whartons文章内联类使数据库ID大: @Entity data class MyEntity( @PrimaryKey val id: ID, val title: String ) inline class ID(val value: String) 编译此房间时抱怨 实体和Pojos必须具有可用的公共构造函数。您可以有一个空的构造函数或一个其参数与字段匹配的构造函数(按名称和类型)。 查看生成的Java代码,我发现: private MyEntity(String id, String title) { this.id = id; this.title = title; } // $FF: synthetic method public MyEntity(String id, String title, DefaultConstructorMarker $constructor_marker) { this(id, title); } …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.