首页 \ 问答 \ 是否可以在Android图书馆计划中获取应用程序的上下文?(Is it possible to get application's context in an Android Library Project?)

是否可以在Android图书馆计划中获取应用程序的上下文?(Is it possible to get application's context in an Android Library Project?)

我想获得在我的图书馆项目的一个类中的运行时引用/托管我的库的应用程序的上下文。 可能吗? 如果是,怎么样?

谢谢

更新我不希望我的用户将参数中的上下文传递给我的库项目,因为我的库项目可能会通过JNI调用,我不知道如何在JNI中获取上下文并将其传递给Java层。


I would like to get the context of application which has reference/hosted my library at run-time inside one class of my library project. Is it possible? If yes, how?

Thanks

Update I don't want my user to pass context in parameter to my library project because it is possible that my library project will be called through JNI and I have no idea how I can get context in JNI and pass it to Java layer.


原文:https://stackoverflow.com/questions/7157501
更新时间:2021-10-21 16:10

最满意答案

如“产生最佳路径”中的优化,而不是“可能的最快算法”。 在为目标路径搜索状态空间时,DFS可能会产生比BFS更长的路径。 请注意,BFS仅适用于未加权的操作; 如果不同的动作具有不同的权重,则需要类似A *的内容。


Optimal as in "produces the optimal path", not "is the fastest algorithm possible". When searching a state space for a path to a goal, DFS may produce a much longer path than BFS. Note that BFS is only optimal when actions are unweighted; if different actions have different weights, you need something like A*.

相关问答

更多
  • 如“产生最佳路径”中的优化,而不是“可能的最快算法”。 在为目标路径搜索状态空间时,DFS可能会产生比BFS更长的路径。 请注意,BFS仅适用于未加权的操作; 如果不同的动作具有不同的权重,则需要类似A *的内容。 Optimal as in "produces the optimal path", not "is the fastest algorithm possible". When searching a state space for a path to a goal, DFS may produ ...
  • BFS将根据分支因子使用更多的内存...但是,BFS是一个完整的算法...意味着如果您使用它来搜索最低深度的东西,BFS将为您提供最佳解决方案。 BFS空间复杂度是O(b^d) ...分支因子提高到深度(可以是大量的内存)。 另一方面,DFS对于空间好多了,可能会发现次优解决方案。 意思是,如果您只是从一个顶点到另一个顶点搜索路径,您可以在找到实际的最短路径之前找到次优解(并在那里停止)。 DFS空间复杂度是O(|V|) ...意味着它可以占用的最多的内存是最长的可能路径。 他们有相同的时间复杂性。 在实现 ...
  • 这在很大程度上取决于搜索树的结构以及解决方案的数量和位置(又称搜索项)。 如果您知道一个解决方案距离树的根部不远,则广泛的首次搜索(BFS)可能会更好。 如果树很深,解决方案很少,深度优先搜索(DFS)可能需要很长时间,但是BFS可能会更快。 如果树非常宽,BFS可能需要太多的内存,所以可能是完全不切实际的。 如果解决方案频繁但位于树上,BFS可能是不切实际的。 如果搜索树非常深,您将需要限制搜索深度进行深度优先搜索(DFS),无论如何(例如迭代深化)。 但这些只是经验法则; 你可能需要进行实验。 That ...
  • 在Clean Code中 ,Robert C. Martin建议Java编码人员尽可能将变量声明为要使用的地方。 变量的范围不应超过必要的范围。 将变量声明为接近它的使用位置有助于为读者提供类型和初始化信息。 不要过多地关注性能,因为JVM非常擅长优化这些东西。 而是专注于可读性。 顺便说一句:如果您使用的是Java 5或更高版本,则可以使用以下Java-5新特性来显着修改代码示例: foreach构造 仿制药 自动装箱 我重构了您的示例以使用上述新功能。 List list = new ...
  • 他们有相似的运行时间 ,但是任何一个问题的任何一个都可能会大大超过另一个问题,仅仅是由于访问单元的顺序。 在空间使用方面,BFS平均使用更多的内存用于树 ,但对于更一般的图,在某些情况下,它可以使用更少的内存。 特别是对于迷宫(如果我们将迷宫定义为只有一种方法可以从起始点到达一个没有回溯的单元,意味着它本质上是一棵树), BFS通常会使用更多的内存 ,因为我们需要保留多个路径内存,同时DFS只需要在任何给定时间跟踪单个路径。 对于更一般的网格,关于哪一个在记忆方面会更好,尤其是在考虑如何跟踪我们到目前为止访 ...
  • 在进行BFS时,您将在仅开发O(B^d)节点时找到循环,其中B是分支因子, d是从源到它的循环+标头的大小。 (如果BFS的来源在循环中,则循环的长度)。 DFS不能保证这一点,并且可能在找到周期之前发现整个图形。 When doing BFS, you will find the cycle while developing only O(B^d) nodes, where B is the branch factor and d is the size of the cycle + header fro ...
  • 当它说多个来源时,它指的是搜索的起始节点。 您会注意到算法的参数是BFS(G, s)和DFS(G) 。 这应该已经暗示BFS是单源而DFS不是,因为DFS不会将任何初始节点作为参数。 正如作者所指出的,这两者之间的主要区别在于BFS的结果总是树,而DFS可以是森林(树木的集合)。 这意味着,如果BFS是从节点s运行的,那么它将只构造从s可到达的节点的树,但如果图中有其他节点,则不会触及它们。 但是,DFS将继续搜索整个图,并构建所有这些连接组件的林。 正如他们所解释的那样,这是大多数用例中每种算法的期望结果 ...
  • DFS,因为它是深度优先搜索,可能会卡在无限分支中,永远不会到达您正在寻找的顶点。 BFS在每次迭代时都经过与根相同距离的所有顶点,无论它们在哪个分支上,所以它最终会找到所需的顶点。 例: root - > v1 - > v2 - > v3 - > ...永远继续 | - >你。 在此示例中,如果DFS从根开始,然后继续到v1。 它永远不会到达你,因为它进入的分支是无限的。 BFS将从root到v1或u再到另一个。 DFS, since its a Depth first search, could get ...
  • 这只有在BFS和DFS使用完全相同的顺序来遍历子项时才可能: 规则1: BFS Traversal : 4 3 5 1 2 8 7 6 | | | | | |-------| | | | DFS Traversal : 4|3 1 7 2 6|5 8 正如这个例子所示,我们可以很容易地知道(3 , 1 , 7 , 2 , 6) 3,1,7,2,6 (3 , 1 , 7 , 2 , 6)属于一个以 ...
  • 您的困惑可能来自于过多地考虑树木,但BFS和DFS可以在任何图形上运行。 考虑例如具有类似ABCA的循环的图。 如果从A开始先进行广度优先,则首先将B和C添加到列表中。 然后,您将弹出B ,除非它们被标记为已访问,否则您将在列表中添加C和A ,这显然是错误的。 如果您先从A开始深入,那么您将访问B并从那里转到C然后转到A ,除非A已被标记为已访问。 因此,总而言之,无论您采用哪种算法,都需要在第一次看到它时立即标记顶点。 但是,如果您只考虑DAG,您会发现事情变得容易一些,因为您根本没有像上面那样的循环。 ...

相关文章

更多

最新问答

更多
  • 您如何使用git diff文件,并将其应用于同一存储库的副本的本地分支?(How do you take a git diff file, and apply it to a local branch that is a copy of the same repository?)
  • 将长浮点值剪切为2个小数点并复制到字符数组(Cut Long Float Value to 2 decimal points and copy to Character Array)
  • OctoberCMS侧边栏不呈现(OctoberCMS Sidebar not rendering)
  • 页面加载后对象是否有资格进行垃圾回收?(Are objects eligible for garbage collection after the page loads?)
  • codeigniter中的语言不能按预期工作(language in codeigniter doesn' t work as expected)
  • 在计算机拍照在哪里进入
  • 使用cin.get()从c ++中的输入流中丢弃不需要的字符(Using cin.get() to discard unwanted characters from the input stream in c++)
  • No for循环将在for循环中运行。(No for loop will run inside for loop. Testing for primes)
  • 单页应用程序:页面重新加载(Single Page Application: page reload)
  • 在循环中选择具有相似模式的列名称(Selecting Column Name With Similar Pattern in a Loop)
  • System.StackOverflow错误(System.StackOverflow error)
  • KnockoutJS未在嵌套模板上应用beforeRemove和afterAdd(KnockoutJS not applying beforeRemove and afterAdd on nested templates)
  • 散列包括方法和/或嵌套属性(Hash include methods and/or nested attributes)
  • android - 如何避免使用Samsung RFS文件系统延迟/冻结?(android - how to avoid lag/freezes with Samsung RFS filesystem?)
  • TensorFlow:基于索引列表创建新张量(TensorFlow: Create a new tensor based on list of indices)
  • 企业安全培训的各项内容
  • 错误:RPC失败;(error: RPC failed; curl transfer closed with outstanding read data remaining)
  • C#类名中允许哪些字符?(What characters are allowed in C# class name?)
  • NumPy:将int64值存储在np.array中并使用dtype float64并将其转换回整数是否安全?(NumPy: Is it safe to store an int64 value in an np.array with dtype float64 and later convert it back to integer?)
  • 注销后如何隐藏导航portlet?(How to hide navigation portlet after logout?)
  • 将多个行和可变行移动到列(moving multiple and variable rows to columns)
  • 提交表单时忽略基础href,而不使用Javascript(ignore base href when submitting form, without using Javascript)
  • 对setOnInfoWindowClickListener的意图(Intent on setOnInfoWindowClickListener)
  • Angular $资源不会改变方法(Angular $resource doesn't change method)
  • 在Angular 5中不是一个函数(is not a function in Angular 5)
  • 如何配置Composite C1以将.m和桌面作为同一站点提供服务(How to configure Composite C1 to serve .m and desktop as the same site)
  • 不适用:悬停在悬停时:在元素之前[复制](Don't apply :hover when hovering on :before element [duplicate])
  • 常见的python rpc和cli接口(Common python rpc and cli interface)
  • Mysql DB单个字段匹配多个其他字段(Mysql DB single field matching to multiple other fields)
  • 产品页面上的Magento Up出售对齐问题(Magento Up sell alignment issue on the products page)