我正在尝试将IntelliJ项目转换为Android Studio的Gradle系统,但我遇到了Apache HttpClient的错误?我错过了什么,我得到的错误如下:
Error:(10, 30) error: package org.apache.http.client does not exist
Error:(11, 30) error: package org.apache.http.client does not exist
Error:(12, 37) error: package org.apache.http.client.entity does not exist
Error:(13, 38) error: package org.apache.http.client.methods does not exist
Error:(14, 38) error: package org.apache.http.client.methods does not exist
Error:(15, 38) error: package org.apache.http.client.methods does not exist
Error:(16, 35) error: package org.apache.http.impl.client does not exist
Error:(134, 33) error: cannot find symbol class HttpUriRequest
Error:(164, 39) error: cannot find symbol class HttpUriRequest
Error:(106, 17) error: cannot find …Run Code Online (Sandbox Code Playgroud) android intellij-idea gradle android-studio android-gradle-plugin
我有一个ImageView叠加在一个内部,RelativeLayout并希望防止任何点击通过ImageView它后面的按钮等(因此实际上禁用整个RelativeLayout).
这是一种更简单的方法,然后迭代RelativeLayout视图并将它们设置为禁用,因为我目前正在使用此代码:
RelativeLayout rlTest = (RelativeLayout ) findViewById(R.id.rlTest);
for (int i = 0; i < rlTest.getChildCount(); i++) {
View view = rlTest.getChildAt(i);
view.setEnabled(true);
}
Run Code Online (Sandbox Code Playgroud) 我正在尝试将 Xamarin.Forms 应用程序移植到 .NET MAUI,但遇到了 Device.StartTimer 的弃用,虽然这显然目前在 MAUI 中仍然有效,我有兴趣了解替代方案是什么?
目前我有一个包装类如下:
public void Start()
{
if (IsRunning)
{
return;
}
var wrapper = new TaskWrapper(Task, IsRecurring, true);
Tasks.Add(wrapper);
Device.StartTimer(Interval, wrapper.RunTask);
}
Run Code Online (Sandbox Code Playgroud)
我尝试用System.Timers.Timer替换它,但这导致了由于位于错误的线程上而无法修改 UI 元素的问题?计时器包装器本身在多个地方使用,因此在这种情况下我也不能使用绑定。
实际上是否有 Device.StartTimer 的直接替代品?非常感谢任何帮助。
我试图找出android清单文件的android:versionName和android:versionCode属性的最大长度?
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.xxxx.xxxx"
android:versionCode="185" <--- THIS ATTRIBUTE
android:versionName="1.0.185"> <--- AND THIS ATTRIBUTE
Run Code Online (Sandbox Code Playgroud)
是否存在最大值,或者如果没有最大值,是否存在某些规则,它是否会允许任何内容?
我已经在谷歌搜索了一个解决方案,但这似乎是一个新的?我正在尝试在网站上实施google maps API但是我一直收到以下错误:
未捕获的TypeError:无法调用未定义的方法'apply'
我的JS如下:
var map;
function initialize(location) {
var mapDiv = document.getElementById('map-canvas');
var latLng;
if (location == 0) {
latLng = new google.maps.LatLng(52.066356, 1.102388);
}
else if (location == 1) {
latLng = new google.maps.LatLng(52.672492, 1.232196);
}
else if (location == 2) {
latLng = new google.maps.LatLng(52.207607, 0.123017);
}
map = new google.maps.Map(mapDiv, {
center: latLng,
zoom: 14,
mapTypeId: google.maps.MapTypeId.ROADMAP
});
google.maps.event.addDomListener(map, 'tilesloaded', addMarker(location));
}
function addMarker(location) {
var latLng;
if (location == 0) {
latLng = new …Run Code Online (Sandbox Code Playgroud) 好的,我已经搜索了SO和谷歌,但还没有真正找到明确的答案,所以把它扔到那里为SO社区.
基本上我有一个针对特定兴趣点的经度和纬度表,sql查询将知道你当前所在的位置(这将是表格中的一个,作为参数传入),因此它需要计算并将最接近纬度和经度的一行返回到传入的一行.
我要求这一切都在MSSQL(2012 /存储过程)而不是在调用应用程序(这是.NET)中完成,因为我听说SQL处理此类查询通常比.NET更快?
编辑:
我找到了STDistance函数,它给出了位置之间的里程数,例如:
DECLARE @NWI geography, @EDI geography
SET @NWI = geography::Point(52.675833,1.282778,4326)
SET @EDI = geography::Point(55.95,-3.3725,4326)
SELECT @NWI.STDistance(@EDI) / 1000
Run Code Online (Sandbox Code Playgroud)
但是我不想迭代遍历表中的所有纬度/经度,因为这对于性能来说肯定会很糟糕吗?
我也试过转换下面的一个注释链接中指出的一个例子(这是MYSQL而不是MSSQL)但是我收到一个错误,代码如下:
DECLARE @orig_lat decimal(6,2), @orig_long decimal(6,2), @bounding_distance int
set @orig_lat=52.056736;
set @orig_long=1.14822;
set @bounding_distance=1;
SELECT *,((ACOS(SIN(@orig_lat * PI() / 180) * SIN('lat' * PI() / 180) + COS(@orig_lat * PI() / 180) * COS('lat' * PI() / 180) * COS((@orig_long - 'lon') * PI() / 180)) * 180 / PI()) * 60 * 1.1515) AS 'distance' …Run Code Online (Sandbox Code Playgroud) 我有一个调试版本和一个Android应用程序的发布版本但是我需要每个不同的依赖项,这可能在Android Studio中吗?
我有一节:
buildTypes {
debug {
minifyEnabled false
}
release {
minifyEnabled true
}
}
Run Code Online (Sandbox Code Playgroud)
和依赖项的一节:
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'joda-time:joda-time:2.7'
compile 'org.joda:joda-convert:1.4'
}
Run Code Online (Sandbox Code Playgroud)
我想删除joda-convert依赖,如果我使用调试版本,因为它导致"包装APK中的重复文件"错误.
任何帮助非常感谢?
为什么OrderedBroadcast在应用程序的调试版本中工作但在发布版本中不工作?我发送以下OrderedBroadcast:
context.sendOrderedBroadcast(sendInt, "xxx.xxxx.permission.API", new BroadcastReceiver() {
@SuppressLint("NewApi")
@Override
public void onReceive(Context receivercontext, Intent intent) {
Bundle results = getResultExtras(true);
if (results.getInt("Result", Activity.RESULT_CANCELED) == Activity.RESULT_OK) {
Log.d("DEBUG", "OK");
} else {
Log.e("DEBUG", "Failed");
}
}
}, null, Activity.RESULT_OK, null, null);
Run Code Online (Sandbox Code Playgroud)
两个应用程序在AndroidManifest.xml文件中都具有相应的权限,接收器声明如下:
<receiver android:name="xxx.xxxx.xxxx.Receiver1"
android:enabled="true"
android:exported="true"
android:permission="xxx.xxxx.permission.API">
<intent-filter>
<action android:name="xxx.xxxx.permission.API.1" />
</intent-filter>
</receiver>
Run Code Online (Sandbox Code Playgroud)
正如我所提到的,如果发送器和接收器应用程序都在调试版本中运行,那么一切都运行正常但是如果我在发布模式下运行接收器应用程序(没有proguard或任何东西),发送者应用程序只是获得RESULT_CANCELLED结果?
这已经困扰了我好几天,所以任何想法都会非常感激.
android broadcastreceiver android-intent android-broadcast android-studio
我的android项目中有多个模块,其中一些依赖于其他模块但是我有几个模块相互依赖的情况,从而创建循环依赖?
你会如何在android或java项目中避免这种情况?在我的情况下,我使用Intellij Idea 13.1.2,如果这有什么不同?
提前谢谢了.
好吧,这个问题已经困扰我好几个小时了,我有以下相对简单的代码,可以在 osmdroid 地图上放置一个标记
final ArrayList<OverlayItem> items = new ArrayList<OverlayItem>();
OverlayItem marker = new OverlayItem("markerTitle", "markerDescription", new GeoPoint(52.033954,1.210179));
marker.setMarkerHotspot(OverlayItem.HotspotPlace.TOP_CENTER);
items.add(marker);
Drawable newMarker = this.getResources().getDrawable(R.drawable.maincar);
DefaultResourceProxyImpl resProxyImp = new DefaultResourceProxyImpl(getApplicationContext());
ItemizedIconOverlay markersOverlay = new ItemizedIconOverlay<OverlayItem>(items, newMarker, null, resProxyImp);
mapView.getOverlays().add(markersOverlay);
Run Code Online (Sandbox Code Playgroud)
然而,标记始终面向屏幕顶部(0 度旋转)。我怎样才能轻松地将每个标记旋转到指定的角度(360 度是一个完整的圆)?