Articles of java的

什么是Java.Net.Uri和Android.Net.Uri之间的区别

我试图从file对象中获取一个Uri ,如下所示: File file = new File(“/sdcard/MyFolder/MyFile.txt”); var androidUri = Android.Net.Uri.FromFile(file).ToString(); var javaUri = file.ToURI().ToString(); 这将返回以下值: androidUri = “file:///sdcard/MyFolder/MyFile.txt” javaUri = “file:/sdcard/MyFolder/MyFile.txt” 所以我的问题是Java.Net.Uri和Android.Net.Uri之间的Java.Net.Uri是这两个值应该是不同的吗? 什么时候应该使用它们? 更新 我find了两个文档页面Java.Net.Uri和Android.Net.Uri ,他们都说: 构建和解析符合RFC 2396的 URI引用。 因此,这肯定是一个错误,他们应该返回相同的字符串?

从Android / Java向Matlab发送数据

我花了一些时间寻找一种方法将数据从Android应用程序发送到Matlab – 没有办法。 我更喜欢通过Restful webservice使用JSON。 我可能有错误的概念,这是如何工作的。 Matlab应该运行/等待来自我的Android设备的POST请求以接收数据,从json将其转换为matlabforms,进行并发送回来 – 而不是再次等待新请求。 像“webread”这样的“RESTful web服务”似乎不会等待传入数据并为它们激活。 如何让Matlab用json监听传入的数据? 或者如何让Matlab从基于Android / Java的程序接收数据? 我是否需要其他框架,api或甚至是带有数据库的服务器才能完成这项工作? 任何人都可以给我一些提示吗?

在Android上的OpenCV中旋转VideoCapture

