小编Hei*_*sch的帖子

在所有连接的设备上运行adb命令

有没有办法在所有连接的设备上运行adb命令?使用"adb uninstall com.example.android"从所有连接的设备卸载应用程序.

我感兴趣的命令主要是安装和卸载.

我正在考虑为此编写一个bash脚本,但我觉得有人应该已经完成​​了:)

android adb

26
推荐指数
3
解决办法
9336
查看次数

GCMRegistrar.onDestroy(上下文)崩溃,Receiver未注册

我该怎么称呼GCMRegistrar.onDestroy?目前我的主要活动包含:

protected void onDestroy() {
    GCMRegistrar.onDestroy(this);
    super.onDestroy();
}
Run Code Online (Sandbox Code Playgroud)

在进行注册或取消注册然后杀死主要活动后,我得到了这个:

08-13 15:43:56.459: E/AndroidRuntime(2389): FATAL EXCEPTION: main
08-13 15:43:56.459: E/AndroidRuntime(2389): java.lang.RuntimeException: Unable to destroy activity {com.test.android/com.test.android.activities.MainActivity}: java.lang.IllegalArgumentException: Receiver not registered: com.google.android.gcm.GCMBroadcastReceiver@40673a10
08-13 15:43:56.459: E/AndroidRuntime(2389):     at android.app.ActivityThread.performDestroyActivity(ActivityThread.java:3090)
08-13 15:43:56.459: E/AndroidRuntime(2389):     at android.app.ActivityThread.handleDestroyActivity(ActivityThread.java:3155)
08-13 15:43:56.459: E/AndroidRuntime(2389):     at android.app.ActivityThread.access$2100(ActivityThread.java:132)
08-13 15:43:56.459: E/AndroidRuntime(2389):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1071)
08-13 15:43:56.459: E/AndroidRuntime(2389):     at android.os.Handler.dispatchMessage(Handler.java:99)
08-13 15:43:56.459: E/AndroidRuntime(2389):     at android.os.Looper.loop(Looper.java:150)
08-13 15:43:56.459: E/AndroidRuntime(2389):     at android.app.ActivityThread.main(ActivityThread.java:4277)
08-13 15:43:56.459: E/AndroidRuntime(2389):     at java.lang.reflect.Method.invokeNative(Native Method)
08-13 15:43:56.459: E/AndroidRuntime(2389):     at java.lang.reflect.Method.invoke(Method.java:507)
08-13 15:43:56.459: E/AndroidRuntime(2389):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839) …
Run Code Online (Sandbox Code Playgroud)

android google-cloud-messaging

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

Android 6中的windowBackground(Marshmallow)

我使用以下元素为我的应用程序定义了一个基本样式:

<item name="android:windowBackground">@color/window_background</item>
Run Code Online (Sandbox Code Playgroud)

这为我的所有活动设置了背景颜色,直到我在Android 6上测试我的应用程序,其中所有背景都是白色的.在运行前棉花糖的设备上,背景仍然是color/window_background.

任何人都知道如何在Android 6上完成这项工作(或者为什么它不起作用)?

使用更多信息进行修改:我的目标是API 22,我没有更改以前版本的任何内容或升级API,只需在Android 6上运行即可更改背景.

android android-6.0-marshmallow

13
推荐指数
1
解决办法
1848
查看次数

在 build.gradle.kts 中设置环境变量

在 groovy 中,您可以使用 来设置环境变量environment key value。例如run你可以这样做:

run {
    environment DB_HOST "https://nowhere"
}
Run Code Online (Sandbox Code Playgroud)

如何在 Kotlin 的 build.gradle.kts 中完成此操作?

kotlin build.gradle gradle-kotlin-dsl

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

可添加到Parcel的可分配内部包

在我的项目中,我有一个模型,其中包含有关模型的基本信息.例如,假设模型是汽车.然后有许多不同种类的汽车,它们分配了不同的数据.所有型号必须是parcelables.

不同车型之间的差异非常小,可能只是几个数据领域.所以这可以通过为不同的汽车创建演示者(只是一个保存数据的类)来解决.然后,演示者将知道它应该保留哪些额​​外数据.因为演示者本身不是可分区的,所以它的所有数据都有一个Bundle,然后Car类将添加到parcelable.我不想让主持人成为可能的人.

因此,Car从演示者处获取Bundle并将其放入其包裹中:

  public void writeToParcel(Parcel parcel, int flags) {
    parcel.writeBundle(getPresenter().getBundle());
  } 
Run Code Online (Sandbox Code Playgroud)

然后它将解压缩:

  public Car(Parcel parcel) {    
    getPresenter().setBundle(parcel.readBundle());
  }
Run Code Online (Sandbox Code Playgroud)

这可以正常工作,直到演示者将可分配的对象添加到包中.然后我收到这个错误:

