小编gun*_*ess的帖子

ADB root无法在模拟器上运行

我刚刚更新了模拟器26.0.3,现在我无法adb root为新创建的模拟器运行命令.

显示的错误如下:

adbd cannot run as root in production builds

我杀了并重新开始adbd像:

adb kill-server
adb devices
Run Code Online (Sandbox Code Playgroud)

没有任何帮助,任何想法?


我不确定有什么区别以及如何选择不同的构建,但是,如果在创建时启用了以下设置,则它具有root权限.在此输入图像描述

android root adb android-emulator

39
推荐指数
2
解决办法
3万
查看次数

在Windows上安装Hadoop

在我的C驱动器中提取hadoop之后,我尝试执行hadoop version命令并获得以下错误.JAVA_HOME在我的环境变量中正确设置.任何人都可以帮助解决这个错误吗?

C:\>hadoop version 

The system cannot find the path specified.
Error: JAVA_HOME is incorrectly set.
Please update C:\hadoop-2.5.1\conf\hadoop-env.cmd '-Xmx512m' is not recognized as an internal or external command, ooperable program or batch file.
Run Code Online (Sandbox Code Playgroud)

windows hadoop

18
推荐指数
5
解决办法
3万
查看次数

如何向 Jetpack Compose 的 BottomSheet 传递参数?

我正在尝试显示模式 BottomSheet,它需要一个参数。这就是我显示 BottomSheet 的方式:bottomSheetState.animateTo(ModalBottomSheetValue.Expanded)

这是我的设置:

@Composable
fun MainView() {
    val navController = rememberNavController()

    val modalBottomSheetState = rememberModalBottomSheetState(
        initialValue = ModalBottomSheetValue.Hidden,
        confirmStateChange = {
            it != ModalBottomSheetValue.HalfExpanded
        }
    )
    ModalBottomSheetLayout(
        sheetState = modalBottomSheetState,
        sheetContent = {
            AnimationScreen()
        },
        sheetShape = RoundedCornerShape(topStart = Radius.l, topEnd = Radius.l)
    ) {
        Scaffold(
            bottomBar = {
                BottomBar(navController)
            }
        ) {
            BottomBarMain(navController, modalBottomSheetState) 
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

所以,我的问题是:将参数传递给 this 的好方法是什么ModalBottomSheet


我有一个可能的解决方案,但我不知道这是否是正确的方法。这是它的样子:

var animationId by remember { mutableStateOf(-1L) }

...
sheetContent = {
    AnimationScreen(animationId)
} …
Run Code Online (Sandbox Code Playgroud)

android kotlin android-jetpack android-jetpack-compose

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

填充带有九个补丁背景的文本视图没有视觉效果

我试图基于textview创建像控件一样的toast,我发现textview的非常奇怪的行为,以防它有九个补丁drawable作为背景.

这是xml定义:

<by.pplware.view.QuickInfo
    android:id="@+id/quickinfo"
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true"
    android:padding="20px"
    android:textSize="20px"
    android:textStyle="bold"
    android:typeface="serif"
    android:background="#FFFF0000"
/>
Run Code Online (Sandbox Code Playgroud)

这是带有彩色背景的textview: 在此输入图像描述

这是带有drawable背景的textview: 在此输入图像描述

据我了解,在九个补丁的情况下,android make padding透明,并使用drawable仅作为文本的背景.但我想在填充九层背景的区域中加入填充.

这个问题有什么解决方案吗?

android textview nine-patch

9
推荐指数
1
解决办法
8306
查看次数

app:stackFromEnd for RecyclerView无法在xml中运行?

我有一个RecyclerView定义为:

    <android.support.v7.widget.RecyclerView
      android:id="@+id/message_list"
      android:layout_width="match_parent"
      android:layout_height="match_parent"
      android:layout_above="@id/message_input"
      android:layout_alignParentTop="true"
      app:stackFromEnd="true" />
Run Code Online (Sandbox Code Playgroud)

相关代码也常用于:

    LinearLayoutManager layoutManager = new LinearLayoutManager(this);
    //layoutManager.setStackFromEnd(true);
    mRecyclerView.setLayoutManager(layoutManager);
Run Code Online (Sandbox Code Playgroud)

但是,当我添加一个项目时RecyclerView,它不尊重app:stackFromEnd="true".另一方面,如果我以layoutManager.setStackFromEnd(true);编程方式取消注释并使用它,它可以正常工作.我错过了什么问题?欢迎任何想法.

android android-layout android-recyclerview linearlayoutmanager

9
推荐指数
1
解决办法
5163
查看次数

王国关闭自己

我在Application对象上使用一个静态全局Realm实例(从不关闭)仅用于UI Thread,

@UiThread
public static Realm getRealm() {
    if (Thread.currentThread() == Looper.getMainLooper().getThread()) {
        return realmInstance;
    } else {
        Timber.e("Illegal access to getRealmObservable");
        throw new IllegalStateException("Only UI Thread can access this realm");
    }
}
Run Code Online (Sandbox Code Playgroud)

而另一个单独使用的Workermhread域如下:

@WorkerThread
public static void executeOnSingleUseRealm(final Realm.Transaction transaction) {
    if (Thread.currentThread() == Looper.getMainLooper().getThread()) {
        Timber.e("Wrong thread for Realm");
        throw new IllegalStateException("Wrong thread for Single use Realm");
    }

    Realm realm = null;
    try {
        realm = Realm.getDefaultInstance();
        realm.executeTransaction(transaction);
    } catch (Exception e) {
        Timber.e(e, "Exception in Single Use …
Run Code Online (Sandbox Code Playgroud)

android realm rx-java

9
推荐指数
1
解决办法
791
查看次数

android.hardware.camera2.full来自哪里?

我正在尝试实现相机应用程序.并检查示例.一些示例包含以下清单功能:uses-feature android:name="android.hardware.camera2.full.我检查过官方文档和谷歌示例,但没有一个提到现有的这个功能.(或者我错过了一些).

这个功能的来源是什么android.hardware.camera?有什么区别?


编辑:让我困惑的是这些例子googlesamples:

https://github.com/googlesamples/android-Camera2Basic/blob/master/kotlinApp/Application/src/main/AndroidManifest.xml

还有这个

https://github.com/googlesamples/android-Camera2Basic/blob/master/Application/src/main/AndroidManifest.xml

还有这个

https://github.com/googlesamples/android-Camera2Raw/blob/master/Application/src/main/AndroidManifest.xml

他们正在使用新的Camera2API和旧的清单features.我不知道两者是如何结合在一起的.

android android-camera android-camera2

9
推荐指数
2
解决办法
3927
查看次数

在不使用Android市场的情况下在Android中进行自动更新?

可能重复:
有没有办法在Android上自动更新应用程序?

作为应用程序的属性(不使用GOOGLE PLAY),可以在android中自动更新?我的意思是应用程序可以检查并下载新的apk文件,并在下载后安装吗?

android auto-update

6
推荐指数
2
解决办法
1万
查看次数

如何将吐司风格设为主题?

我想通过编辑更改我的应用程序中的所有祝酒词themes.xml.

<item name="buttonStyle">@style/MyButton</item>用来改变我的按钮,有类似于Toasts的东西,还是我必须创建和使用MyToast扩展内置Toast的类?

android toast android-theme

6
推荐指数
1
解决办法
7597
查看次数

如何在Android上使用HttpURLConnection而不是SOCKS代理

好吧,我一直在尝试在android上使用SOCKS代理.我太挣扎了,我没能正确使用它.

基本上我确实希望通过SOCKS代理获取页面内容HttpURLConnection(必须).

我使用的代码是这样的:

    String proxyHost = "192.168.2.2";
    int proxyPort = 1999;
    InetSocketAddress proxyAddr = new InetSocketAddress(proxyHost, proxyPort);
    Proxy proxy = new Proxy(Proxy.Type.SOCKS, proxyAddr);

    URL request = new URL("http://requestb.in/sgjga5sg");

    HttpURLConnection urlConnection = (HttpURLConnection) request.openConnection(proxy);
    urlConnection.setDoInput(true);
    urlConnection.setConnectTimeout(36000);
    urlConnection.setReadTimeout(44000);

    InputStream is = urlConnection.getInputStream();

    for (int x = is.read(); x >= 0; x = is.read()) {
        System.out.print((char) x);
    }
    System.out.println();
Run Code Online (Sandbox Code Playgroud)

我知道SocketTimeOutException,这是堆栈跟踪:

java.net.SocketTimeoutException
at java.net.PlainSocketImpl.read(PlainSocketImpl.java:488)
at java.net.PlainSocketImpl.access$000(PlainSocketImpl.java:37)
at java.net.PlainSocketImpl$PlainSocketInputStream.read(PlainSocketImpl.java:237)
at java.net.PlainSocketImpl.socksReadReply(PlainSocketImpl.java:440)
at java.net.PlainSocketImpl.socksRequestConnection(PlainSocketImpl.java:340)
at java.net.PlainSocketImpl.socksConnect(PlainSocketImpl.java:326)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:181)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:456)
at java.net.Socket.connect(Socket.java:887) …
Run Code Online (Sandbox Code Playgroud)

proxy android socks

6
推荐指数
1
解决办法
1072
查看次数