在OpenCV上使用类VideoCapture时如何旋转相机? (Android上的样本人脸检测)。 我正在旋转canvas: if (getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT) { Matrix matrix = new Matrix(); matrix.preTranslate( (canvas.getWidth() – bmp.getWidth()) / 2, (canvas.getHeight() – bmp.getHeight()) / 2); matrix.postRotate(270f, (canvas.getWidth()) / 2, (canvas.getHeight()) / 2); canvas.drawBitmap(bmp, matrix, null); } 但是来自相机的图像不会旋转:面部检测不起作用。 摄像机从以下接收流: protected Bitmap processFrame(VideoCapture capture) { capture.retrieve(mRgba, Highgui.CV_CAP_ANDROID_COLOR_FRAME_RGBA); capture.retrieve(mGray, Highgui.CV_CAP_ANDROID_GREY_FRAME); 更新我做了以下事情: @Override protected Bitmap processFrame(VideoCapture capture) { if (getResources().getConfiguration().orientation […]

具有Webview的IOS和Android应用程序是仅考虑混合或Web应用程序吗?

令我感到困惑的是,使用Java或Swift创建的仅使用webview的应用程序是否被视为混合或Web应用程序。 我知道Web应用程序几乎完全使用Web,但如果它是通过Java Webview的Webview,它真的被认为是Web应用程序,还是混合应用程序,因为它有可能同时使用本机和Web Appfunction? 我对这个特定的定义有不同的定义。 谷歌说这是关于网络应用程序: 在Android上提供应用程序主要有两种方式:作为客户端应用程序(使用Android SDK开发并安装在APK中的用户设备上)或作为Web应用程序( 使用Web标准开发并通过Web浏览器访问 -在用户设备上没有安装任何东西 )。 https://developer.android.com/guide/webapps/index.html Apple说这是关于网络应用的: Web应用程序的设计外观和行为方式与本机应用程序类似 – 例如,它可以缩放以适应iOS上的整个屏幕。 您可以进一步为iOS上的Safari定制Web应用程序,方法是在用户将其添加到主屏幕时使其看起来像本机应用程序。 您可以通过使用其他平台忽略的iOS设置来完成此操作。 https://developer.apple.com/library/ios/documentation/AppleApplications/Reference/SafariWebContent/ConfiguringWebApplications/ConfiguringWebApplications.html 为什么这对我很重要?为什么我要打扰? 在谈论我正在创建的新应用程序的未来开发时,我需要向人们解释这三者之间的差异和重要性。 我是应用程序世界的新手,并不太了解对此的共识,我想在解释它时听起来很有能力。 我认为使用Webview的Java或Swift制作应用程序只是一个Web应用程序而不是混合应用程序。 但如果添加更多内容,它可能会成为混合应用程序。 但是我从一开始就可以看到它是一个混合应用程序。

如何在android中使用UDP套接字?

我试图在android中使用UDP套接字,这里我从Android模拟器发送我的字符串并通过我的Java程序在PC上接收,但我的Java程序没有收到任何东西,尽管我使用Java程序作为客户端和服务器(我制作了两个不同的Java程序。 这是我的android主要活动: public class First extends Activity { Button b; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); b = (Button) findViewById(R.id.button1); b.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { // TODO Auto-generated method stub Thread t = new Thread(new Second()); t.start(); } }); 这是我在android中的第二个类: public class Second implements Runnable { Second() { run(); } […]

Android:从应用程序中的多个活动访问单个数据库?

我有一个待办事项列表types的应用程序,它将所有的笔记数据存储在sqlite3数据库中。 应用程序中的每个活动都需要访问数据库以实时编辑数据的不同部分。 目前,我让每个活动都打开自己的DBManager对象(我创建的帮助程序类来管理数据库)。 这会导致问题,我想要一个稍微更全面的访问解决方案,所以我不必继续打开/关闭/创建数据库。 我正在考虑几个选项,并希望听到每个选项的优缺点以及其他建议。 单身人士风格。 有一个包装类,它返回对唯一数据库管理器的引用,因此任何需要它的活动都可以使用它。 静态管理器。 让经理类完全是静态成员,让它在加载时打开数据库。 任何需要它的人都可以轻松访问(这是每个人)。 合并在1和2之间。我可以创建一个数据库管理器类来初始化数据库的成员单例实例,并且所有数据操作方法都是静态的。 然后我甚至不需要引用单例来访问数据库。 我最喜欢这个解决方案,请指出缺点。 建议?

使用剪切来修复ViewGroup的圆角

我有一个RelativeLayout需要圆角左上角和右上角。 我可以使用XML定义的可绘制背景来实现这一点,其中包含角topLeftRadius和topRightRadius。 但是……这个RelativeLayout还需要一个背景,它是一个带有平铺位图和形状组合的图层列表,并且平铺位图在可绘制XML中没有一个角参数。 所以我的想法是使用以下代码创建RelativeLayout : @Override protected void onSizeChanged(int w, int h, int oldw, int oldh) { super.onSizeChanged(w, h, oldw, oldh); path.reset(); rect.set(0, 0, w, h); path.addRoundRect(rect, radius, radius, Path.Direction.CW); path.close(); } @Override protected void dispatchDraw(Canvas canvas) { int save = canvas.save(); canvas.clipPath(path); super.dispatchDraw(canvas); canvas.restoreToCount(save); } 可悲的是没有剪辑发生,我期待它剪辑我的RelativeLayout的所有四个角落,但没有发生任何事情。 “onSizeChanged”和“dispatchDraw”方法都被调用,我测试过。 我也试图关闭硬件加速,但它没有做任何事情。 我的RelativeLayout是更大布局的一部分,并且该布局在FrameLayout的子类中膨胀,然后该子类在RecyclerView使用一行,如果它改变了什么。

Intellij错误:原因:org.gradle.internal.component.external.model.DefaultModuleComponentSelector

我添加了maven url到我的gradle: repositories { mavenCentral() maven{ url “https://oss.sonatype.org/content/repositories/snapshots/” } } 和图书馆春季启动应用程序,我得到: 错误:原因:org.gradle.internal.component.external.model.DefaultModuleComponentSelector 和图书馆: 编译’com.github.jonaslins:fiware-orion-library:0.0.1-SNAPSHOT’ 我使用Intellij 2016 热修复吗? 我添加了相同的lib到Android工作室,它的工作原理

如何解决setMyLocationEnabled权限要求?

打开MapActivity时,我想让我的地图专注于我当前的位置。 我有一个特定的行问题: mMap.setMyLocationEnabled(true); 调用需要用户可能拒绝的权限:代码应明确检查权限是否可用(’checkPermission’)或显式处理潜在的’SecurityException’。 我该如何解决这个问题? 当我搜索这个问题时,我已经阅读了一些内容,但我找不到有用的东西。 这是完整的代码: public class MapsActivity extends FragmentActivity implements OnMapReadyCallback { private static final String FIREBASE_URL=”https://haerev.firebaseio.com/”; private Firebase firebaseRef; private GoogleMap mMap; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_maps2); Firebase.setAndroidContext(this); firebaseRef = new Firebase(FIREBASE_URL); SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager() .findFragmentById(R.id.map); mapFragment.getMapAsync(this); setUpMapIfNeeded(); } private void setUpMapIfNeeded() { // Do a […]

如何在使用Intent集调用Activity后使getIntent()返回null

这个问题与我原来的问题类似,但我认为有更好的方法来解决问题。 当setIntent后跟一个旋转时,getIntent返回错误的意图 基本上,在扩展FragmentActivity主Activity ,有两个实例,在Fragment中我将Intent传递给此Activity。 这是遇到问题的代码: public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(…); if (getIntent() != null && getIntent().getData() != null) { String data = getIntent().getDataString(); //setIntent(null); setIntent试图解决我的问题,但它无法正常工作。 当我点击一个回到我的Activity作为Intent的链接,然后我转到下一个片段,然后我旋转手机,当我调用getIntent时,两个Fragments之前传递的Intent再次出现时,会发生什么。 所以,当我从Intent中获取数据时,如何设置它以便下一次调用getIntent将返回null? 或者,将Intent中的数据替换为null是否有意义? 我试图避免更新SharedPreferences中的信息来处理这个问题。