Android的蓝牙低功耗API实现1种方法连接到该设备connectGatt()
,但2种方法来关闭连接disconnect()
和close()
.
文件说:
disconnect()
:断开已建立的连接,或取消当前正在进行的连接尝试.
close()
:应用程序应在使用此GATT客户端完成后尽早调用此方法.
BluetoothGatt.java的源代码显示close()取消注册应用程序,disconnect()断开客户端连接.然而,它没有说明实际意味着什么.我的意思是,如果只有一种方法可以连接到客户端,为什么有两种方法可以关闭/断开连接?
我遇到了一个使用类定义注释的Room 教程@PrimaryKey
:
@Entity(foreignKeys = @ForeignKey(entity = User.class,
parentColumns = "id",
childColumns = "userId",
onDelete = CASCADE))
public class Repo {
...
}
Run Code Online (Sandbox Code Playgroud)
现在,我有以下想要使用主键的数据类:
@Parcel(Parcel.Serialization.BEAN)
data class Foo @ParcelConstructor constructor(var stringOne: String,
var stringTwo: String,
var stringThree: String): BaseFoo() {
...
}
Run Code Online (Sandbox Code Playgroud)
所以,我刚刚@Entity(tableName = "Foo", foreignKeys = @ForeignKey(entity = Bar::class, parentColumns = "someCol", childColumns = "someOtherCol", onDelete = CASCADE))
在顶部添加了片段,但我无法编译:
注释不能用作注释参数.
我想知道:为什么(我认为是)使用Java而不是在Kotlin中使用相同的概念?还有,有办法解决这个问题吗?
欢迎所有输入.
有没有人能够在Android Studio中运行测试(从GUI而不是终端),我无法从GUI运行测试.
每次我尝试通过GUI运行测试时,我只会收到以下消息:
我可以使用以下命令从终端运行测试:
./gradlew connectedAndroidTest
Run Code Online (Sandbox Code Playgroud)
我正在运行的Android 0.5.2工作室与摇篮1.11与插件0.9.0上的Mac OSX
我的项目结构如下;
MyProject/
src/
androidTest/
java/
com.myproject.app.test/
… (tests source code) …
main/
java/
com.myproject.app/
… (source code) …
res/
… (resources code) …
build.gradle
Run Code Online (Sandbox Code Playgroud)
我的build.gradle文件类似于以下内容:
…
android {
compileSdkVersion 19
buildToolsVersion "19.0.1"
defaultConfig {
versionCode 12
versionName "2.0"
minSdkVersion 9
targetSdkVersion 19
testPackageName "com.test.foo"
testInstrumentationRunner "android.test.InstrumentationTestRunner"
}
}
…
Run Code Online (Sandbox Code Playgroud)
如果有人有任何建议,我会非常高兴在这里.
微软再一次.因此,Visual Studio中的SQL对象资源管理器停止工作并以黄色显示错误.提到的元素是我为了使用AES加密而生成的对称密钥.现在拥有它对我来说没用,因为如果我想要检查表结构,我必须打开SSMS.关于如何解决这个问题的任何想法?
编辑
请停止指定更新Azure SDK的答案,它没有关联,也没有用
我已经反应原生版本0.42.0.我的项目工作正常.
最近我升级到react-native版本0.43.1.而现在,当我这样做
react-native run-android
Run Code Online (Sandbox Code Playgroud)
我遇到了错误.
JS server already running.
Building and installing the app on the device (cd android && ./gradlew installDebug)...
Error: Could not find or load main class org.gradle.wrapper.GradleWrapperMain
Could not install the app on the device, read the error above for details.
Make sure you have an Android emulator running or a device connected and have
set up your Android development environment:
https://facebook.github.io/react-native/docs/android-setup.html
Run Code Online (Sandbox Code Playgroud)
我已按照https://facebook.github.io/react-native/docs/upgrading.html的升级说明进行操作
我用谷歌搜索了这个问题.通过以下链接,没有一个对我有用.
任何形式的帮助/指导对我都有帮助.
如何在react-native-camera顶部添加一个掩码?
我正在使用react-native-camera为React Native QRCode扫描仪应用程序构建UI.
相机顶部的覆盖遮罩应为浅灰色,但中间部分必须保持透明(透视).
但是当我在外面罩上更改backgroundColor时,它似乎也会影响中心部分.我的意思是,当然,它背后是儿童观.
下面的代码是快照的简化版本.
<Camera
ref={cam => {
this.camera = cam;
}}
onBarCodeRead={this._onBarCodeRead}
style={styles.cameraView}
aspect={Camera.constants.Aspect.fill}
playSoundOnCapture
>
<View
style={{
position: 'absolute',
top: 0,
left: 0,
width: '100%',
height: '100%',
backgroundColor: 'rgba(0.2, 0.2, 0.2, 0.2)',
alignItems: 'center',
justifyContent: 'space-around',
}}
>
<View
style={{
width: 300,
height: 300,
backgroundColor: 'transparent',
borderColor: 'white',
borderWidth: 1,
}}
/>
</View>
</Camera>
Run Code Online (Sandbox Code Playgroud)
知道怎么做到这一点?
activity_layout.xml
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android">
<data>
<import type="android.view.View" />
<variable
name="callback"
type="com.buscom.ActionCallBack" />
</data>
<LinearLayout xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/ll_oml"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/grey_50"
android:orientation="vertical">
<android.support.design.widget.CoordinatorLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="@{(v) -> callback.onClick(v)}"
android:text="Menu" />
</android.support.design.widget.CoordinatorLayout>
</LinearLayout>
</layout>
Run Code Online (Sandbox Code Playgroud)
ActionCallBack.java
这是我在MainActivity中实现的接口
public interface ActionCallback {
void onClick(View view);
}
Run Code Online (Sandbox Code Playgroud)
MainActivity.java
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
binding = DataBindingUtil.setContentView(this, R.layout.activity_main);
actionCallBack = new ActionCallBack() {
@Override
public void onClick(View view) {
System.out.println("Call onclick method *****");
}
}
}
Run Code Online (Sandbox Code Playgroud)
当我点击按钮onClick()方法没有被激发时,注意显示在输出中或没有执行任何操作.但是使用onClickListener以传统方式工作
我在尝试获取外部Java项目时遇到了麻烦,因此我也可以在其上使用Android类.该库已集成在Android项目中.例如:我有几个我想要实现的模型类,Parcelable
因此它们可以相应地进行串行化,但是没有一个Android类可用.
澄清我只是为了试图解决这个问题而这样做
到目前为止我只尝试过:
Android中的包名称
com.domain.androidproject
图书馆的包最初
com.domain.libproject
变成:
com.dommain.androidproject.libproject
但到目前为止没有运气.我将库导入为Gradle外部项目vía:
compile project(path: ':LibProject')
Run Code Online (Sandbox Code Playgroud)
谢谢您的帮助.
所以这发生了.无论我在build.gradle上尝试做什么,所有APK都会带有native_code = 'x86_64'
标志,所以当我将应用程序部署到商店时,结果是有+ 15K不兼容的设备,只有19兼容.我首先想到,不知何故,安装NDK是原因,或者我修改后的构建脚本.但是当我通过Generate Signed APK向导时,它仍然会发生.该splits
区块最初也失踪了,并没有帮助.最奇怪的是,当我通过控制台推送安装时,IT工作!
我也试过切换到推荐的JRE,还有几个关于文件创建的APK命名策略,比如将输出移动到不同的目录或不使用文件构造函数.
我build.gradle
看起来像这样:
defaultConfig {
applicationId "com.chiskosystems.brokr"
versionCode versionNumber
versionName "${versionMajor}.${versionMinor}.${versionPatch} (${versionBuild}) Release"
minSdkVersion 16
targetSdkVersion 25
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
multiDexEnabled true
jackOptions {
enabled false
}
vectorDrawables {
useSupportLibrary true
}
}
splits {
abi {
enable true
reset()
include 'armeabi', 'armeabi-v7a', 'arm64-v8a'
}
}
project.ext.versionCodes = ['armeabi': 1, 'armeabi-v7a': 2, 'arm64-v8a': 3]
applicationVariants.all { variant ->
variant.outputs.each { output ->
def fileNaming = "apk/brokr"
def outputFile = output.outputFile …
Run Code Online (Sandbox Code Playgroud) 我有一个与pre-gradle完美配合的Android项目:2.1.0-alpha3版本.现在它正在抛出这些错误而不知道如何解决它们:
Error:Execution failed for task ':app:compileDebugJavaWithJavac'.
> java.lang.NoSuchMethodError: com.google.common.collect.FluentIterable.append(Ljava/lang/Iterable;)Lcom/google/common/collect/FluentIterable;
Run Code Online (Sandbox Code Playgroud)
这很奇怪,有一个特定的分支,在过去的四五天也用于在apk中抛出重复的对象,详情请点击这里
我的应用程序的模块build.gradle:
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.1.0-alpha5'
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
}
}
allprojects {
repositories {
jcenter()
}
gradle.projectsEvaluated {
tasks.withType(JavaCompile) {
options.compilerArgs << "-Xlint:unchecked"
}
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
Run Code Online (Sandbox Code Playgroud)
和我的模块的build.gradle:
apply plugin: 'com.android.application'
apply plugin: 'com.neenbedankt.android-apt'
android {
compileSdkVersion 23
buildToolsVersion '23.0.3'
defaultConfig {
applicationId "..."
minSdkVersion 14
targetSdkVersion 23
versionCode 1
versionName "1.0"
multiDexEnabled true
}
dataBinding {
enabled …
Run Code Online (Sandbox Code Playgroud) 在我的Firebase实时数据库中,我有两个用于调试和发布版本的主要分支.debug分支工作正常,但是当获取release分支时,price
字段在转换为下面的map或list之后总是具有零值,而其他三个字段反映来自DB的正确值.请注意,在DB上使用整数或小数字段没有区别.这就是我的数据的样子:
这是我的数据类问题
data class JsonProducto(var id: String,
var name: String,
var description: String,
var price: Double) : Parcelable {
constructor() : this(
"id",
"name",
"desc",
0.0
)
constructor(source: Parcel) : this(
source.readString(),
source.readString(),
source.readString(),
source.readDouble()
)
override fun describeContents() = 0
override fun writeToParcel(dest: Parcel, flags: Int) = with(dest) {
writeString(id)
writeString(name)
writeString(description)
writeDouble(price)
}
companion object {
@JvmField
val CREATOR: Parcelable.Creator<JsonProducto> = object : Parcelable.Creator<JsonProducto> {
override fun createFromParcel(source: Parcel): JsonProducto = JsonProducto(source)
override fun newArray(size: Int): …
Run Code Online (Sandbox Code Playgroud) 我正在开发一个简单的 react-native 应用程序,并且在 TouchableHighlight 上遇到了一个问题:
按 时TouchableHighlight
,将显示一个新屏幕(使用 中的 StackNavigator react-navigation
)。按下后退按钮并返回到原始屏幕后,TouchableHighlight
仍然具有黑色背景色 - 这意味着它仍然突出显示。
我的问题是:
TouchableHighlight
-component的突出显示?这样我就可以在onPress
运行后禁用突出显示。TouchableHighlight
突出显示停留的可能原因是什么?我在没有导航的情况下在应用程序的其他部分使用它,我可以想象它与此有关。在TouchableHighlight
一个FlatList中存在。renderItems 方法如下所示:
let handlePress = () => {
this.props.navigation.navigate('DetailsScreen');
};
return <TouchableHighlight
onPress={handlePress}>
<Text>Some Text</Text>
</TouchableHighlight>;
Run Code Online (Sandbox Code Playgroud)
如果您需要/想要任何进一步的信息,请告诉我。我已经在 android 上测试了代码,使用带有 Marshmallow 的 Genymotion 模拟器。
版本是:
在这一点上,我很确定错误在我的代码中,因为TouchableHighlight
在我的应用程序的其他部分正常工作,并且它可能与导航调用有关,但我无法确定,究竟是为什么。我已经确保我的应用程序中没有异常或类似的东西,因此 onPress 方法成功完成。
如何setSupportActionBar
用 kotlin 语言调用片段。我有一个带有导航抽屉的 mainActivity。当我点击导航抽屉的第一项时,它应该打开一个 notesFragment 。我想为 notesFragment 设置一个工具栏。当我尝试使用AppCompatActivity().setSupportActionBar(toolbar_top)
该应用程序时,当我单击导航抽屉的第一项时崩溃,并出现错误
java.lang.NullPointerException:尝试在空对象引用上调用虚拟方法“android.view.Window$Callback android.view.Window.getCallback()”
class notesFragment:Fragment(){
override fun onCreateView(inflater: LayoutInflater?, container: ViewGroup?, savedInstanceState: Bundle?): View? {
AppCompatActivity().setSupportActionBar(toolbar_top)
AppCompatActivity().getSupportActionBar()!!.setDisplayShowTitleEnabled(false)
fragments()
AppCompatActivity().getSupportActionBar()!!.setDisplayHomeAsUpEnabled(true)
return inflater!!.inflate(R.layout.main_fragment,null)
}
fun fragments() {
var tabLayout=tab
var viewPager=viewPager
var adapter=viewPagerAdapterMainActivity(AppCompatActivity().supportFragmentManager)
adapter.addFragment(firstFragment(),"first")
adapter.addFragment(secondFragment(),"second")
adapter.addFragment(thirdFragment(),"third")
viewPager.adapter=adapter
tabLayout.setupWithViewPager(viewPager)
}
}
Run Code Online (Sandbox Code Playgroud) android ×9
kotlin ×3
react-native ×3
gradle ×2
java ×2
android-room ×1
azure ×1
bluetooth ×1
build ×1
build-tools ×1
build.gradle ×1
css ×1
firebase ×1
sql ×1
sql-server ×1
testing ×1