好吧,这是交易.我买了两部兼容蓝牙的Galaxy Nexus手机.
我编写了一个蓝牙连接管理应用程序,用于设备发现和连接.它还输出设备可以支持的所有可用UUID.
从http://www.bluetooth.org/Technical/AssignedNumbers/service_discovery.htm看,以下标准UUID是从Galaxy Nexus设备公开的.
我试图通过OPP配置文件(UUID 00001105-0000-1000-8000-00805F9B34FB)连接并在设备之间推送对象(文件).我已经了解了有关如何发现,配对/绑定(线程等)和管理所有蓝牙连接的整个Android API文档.我已成功通过SPP(0x1101)配置文件成功连接并与传统板设备通信.
但是,当我尝试socket.connect()在两个galaxy nexus手机之间使用时,会出现配对对话框,然后我点击Pair两个设备上的按钮.在那之后,我马上得到一个Connection Refused IOException.请注意,配对发生后,我再也不会被问到哪个是有意义的,因为安全链接是缓存的.
如果我无法使用这些标准UUID连接到这些标准配置文件,为什么它们会暴露?如何从我的应用程序连接到任何这些配置文件并与它们进行交互?是因为我的应用程序不是以某种方式受信任的吗?有点奇怪的是,即使是ShareAndroid上的功能也根本不起作用.这在Android上完全被破坏了吗?
请不要像我们所说的那样给我提示使用"众所周知的UUID SPP one 0x1101".这不是我想要的.我对这些东西的运作方式有了很好的理解,我正在寻找一个真正的解决方案或解决问题的方法.
我见过典型的"反射"解决方案,但我不明白为什么这仍然是Android的问题?为什么人们使用反射来使这项工作?我们可以在Android上提交错误来修复此问题吗?
如果这些UUID是标准的,任何应用程序都应该能够连接并与它们进行交互.为什么这是一个问题,为什么我会得到这个例外?
提前致谢.
UPDATE
因此,由于某种原因,Android系统中的对象推送开始工作.我实际上试图通过我的应用程序连接,但它无法正常工作.然后,我去了联系人应用程序,并试图分享一个神奇地工作的联系人.然后,我回到我的应用程序,现在它的工作......哇.这很奇怪,必须有一个解释.
我有一个TextView只能水平重复的位图.我想设置textview的背景并仅在X轴上重复它.环顾四周之后,我发现你只能通过代码而不是XML来实现.我创建了一个BitmapDrawable使用:,
BitmapDrawable bg = new BitmapDrawable(r, BitmapFactory.decodeResource(r, R.drawable.my_drawable));
bg.setTileModeX(Shader.TileMode.REPEAT);
setBackgroundDrawable(bg);
Run Code Online (Sandbox Code Playgroud)
然而,即使采用这种方式,也可以在Y轴上重复绘制.这是在Honeycomb 3.2中.
有人可以对此有所了解,也许可以提供一个有效的例子吗?
我正在为我的应用程序编写仪器测试,并希望创建一个临时文件夹来存储一些文件。但是,我不想在 targetContext 中执行此操作,而是在测试上下文中执行此操作。
换句话说:
// Works, but this creates the folder in the target app.
File dir = getInstrumentation().**getTargetContext()**.getDir("directory", MODE_WORLD_READABLE);
// Does not work, the exists() returns false.
File dir = getInstrumentation().**getContext()**.getDir("directory", MODE_WORLD_READABLE);
Run Code Online (Sandbox Code Playgroud)
我尝试了很多其他的东西,似乎实现Instrumentation context忽略了这些调用?
想法?
假设我有一个被调用的类Person,它通常使用ORMLite持久存储到db表中.
现在,我在Person该类中有一个成员调用House.的House类包含3个属性,并且永远不会存储到数据库中.
我想要的是每当Person持久化时我想House将Person表中的3个字段存储到3个不同的列中.
因此Person表将具有:{ person_name, person_contact, house_address, house_type, house_date }.
最后3个字段将来自Houseobject.
我想我应该DataPersister在House成员变量上使用a ,但这是否意味着它会将整个House对象写入一列?我想把它分成Person表格内的3列.有人可以帮忙吗?
谢谢!
我正在尝试使用DexClassLoader在我的应用程序中下载 JAR/APK。我想模块化我的应用程序,这样我就可以下载用户可能按需使用的 UI 流,而不是将它们全部一起发送到我的主应用程序中。
加载实际的类工作正常,我设法加载一些 UI 组件,我可以将它们添加到我的主机活动中。
我的问题是,显然我无法访问或添加资源(字符串、绘图、布局)到我下载的包中,因为它们不随我的主机 APK 一起提供。是否可以为我的可下载 JAR/APK 动态加载资源?
从这里的 Android 文档中它提到,当您调用时,getWritableDatabase()或者getReadableDatabase()您应该始终在后台线程上执行此操作。
我将 OrmLite 用于我的应用程序,当我调用它时,我getHelper()从 UI/主线程调用它。
我也StrictMode为我的应用程序启用了,我不记得在 logcat 中看到警告。
使用它的首选方法是什么?诸如insert或update在我的Dao对象中的任何 SQL 操作呢?它们应该发生在后台线程中吗?
我有一个单线程执行器服务,用于通过网络获取一些数据.
当用户在搜索框中键入时,我正在排队可能的网络任务.我想要的是取消所有以前的请求,只排队并立即运行最新的请求.
我目前的方法是覆盖execute()和submit()方法并在调用super之前清除队列.
有什么想法吗?