11-16 15:06:37.255: E/AndroidRuntime(15193): FATAL EXCEPTION: main
11-16 15:06:37.255: E/AndroidRuntime(15193): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example/com.example.activity}: android.os.BadParcelableException: ClassNotFoundException when unmarshalling: com.example.model.engine
11-16 15:06:37.255: E/AndroidRuntime(15193):         at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2185)
11-16 15:06:37.255: E/AndroidRuntime(15193):         at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2210)
11-16 15:06:37.255: E/AndroidRuntime(15193):         at android.app.ActivityThread.access$600(ActivityThread.java:142)
11-16 15:06:37.255: E/AndroidRuntime(15193):         at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1208)
11-16 15:06:37.255: E/AndroidRuntime(15193):         at android.os.Handler.dispatchMessage(Handler.java:99)
11-16 15:06:37.255: E/AndroidRuntime(15193):         at android.os.Looper.loop(Looper.java:137)
11-16 15:06:37.255: E/AndroidRuntime(15193):         at android.app.ActivityThread.main(ActivityThread.java:4931)
11-16 15:06:37.255: E/AndroidRuntime(15193):         at java.lang.reflect.Method.invokeNative(Native …
Run Code Online (Sandbox Code Playgroud)

android parcelable

8
推荐指数
3
解决办法
8174
查看次数

与GCM不同的口味

我有两种版本的应用程序,一种是调试版,另一种是版本.这些是不同风格的原因是我想让其他人下载调试版本来测试新功能.所以应该可以同时安装这两个应用程序.

我的应用程序使用GCM,这已经在Android Lollipop中创建了一些新的安全功能问题.

这是我在安装一个flavor时获得的,并尝试安装另一个flavor:

失败[INSTALL_FAILED_DUPLICATE_PERMISSION perm = com.example.test.permission.C2D_MESSAGE pkg = com.example.test]

我试图通过将其添加到其Android Manifest中来更改调试风格中的权限:

<permission
    android:name="com.example.test.debug.permission.C2D_MESSAGE"
    android:protectionLevel="signature" />
<uses-permission android:name="com.example.test.debug.permission.C2D_MESSAGE" />
Run Code Online (Sandbox Code Playgroud)

但我仍然得到同样的错误.有谁知道如何解决这个问题?

android google-cloud-messaging android-5.0-lollipop

8
推荐指数
1
解决办法
2066
查看次数

NavigationDrawer提示动画(如Google Currents)

我正在寻找一种方法来向用户提供导航抽屉存在的提示.

我喜欢Google Currents暗示有下一页的方式,它只是在下一页中滑动几个像素然后将其删除.

完成这样的动画的最佳方法是什么?

android navigation-drawer

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

同时部署Mobile和Wear

有没有办法从Android Studio同时编译和部署移动和磨损应用程序?

我发现自己对这两个部分进行了更改,然后我需要等待一个部分完成才能部署下一部分.

android android-studio wear-os

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

具有重置的惰性变量

我想创建一个非空的特定类型的变量,例如Foo.

然后我希望对变量的所有访问都返回Foo,就像一个惰性委托一样,但是,我也希望能够重置它.

就像是:

var foo : String by Foo(init: {"bar"})

print(foo) // prints "bar"
foo = null // or foo.reset()
print(foo) // prints "bar"
Run Code Online (Sandbox Code Playgroud)

我试图解决的问题:我有一个适配器的索引,我需要在适配器内容更改时重新创建.所以在改变时我想清除索引,下次有人试图访问它时,我想重新创建它.

kotlin

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

Firebase 动态链接无效

我已经使用我的包标识符作为 url 方案,假设它是“foo.bar”。

我正在模拟器和 safari 中通过输入“foo.bar://”来调试我的应用程序,它会打开我的应用程序。

但是,firebase 使用的链接看起来像:“foo.bar://google/link?deep_link_id=12312312”当我将其输入 safari 时,它显示“Safari 无法打开页面,因为地址无效。”

有谁知道可能出了什么问题?

ios firebase-dynamic-links

5
推荐指数
0
解决办法
934
查看次数

隐藏视图默认构造函数

在Kotlin中有一种方法可以隐藏(放置在其他地方)视图的默认构造函数吗?也许创建一个子视图或扩展或类似的东西.

目前我的所有观点都是这样的,这有点冗长:

class MyView(context: Context, attrs: AttributeSet?, defStyleAttr: Int, defStyleRes: Int): View(context, attrs, defStyleAttr, defStyleRes) {
    constructor(context: Context, attrs: AttributeSet?, defStyleAttr: Int): this(context, attrs, defStyleAttr, 0)
    constructor(context: Context, attrs: AttributeSet?): this(context, attrs, 0, 0)
    constructor(context: Context): this(context, null, 0)
}
Run Code Online (Sandbox Code Playgroud)

android kotlin

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